Class: list_mixin
Class Hierarchy:
cObjectMixinlist_mixinClass Definition
Properties
integerEnumeration_Counter
IntegerExport_Item_State
integerInvoking_Object_ID
integerOriginal_Selection
integerPrivate.Move_Value_Out_State
integerRadio_State
integerTarget_Field
integerTarget_File
Functions and Procedures
define_list()
Description
This procedure defines the accelerator keys and properties required
to support the standard list-selection options.
Assumptions/Preconditions
This procedure should only be invoked from within the Construct_Object
procedure of a class.
Exceptions
None.
Notes
Enumeration_Counter is used to scan selected items.
Export_Item_State determines if the value of the selected item in a
single-select or auto-select list should be placed into the current
item of the object which 'invoked' the list (i.e. the object which
had the focus when this object was activated - see Invoking_Object_ID).
Invoking_Object_ID is the object id of the object which had the focus
when this object was activated.
Original_Selection is the item# (if batch) or record number (if virtual)
of the item which was selected when the list was activated.
Radio_State determines if the items in this list are radio-buttons.
Target_Field identifies the field (in the Target_File), if any, which
should receive the value of the currently selected item during a save
operation (i.e. when the Entry_Update message is received during a
save operation). This only applies to single-select or auto-select
lists, not multi-select or no-select lists.
Target_File identifies the file, if any, which has a field that should
receive the value of the currently selected item during a save operation
(see Target_Field).
Init_Selected_Item()
**jjt**
public message to init the selected item counter. Enumeration_Counter
is too cryptic
IntegerMove_Value_Out_State()
See above
integerOk()
Description
This procedure accepts the selected item(s) in the list, and surrenders
the focus.
The incremental-search index is reset.
The value of the current item may be exported to the current item of the
invoking object, and this object deactivated, if this object is
move_value_out_state true, or the focus may be given to the next object
in the rotation order.
Assumptions/Preconditions
This object (or one or its ancestor classes) must understand the
Move_Value_Out message as a method of exporting a value, the
Request_Cancel message as a method of deactivating this object, and
the Next message as a method of rotating to the next focusable object.
Exceptions
None.
Notes
Sent by kENTER.
Set(Integer Fg)
Augment Popup_state to set other (side effect) properties
(JJT) This makes more sense than changing deactivating and
popup - I still don't like it!!!
Better to use Modal_state
SET(Integer Fg)
Setting popup_state in lists (sel-list, pick-lists) etc must set other
prorperties as well. We assume that a list popup is modal, scoped and
will export it selection. Note that this does not get called when a
popup client is used to contain a list. Usually in that case the
block_mouse_state and scope_state should be set at the client while
move_value_out_state still must be set in this object.
Set(Integer st)
**JJT** Modified to also set auto_fill_State
I don't like this, but it is the best I can come up with. Popup
lists that are designed to selection items need to have auto-fill-
state set to true. This can not be tied to popup. It is most closely
tied to this property. If for some reason you don't want these set
together you will need to set auto_fill_state AFTER you set
move_value_out_state.
integerVerify_Data_Loss()
Description
This is a stub because for the proper operation of request_cancel.
Assumptions/Preconditions
None.
Exceptions
None.
Notes
None.
integerVerify_Data_Loss_Msg()
Description
This function returns the message id to be used to verify an operation
which may cause the user to lose changes to the data in items. It is
overridden here to return 0 because (popup) lists do not support the
verification protocol.
Assumptions/Preconditions
This object must understand Component_State.
Exceptions
If this object's Verify_Data_Loss_Msg is 0, the value of this object's
parent's Verify_Data_Loss_Msg is returned, if any.
Notes
None.