Documentation from handextend.h |
Introduction | [top] |
ROV - Easy applications from C
Copyright - © Jason Tribbeck / 7th ARM 1994-2001
Contributing authors - Jason Tribbeck
File - handextend.h
Type - subsystem
Description
The handextend subsystem is designed to add handlers for unknown WIMP messages. Each handler can be claimed to be called for a particular WIMP message type and action.
handproc (function pointer) | [top] |
Definition of a handextend handler.
Parameters:
- int type - the WIMP message type (17, 18 or 19)
- message_block *block - the WIMP message block.Returns:
- non-zero indicating message has been dealt with.
typedef int (*handproc)(int type, message_block *block);
handextend_init | [top] |
Initialise the handextend subsystem.
Note - Do not claim the HANDLER_MESSAGE, the HANDLER_MESSAGEACK nor the HANDLER_ACKNLOWEDGE in main.h if you want to use the handextend subsystem.
void handextend_init(void);See also: main.h
handextend_claim | [top] |
Claim a handextend handler.
Parameters:
- int action - the WIMP action to claim on.
- int type_flags - defines which WIMP message types are applicable.
- handproc handler - the handler function.Note - You can have many of these, as they are kept in a linked list.
void handextend_claim(int action, int type_flags, handproc handler);See also: WIMP message type flags
handextend_release | [top] |
Release a handextend handler.
Parameters:
- int action - the WIMP action to claim on.
- int type_flags - defines which WIMP message types are applicable.
- handproc handler - the handler function.Note - All of these must match exactly for it to be released.
void handextend_release(int action, int type_flags, handproc handler);See also: WIMP message type flags
WIMP message type flags | [top] |
These are bitfields to generate the type_flags in handextend_claim() and handextend_release()
#define HANDEXTEND_MESSAGE (1<<0) #define HANDEXTEND_MESSAGEACK (1<<1) #define HANDEXTEND_ACKNOWLEDGE (1<<2)See also: handextend_claim(), handextend_release()
Generated Thu Feb 7 23:22:51 2002