Details
Description
A customer has asked us to build a "preferences" dialog to allow users change common settings. As part of this enhancement request we should also review our system properties and expose as many as we can in the dialog.
Rough List of grouping:
Viewer Preferences:
- visibility of various button bars
- default page view (when not specified by file)
- default page fit (when not specified)
- default zoom (when not specified)
Font
- enable/disable font hinting
- cache control for font substitution list
Annotation
- default color for annotation types
Rendering
- rendering quality properties
- image reference properties.
Rough List of grouping:
Viewer Preferences:
- visibility of various button bars
- default page view (when not specified by file)
- default page fit (when not specified)
- default zoom (when not specified)
Font
- enable/disable font hinting
- cache control for font substitution list
Annotation
- default color for annotation types
Rendering
- rendering quality properties
- image reference properties.
The first step in creating the new preferences dialog is to update our existing file based properties system. We have to property files associated with the viewer RI, one for the font cache and the other for the general settings that that need to b persisted across viewer sessions.
Th first checkin has a port of the properties based settings to the Preferences API using using universal backing store. This approach is significantly simpler and takes care of th property locking issues we had previously.