This document is a WORK IN PROGRESS.
This document shall serve as the standard reference when creating the Preference Manager.
This project will allow modules to expose settings of preference to a centralized preference editor control manager. Preference editor controls shall be written for any module in which there are configurable preferences that we allow a user to define.
The preference manager shall be accessible throughout the application, and not tied to any specific module.
The solution this project provides is a centralized means of user-choice configuration of the application and its modules in cases that such options would create an unreasonable menu or dialog.
What the preference manager is NOT for:
This preferences should not include commonly used items, such as the Snap-To feature and its strength settings, Playback speed or Drag Box Filter.
It also should not include the abilities to Add, Modify, or Delete Elements or Output Controllers.
Generic data types should be the primary data handled by the preference manager, it should not store types of Curves, ColorGradients, Effects, or Mappings.
It should store types of, but not be limited to, string, color & numeral