Classify white papers: Object looks

Classify white papers: Object looks

The traditional charactermode interface offered basically two presentation modes for any object: auto activated or not. The auto activated objects would appear on screen immediately, and all objects would appear in the option pull down. The one exception was the main object (find) that would not show in the option pull down, effectively creating a third, implicit, presentation format.

With Windows we have more options. We can have "auto activated zooms", or we can have zooms that will display in tabs, or as a button. This means we can no longer use a "binary" presentation mode, such as pAuto_Activate_State. Because of this, we have introduced a new property called pPresentation_Mode. For compatibility, pAuto_Activate will set pPresentation_Mode to appropiate values.

Valid choices for pPresentation_Mode

1 @_Automatic_Panel The object should be immediately visable. This mode equal to the old Auto_Activate_State
2 @_Manual_Panel The object should not immediately visable, but the client must offer some mechanism to access the object. This is the old "not auto activated". The container determines how the child object is activated (button, option pull down).
3 @_Main_Panel The object is the first object to be activated in a view. This mode is typically used internally for the top subsystem.
4 @_Semi_Automatic_Panel The object should not be constantly visable, but accessing the panel should be as easy as possible. Again, the client determines how this is handled (e.g. by placing the object in a tab-dialog).
5 @_Non_Modal_Panel This mode is comparable to "manual panel", but now rather than being modal, the child object will be non-modal. This mode is specifically intended for nested subsystems.

In order to visually identify which panels belong to the same view, the panel title will display the name of the view, the name of the main subsystem in the panel (except for the main panel) and the current record.

The programmer can overrule the panel title (the above except for the record description) by setting pPanel_Title.

The description for the current record is obtained from the data dictionary by calling pRecord_Descriptio. By default, this function returns the contents of the key fields (seperated by a spaces), but you can augment or overrule this function as necessary.

The following is a table of object types and what happens to the pPresentation_mode based on the auto-activate state:

Object typeAuto ActivatePresentation mode
ZoomTrueAutomatic_Panel ZoomFalseSemi_Automatic_Panel Top Subsystemn.a.Main_Panel SubsystemTrueDisappears from focus tree, child objects become part of the parent SubsystemFalseManual_Panel
The following table list the presentation modes and how they determine the presentation of the various object types:
Object typePresentationVisual presentation
ZoomAutomatic panelEmbedded zoom
no panel
3d effect possible
ZoomSemi automatic panelTab page
SubsystemMain panelIndependent, non modal panel. Displayed immediately when view is activated
SubsystemManual panelButton in the parent subsystem
Full panel, modal for others
SubsystemNon modal panelButton in the parent subsystem
Full panel, non modal