GenClass: 12 Navigation Methods

Up: GEOS SDK TechDocs | Up | Prev: 11 Focus Modifications | Next: 13 Window Positions and Sizes
MSG_GEN_NAVIGATE_TO_NEXT_FIELD, MSG_GEN_NAVIGATE_TO_PREVIOUS_FIELD, MSG_GEN_NAVIGATION_QUERY

These messages move the navigation cursor between fields at the same level. Typically, these messages alter the focus and target exclusives to implement this behavior. These messages are rarely used within applications.

MSG_GEN_NAVIGATE_TO_NEXT_FIELD
void	MSG_GEN_NAVIGATE_TO_NEXT_FIELD();

This message moves the navigation cursor from its current object to the next valid object. This message is useful if you are trapping keyboard characters using MSG_META_KBD_CHAR and wish to use special characters to navigate the cursor to various fields within a View.

Source: Normally sent by the specific UI, although your application could also send this.

Destination: Any GS_USABLE GenClass object.

Parameters: None.

Return: Nothing.

Interception: Generally not intercepted. To alter navigation functionality, intercept MSG_GEN_NAVIGATION_QUERY instead.

MSG_GEN_NAVIGATE_TO_PREVIOUS_FIELD
void	MSG_GEN_NAVIGATE_TO_PREVIOUS_FIELD();

This message moves the navigation cursor from its current object to the previous valid object. This message is useful if you are trapping keyboard characters using MSG_META_KBD_CHAR and wish to use special characters to navigate the cursor to various fields within a View.

Source: Normally sent by the specific UI, although your application could also send this.

Destination: Any GS_USABLE GenClass object.

Parameters: None.

Return: Nothing.

Interception: Generally not intercepted. To alter navigation functionality, intercept MSG_GEN_NAVIGATION_QUERY instead.

MSG_GEN_NAVIGATION_QUERY
Boolean	MSG_GEN_NAVIGATION_QUERY(
        NavigationQueryParams 		*retValue,
        optr 				queryOrigin,
        NavigationFlags			navFlags);

This message can be used by applications to initiate navigation-oriented queries, as the MSG_GEN_NAVIGATE_TO_ [ NEXT | PREVIOUS ] _FIELD messages do.

This structure's return values determine how it fits into the navigation network. If this message returns true , then the object which should receive the focus was found, and the NQP_nextObject field will hold the pointer of this object.

If the message returns false , then the focusable object has not yet been found. The NQP_nextObject field contains the field of the next object to try and the NQP_navFlags contains the updated navigation flags which should be passed in the next query.

Source: Unrestricted.

Destination: Any generic object.

Parameters: navFlags Flags giving state of navigation.

queryOrigin
Object which originated this query.
retValue
Structure to hold return values.

Return: true if the queried object should receive the focus; false otherwise.

Structures:

typedef struct {
	word		NQP_navFlags;
 	byte 		NQP_backtrackFlag;
 	byte 		NQP_unused;
	optr		NQP_nextObject;
} NavigationQueryParams;

Up: GEOS SDK TechDocs | Up | Prev: 11 Focus Modifications | Next: 13 Window Positions and Sizes