GEOS SDK TechDocs
|
|
2.1 Applying the Action
|
3 GenItemGroups
In most cases, a selection will be either on or off. In some cases, however, a selection or a list's state will be indeterminate--considered neither completely on or off. For example, a styles list may show the characteristics of the current highlighted text (bold, italic, underlined, etc.). Selecting a whole paragraph of text in which only one word is bold will leave the "bold" entry in the styles list in an indeterminate state--some of the selected text is bold, some is not.
The lists keep track of these indeterminate states themselves. In some cases, an entire list may be indeterminate; in other cases, individual items may be indeterminate. It is up to the specific UI to represent an indeterminate state. (In OSF/Motif settings that are indeterminate are shown unselected.)
If a list object is operating in delayed mode, changes within the list will not be effected until either the user or the application "applies" them. The list objects keep track of changes in state by storing a modified state of either the list or individual items. Whenever an apply action is made on a list group, the group will check whether its list (or its items) have been modified. If nothing has been marked modified, the list will not apply those changes (unless you wish to override this default behavior).
This modified state is independent of the list's mode. In immediate mode, a change in state to a list object will automatically mark that list object modified and simultaneously call
MSG_GEN_APPLY
on the list object. The list object will recognize that it is modified and will send out the group's apply action. In delayed mode, any changes made to the object will also mark the group modified; at some later point,
MSG_GEN_APPLY
will be sent to the list; the object will recognize that the group has been modified and will then send out its apply action.
GEOS SDK TechDocs
|
|
2.1 Applying the Action
|
3 GenItemGroups