GEOS SDK TechDocs
|
|
4.1 Adjusting the Value Indirectly
|
4.3 Retrieving Text
ATTR_GEN_VALUE_STATUS_MSG, MSG_GEN_VALUE_SEND_STATUS_MSG
If your GenValue is operating in delayed mode, there usually occur times when your GenValue's state may not reflect the most recent changes. In most cases this is fine, but in some cases you may wish other UI objects to be notified of a change in your GenValue's state without sending out an apply message. This can be done with a status message.
A status message allows your GenValue to send out a message whenever the user interacts with the GenValue, regardless of whether that change will be immediately applied. This is most useful for cases in which two UI objects are representing information that depends on each other. The status message allows one UI object to inform its friend that its state has changed, and that the friend should change its state to reflect the new information.
To give a GenValue a status message, include ATTR_GEN_VALUE_STATUS_MSG in the object's declaration. Use the prototype GEN_VALUE_STATUS_MSG to define your status message. This prototype ensures that the status message passes the correct parameters (the current value and state flags of the GenValue).
Any user changes that do not result in the sending of the object's apply message will result in the sending of the object's status message. For an object in immediate mode, this ATTR will have no effect. You may also manually send an object's status message by sending the GenValue
MSG_GEN_VALUE_SEND_STATUS_MSG
.
void GEN_VALUE_STATUS_MSG(
WWFixedAsDWord value,
word stateFlags);
This prototype should be used to define the status message of the GenValue.
Source: The GenValue, when its status message is sent.
Destination: The GenValue's destination object (
GVLI_destination
).
Parameters:
value
The current user value of the GenValue.
stateFlags
GVLI_stateFlags
.Return: Nothing.
Interception: Must be handled by the output object if the status message is to have any effect.
void MSG_GEN_VALUE_SEND_STATUS_MSG(
Boolean modifiedState);
This message sends the status message stored in the object's ATTR_GEN_VALUE_STATUS_MSG instance field. You should pass this message the modified State you wish to send. This modified state may or not reflect the GVSF_MODIFIED flag in the GenValue's GVLI_
stateFlags
.
Source: Unrestricted.
Destination: Any GenValue object.
Parameters: modifiedState TRUE if this message should pass the modified bit (GVSF_MODIFIED) set, FALSE if it should pass GVSF_MODIFIED cleared.
Return: Nothing.
Interception: Generally not intercepted.
GEOS SDK TechDocs
|
|
4.1 Adjusting the Value Indirectly
|
4.3 Retrieving Text