cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

User Interface Specification:
Advanced Options System

Author: Chris LeDantec

Document History

[August 20, 2002] Version 0.1 -- Inception

[August 29, 2002] Version 0.2 -- Change Base/Advanced Switching behavior and Ok Cancel button presence and property commit behavior.

[September 13, 2002] Version 0.3 -- Minor edits

[September 16, 2002] Version 0.3 -- Minor edits

Table of Contents

Introduction

Advanced Options are the remaining IDE options that are do not qualify as Base Options. The Advanced Options set are those options that are obscure or otherwise infrequently used and do not concern what most users will need or want to change in order to successfully use functionality in the IDE.

Overview of Functionality

When the user clicks Advanced the Options Dialog will change. The Options Category Tree will show all option categories and the customizer will change to a property sheet. The Advanced Options will follow the same category structure as Base Options but will provide more categories or sub-categories not present in the Base Dialog. Options present in the Base Options Dialog will not be present in the Advanced Option Dialog. The Advanced button will change to a Base button (that when clicked will revert to the Base Options Dialog).

Buttons

Dialog Wide Buttons
OK Commits changes and closes dialog.
Cancel Closes dialog without committing any changes.
Apply Commits changes and leaves dialog open (not currently part of the design but functionality should be available).
Advanced Opens Advanced Options dialog. See Advanced Options Spec for more details.
Base Opens Base Options dialog (when Advanced dialog is present).
Property Sheet specific Buttons
Use Defaults Restores panel values to factory defaults

Advanced Options Display

  • Advanced Options will show only Advanced Options.
  • The options will be categorized in a consistent manner with the Base Options categories to aid the user in finding options.
  • In places where Base Options apply to several similar objects the Advanced Options Dialog may offer customization item by item (e.g. Editor settings for each individual editor). *See open issues [1]

References

See the Base Options Spec

See the Options User View

See the Options Guideline for developers.

Detailed Spec.

Advanced Options Interaction

Basic interaction in the Advanced Options Dialog is consistent with the current operation of the Options Dialog and other property sheet based editing in the IDE. The following represent breaks from the norm or differences tailored to this use.

  • Values of changed options will not be propagated to the system until clicking Ok. Exceptions to this are noted below. *See open issues [2]
  • Clicking Ok confirms any changes, applies them to the system and closes the Options Dialog.
  • Clicking Cancel will close and revert all changes made while in the Base or Advanced Options Dialog.
  • Clicking Help opens the help browser to help matching the current panel.
  • Clicking Base opens the Base Options Dialog with the tree expanded to the options related to what the user was doing in the Options Dialog.
  • Opening the Options Dialog will display which ever mode, Base or Advanced, that was last used.
Entry Points

Tools | Options -> Advanced Button

Layout and Resize Behavior

The Options Dialog is initially sized at 600 x 400. The left Options list should be a fixed size for the language content and font size present. The rest of the dialog can be resized. If the user resizes the dialog it should always reappear at that new size.

Tab Order

Only when opened from Tools | Options

Initial focus: First element in 'Options' list

When the Options Dialog is accessed from a panel specific entry point then focus is initially on the first element in the selected panel. In all other cases initial focus is on a matching element in the 'Options' list.

Tab order:

  1. First element in 'Options' list
  2. First element in property sheet
  3. Base
  4. Cancel
  5. Help

Mnemonics
  • Options List (O)
  • Base (B)
  • Cancel
  • Help (H)

Error Conditions

Error detection is left to the property sheet mechanism for validating data.

Tooltips

Tooltips will remain unchanged from current property sheet implementation.

Open Issues

  1. Should Advanced Options dissect and display aggregates of Base Options? If yes and if the user changes one of these options in a single place in the Advanced Options Dialog the corresponding option will indicate the loss of synchronization in the Base Options Dialog. Example: If the user changes only one editor to not show Line Numbers, then the Show Line Number Checkbox will be in the third boolean state as discussed on nbui here.
  2. Creating new service types requires that the new service type actually be created before clicking Ok. This is acceptable since there is no other way to edit the new service type. If the user clicks Cancel the new service type is removed from the system preserving the net behavior of Ok and Cancel.

    Module manipulation currently acts on the system in real time. This was modified for the startup wizard and should be fixable for the Options Dialog.

 

 

Companion
Projects:
MySQL Database Server   GlassFish Community: an Open Source Application Server   Open Solaris  Open JDK: an Open SourceJDK   Mobile & Embedded Community     Sponsored by 
Sponsored by Sun Microsystems