MiniGUI API Reference (MiniGUI-Threads)  v5.0.6
A mature and proven cross-platform GUI system for embedded and smart IoT devices
Macros
Extra input messages

In addition to the standard keyboard and mouse messages, MiniGUI generates extra input messages for input events from other input devices, including multi-touch panel, tablet pad, joystick, and so on. We call these messages as 'extra input messages'. The messages can be classified the following types: More...

Macros

#define MSG_EXIN_AXIS   0x0070
 Indicates an axis input event. More...
 
#define MSG_EXIN_BUTTONDOWN   0x0071
 Indicates the user has pressed a button on joystick or other input device. More...
 
#define MSG_EXIN_BUTTONUP   0x0072
 Indicates the user has released a button on joystick or other input device. More...
 
#define MSG_EXIN_TOUCH_DOWN   0x0073
 Indicates a touch down event. More...
 
#define MSG_EXIN_TOUCH_UP   0x0074
 Indicates a touch up event. More...
 
#define MSG_EXIN_TOUCH_MOTION   0x0075
 Indicates a touch move event. More...
 
#define MSG_EXIN_TOUCH_CANCEL   0x0076
 Indicates a cancelled touch event. More...
 
#define MSG_EXIN_TOUCH_FRAME   0x0077
 Indicates the end of a set of touchpoints at one device sample time. More...
 
#define MSG_EXIN_SWITCH_TOGGLE   0x007A
 Indicates the toggle event of a switch. More...
 
#define MSG_EXIN_GESTURE_SWIPE_BEGIN   0x0080
 Indicates the beginning of a swipe gesture. More...
 
#define MSG_EXIN_GESTURE_SWIPE_UPDATE   0x0081
 Indicates update of a swipe gesture. More...
 
#define MSG_EXIN_GESTURE_SWIPE_END   0x0082
 Indicates the end of a swipe gesture. More...
 
#define MSG_EXIN_GESTURE_PINCH_BEGIN   0x0083
 Indicates the beginning of a pinch gesture. More...
 
#define MSG_EXIN_GESTURE_PINCH_UPDATE   0x0084
 Indicates the beginning of a pinch gesture. More...
 
#define MSG_EXIN_GESTURE_PINCH_END   0x0085
 Indicates the end of a swipe gesture. More...
 
#define MSG_EXIN_END_CHANGES   0x008F
 Indicates the end of one or more parameter changes of one hardware event. More...
 
#define MSG_EXIN_TABLET_TOOL_AXIS   0x0090
 Indicates an axis of the tablet tool has changed state. More...
 
#define MSG_EXIN_TABLET_TOOL_PROXIMITY   0x0091
 Indicates that a tool has come in or out of proximity of the tablet. More...
 
#define MSG_EXIN_TABLET_TOOL_TIP   0x0092
 Indicates that a tool has come in contact with the surface of the tablet. More...
 
#define MSG_EXIN_TABLET_TOOL_BUTTON   0x0093
 Indicates that a tool has changed a logical button state on the tablet. More...
 
#define MSG_EXIN_TABLET_PAD_BUTTON   0x0094
 Indicates that a button pressed on the tablet pad. More...
 
#define MSG_EXIN_TABLET_PAD_RING   0x0095
 Indicates that a status change on the tablet ring. More...
 
#define MSG_EXIN_TABLET_PAD_STRIP   0x0096
 Indicates that a status change on the tablet strip. More...
 
#define MSG_EXIN_USER_BEGIN   0x009A
 Indicates that the beginning of a user-defined extra input event. More...
 
#define MSG_EXIN_USER_UPDATE   0x009B
 Indicates that the update of a user-defined extra input event. More...
 
#define MSG_EXIN_USER_END   0x009C
 Indicates that the end of a user-defined extra input event. More...
 

Detailed Description

In addition to the standard keyboard and mouse messages, MiniGUI generates extra input messages for input events from other input devices, including multi-touch panel, tablet pad, joystick, and so on. We call these messages as 'extra input messages'. The messages can be classified the following types:

Note that the buttons other than left, right, and middle buttons on a mouse will be treated as generic buttons.

Since 4.0.0.

Macro Definition Documentation

◆ MSG_EXIN_AXIS

#define MSG_EXIN_AXIS   0x0070

Indicates an axis input event.

This message is sent to the active window when the user operates the axis of a pointer device such as a mouse.

int scroll = LOSWORD(wParam);
int source = HISWORD(wParam);
int value = LOSWORD(lParam);
int value_discrete = HISWORD(lParam);
Parameters
scrollone of AXIS_SCROLL_VERTICAL or AXIS_SCROLL_HORIZONTAL
sourceone of AXIS_SOURCE_WHEEL, AXIS_SOURCE_FINGER, AXIS_SOURCE_CONTINUOUS, or AXIS_SOURCE_WHEEL_TILT.
valueThe axis value.
value_discreteThe axis value in discrete steps.

Definition at line 1526 of file window.h.

◆ MSG_EXIN_BUTTONDOWN

#define MSG_EXIN_BUTTONDOWN   0x0071

Indicates the user has pressed a button on joystick or other input device.

This message is sent to the active window when the user pressed a button on joystick or other input device.

unsigned int button = (unsigned int)wParam;
unsigned int nr_down_btns = (unsigned int)lParam;
Parameters
buttonThe button value. On Linux, the button values are defined in <linux/input-event-codes.h> file, and with BTN_ prefix.
nr_down_btnsThe total number of buttons pressed.

Definition at line 1546 of file window.h.

◆ MSG_EXIN_BUTTONUP

#define MSG_EXIN_BUTTONUP   0x0072

Indicates the user has released a button on joystick or other input device.

This message is sent to the active window when the user released a button on joystick or other input device.

unsigned int button = (unsigned int)wParam;
unsigned int nr_down_btns = (unsigned int)lParam;
Parameters
buttonThe button value. On Linux, the button values are defined in <linux/input-event-codes.h> file, and with BTN_ prefix.
nr_down_btnsThe total number of buttons pressed.

Definition at line 1566 of file window.h.

◆ MSG_EXIN_END_CHANGES

#define MSG_EXIN_END_CHANGES   0x008F

Indicates the end of one or more parameter changes of one hardware event.

int count = (int)wParam;
Parameters
countThe count of parameters changed.

Definition at line 1775 of file window.h.

◆ MSG_EXIN_GESTURE_PINCH_BEGIN

#define MSG_EXIN_GESTURE_PINCH_BEGIN   0x0083

Indicates the beginning of a pinch gesture.

int nr_figures = (int)wParam;
unsigned int scale = (unsigned int)lParam;
Parameters
nr_figuresThe number of fingers used for the gesture.
scaleThe absolute scale of a pinch gesture. The scale is the division of the current distance between the fingers and the distance at the start of the gesture. Note that the initial scale value is 100.

Definition at line 1718 of file window.h.

◆ MSG_EXIN_GESTURE_PINCH_END

#define MSG_EXIN_GESTURE_PINCH_END   0x0085

Indicates the end of a swipe gesture.

int nr_figures = (int)LOSWORD(wParam);
BOOL is_cancelled = (BOOL)HISWORD(wParam);
unsigned int scale = (unsigned int)lParam;
Parameters
nr_figuresThe number of fingers used for the gesture.
is_cancelledTRUE if the gesture ended normally, or if it was cancelled.
scaleThe absolute scale of a pinch gesture. The scale is the division of the current distance between the fingers and the distance at the start of the gesture. Note that the initial scale value is 100.

Definition at line 1761 of file window.h.

◆ MSG_EXIN_GESTURE_PINCH_UPDATE

#define MSG_EXIN_GESTURE_PINCH_UPDATE   0x0084

Indicates the beginning of a pinch gesture.

unsigned int scale = LOWORD(wParam);
int da = HISWORD(wParam);
int dx = LOSWORD(lParam);
int dy = HISWORD(lParam);
Parameters
scaleThe absolute scale of a pinch gesture. The scale is the division of the current distance between the fingers and the distance at the start of the gesture. Note that the initial scale value is 100.
daThe angle delta in 1/50 degrees between the last and the current MSG_EXIN_GESTURE_PINCH_UPDATE message.
dx,dyThe motion delta between the last and the current MSG_EXIN_GESTURE_PINCH_UPDATE message.

Definition at line 1741 of file window.h.

◆ MSG_EXIN_GESTURE_SWIPE_BEGIN

#define MSG_EXIN_GESTURE_SWIPE_BEGIN   0x0080

Indicates the beginning of a swipe gesture.

int nr_figures = wParam;
Parameters
nr_figuresThe number of fingers used for the gesture.

Definition at line 1668 of file window.h.

◆ MSG_EXIN_GESTURE_SWIPE_END

#define MSG_EXIN_GESTURE_SWIPE_END   0x0082

Indicates the end of a swipe gesture.

int nr_figures = (int)wParam;
BOOL is_cancelled = (BOOL)lParam;
Parameters
nr_figuresThe number of fingers used for the gesture.
is_cancelledTRUE if the gesture ended normally, or if it was cancelled.

Definition at line 1700 of file window.h.

◆ MSG_EXIN_GESTURE_SWIPE_UPDATE

#define MSG_EXIN_GESTURE_SWIPE_UPDATE   0x0081

Indicates update of a swipe gesture.

int nr_figures = (int)wParam;
int dx = LOSWORD(lParam);
int dy = HISWORD(lParam);
Parameters
nr_figuresThe number of fingers used for the gesture.
dx,dyThe motion delta between the last and the current MSG_EXIN_GESTURE_SWIPE_UPDATE message.

Definition at line 1685 of file window.h.

◆ MSG_EXIN_SWITCH_TOGGLE

#define MSG_EXIN_SWITCH_TOGGLE   0x007A

Indicates the toggle event of a switch.

int switch_id = wParam;
int switch_state = lParam;
Parameters
switch_idThe identifier of the switch, one of SWITCH_LID or SWITCH_TABLET_MODE.
switch_stateThe state of the switch, one of SWITCH_STATE_ON or SWITCH_STATE_OFF.

Definition at line 1655 of file window.h.

◆ MSG_EXIN_TABLET_PAD_BUTTON

#define MSG_EXIN_TABLET_PAD_BUTTON   0x0094

Indicates that a button pressed on the tablet pad.

unsigned int mode = (unsigned int)wParam;
unsigned int button_number = (unsigned int)LOSWORD(lParam);
int button_state = (int)HISWORD(lParam);
Parameters
modeThe mode the button that triggered this event is in.
button_numberThe button number, which is NOT a semantic button code as defined in <linux/input.h>.
button_stateThe button state, can be TABLET_BUTTON_STATE_RELEASED or TABLET_BUTTON_STATE_PRESSED.

Definition at line 1931 of file window.h.

◆ MSG_EXIN_TABLET_PAD_RING

#define MSG_EXIN_TABLET_PAD_RING   0x0095

Indicates that a status change on the tablet ring.

unsigned int mode = (unsigned int)LOWORD(wParam);
unsigned int source = (unsigned int)HIWORD(wParam);
int position = (int)LOSWORD(lParam);
unsigned int number = (unsigned int)HIWORD(lParam);
Parameters
modeThe mode the ring that triggered this event is in.
sourceThe source of the event, can be TABLET_PAD_RING_SOURCE_UNKNOWN or TABLET_PAD_RING_SOURCE_FINGER.
positionThe current position of the ring, in 1/50 degrees counterclockwise from the northern-most point of the ring in the tablet's current logical orientation. When the source is TABLET_PAD_RING_SOURCE_FINGER and the finger is lifted from the ring the value will be less than 0.
numberThe number of the ring that has changed state, with 0 being the first ring

Definition at line 1959 of file window.h.

◆ MSG_EXIN_TABLET_PAD_STRIP

#define MSG_EXIN_TABLET_PAD_STRIP   0x0096

Indicates that a status change on the tablet strip.

unsigned int mode = (unsigned int)LOWORD(wParam);
unsigned int source = (unsigned int)HIWORD(wParam);
int position = (int)LOSWORD(lParam);
unsigned int number = (unsigned int)HIWORD(lParam);
Parameters
modeThe mode the strip that triggered this event is in.
sourceThe source of the event, can be TABLET_PAD_STRIP_SOURCE_UNKNOWN or TABLET_PAD_STRIP_SOURCE_FINGER.
positionThe current position of the strip, normalized to the range [0, 100]. When the source is TABLET_PAD_STRIP_SOURCE_FINGER and the finger is lifted from the strip, the value will be less than 0.
numberThe number of the strip that has changed state, with 0 being the first strip.

Definition at line 1986 of file window.h.

◆ MSG_EXIN_TABLET_TOOL_AXIS

#define MSG_EXIN_TABLET_TOOL_AXIS   0x0090

Indicates an axis of the tablet tool has changed state.

For a tablet tool, one or more axes may changed in one hardware event. MiniGUI will send one or more MSG_EXIN_TABLET_TOOL_XXX messages followed by a MSG_EXIN_END_CHANGES message to the current active window. Each MSG_EXIN_TABLET_TOOL_XXX message for a changed axis.

int which = (int)wParam;
long value = (long)lParam;
Parameters
whichThe axis identifier, can be one of the following identifiers:
  • TABLET_TOOL_X:
    The value contains the current absolute x coordinate of the tablet tool, transformed to screen coordinates, but scaled 10 times.
  • TABLET_TOOL_Y:
    The value containsthe current absolute y coordinate of the tablet tool, transformed to screen coordinates, but scaled 10 times.
  • TABLET_TOOL_PRESSURE:
    The value contains the current pressure being applied on the tool in use, normalized to the range [0, 1000].
  • TABLET_TOOL_DISTANCE:
    The value contains the current distance from the tablet's sensor, normalized to the range [0, 1000].
  • TABLET_TOOL_TILT_X:
    The value contains the current tilt along the X axis of the tablet's current logical orientation, in 1/50 degrees off the tablet's z axis.
  • TABLET_TOOL_TILT_Y:
    The value contains the current tilt along the Y axis of the tablet's current logical orientation, in 1/50 degrees off the tablet's z axis.
  • TABLET_TOOL_ROTATION:
    The value contains the current z rotation of the tool in 1/50 degrees, clockwise from the tool's logical neutral position.
  • TABLET_TOOL_SLIDER:
    The value contains the current position of the slider on the tool, normalized to the range [-1000, 1000].
  • TABLET_TOOL_WHEEL:
    The value contains the delta for the wheel in 1/50 degrees.
valueThe value of the axis.

Definition at line 1849 of file window.h.

◆ MSG_EXIN_TABLET_TOOL_BUTTON

#define MSG_EXIN_TABLET_TOOL_BUTTON   0x0093

Indicates that a tool has changed a logical button state on the tablet.

unsigned int button = (unsigned int)wParam;
int state = (int)lParam;
Parameters
buttonThe button identifier, which is a semantic button code as defined in <linux/input.h>.
stateThe button state, can be TABLET_BUTTON_STATE_RELEASED or TABLET_BUTTON_STATE_PRESSED.

Definition at line 1912 of file window.h.

◆ MSG_EXIN_TABLET_TOOL_PROXIMITY

#define MSG_EXIN_TABLET_TOOL_PROXIMITY   0x0091

Indicates that a tool has come in or out of proximity of the tablet.

For a tablet tool, one or more axes may changed in one hardware event. MiniGUI will send one or more MSG_EXIN_TABLET_TOOL_XXX messages followed by a MSG_EXIN_END_CHANGES message to the current active window. Each MSG_EXIN_TABLET_TOOL_XXX message for a changed axis.

int which = (int)LOSWORD(wParam);
int state = (int)HISWORD(wParam);
long value = (long)lParam;
Parameters
whichThe axis identifier, please see
See also
MSG_EXIN_TABLET_TOOL_AXIS.
Parameters
stateThe proximity state, can be TABLET_TOOL_PROXIMITY_STATE_OUT or TABLET_TOOL_PROXIMITY_STATE_IN.
valueThe value of the axis.

Definition at line 1872 of file window.h.

◆ MSG_EXIN_TABLET_TOOL_TIP

#define MSG_EXIN_TABLET_TOOL_TIP   0x0092

Indicates that a tool has come in contact with the surface of the tablet.

For a tablet tool, one or more axes may changed in one hardware event. MiniGUI will send one or more MSG_EXIN_TABLET_TOOL_XXX messages followed by a MSG_EXIN_END_CHANGES message to the current active window. Each MSG_EXIN_TABLET_TOOL_XXX message for a changed axis.

int which = (int)LOSWORD(wParam);
int state = (int)HISWORD(wParam);
long value = (long)lParam;
Parameters
whichThe axis identifier, please see
See also
MSG_EXIN_TABLET_TOOL_AXIS.
Parameters
stateThe tip state, can be TABLET_TOOL_TIP_UP or TABLET_TOOL_TIP_DOWN.
valueThe value of the axis.

Definition at line 1895 of file window.h.

◆ MSG_EXIN_TOUCH_CANCEL

#define MSG_EXIN_TOUCH_CANCEL   0x0076

Indicates a cancelled touch event.

Note that this message has not any parameters.

Definition at line 1610 of file window.h.

◆ MSG_EXIN_TOUCH_DOWN

#define MSG_EXIN_TOUCH_DOWN   0x0073

Indicates a touch down event.

int x = LOSWORD(lParam);
int y = HISWORD(lParam);
Parameters
x,yThe position of touch.

Definition at line 1580 of file window.h.

◆ MSG_EXIN_TOUCH_FRAME

#define MSG_EXIN_TOUCH_FRAME   0x0077

Indicates the end of a set of touchpoints at one device sample time.

int slot = (int)wParam;
unsigned int seat_slot = (unsigned int)lParam;
Parameters
slotThe slot of the touch event. Please see the Linux kernel's multitouch protocol B documentation for more information. If the touch event has no assigned slot, for example, if it is from a single touch device, slot will be -1.
seat_slotThe seat slot of the touch event. A seat slot is a non-negative seat wide unique identifier of an active touch point.

Definition at line 1630 of file window.h.

◆ MSG_EXIN_TOUCH_MOTION

#define MSG_EXIN_TOUCH_MOTION   0x0075

Indicates a touch move event.

int x = LOSWORD(lParam);
int y = HISWORD(lParam);
Parameters
x,yThe position of touch.

Definition at line 1602 of file window.h.

◆ MSG_EXIN_TOUCH_UP

#define MSG_EXIN_TOUCH_UP   0x0074

Indicates a touch up event.

Note that this message has not any parameters.

Definition at line 1588 of file window.h.

◆ MSG_EXIN_USER_BEGIN

#define MSG_EXIN_USER_BEGIN   0x009A

Indicates that the beginning of a user-defined extra input event.

Parameters
wParamThe first parameter of this message.
lParamThe second parameter of this message.

Definition at line 2001 of file window.h.

◆ MSG_EXIN_USER_END

#define MSG_EXIN_USER_END   0x009C

Indicates that the end of a user-defined extra input event.

Parameters
wParamThe first parameter of this message.
lParamThe second parameter of this message.

Definition at line 2031 of file window.h.

◆ MSG_EXIN_USER_UPDATE

#define MSG_EXIN_USER_UPDATE   0x009B

Indicates that the update of a user-defined extra input event.

Parameters
wParamThe first parameter of this message.
lParamThe second parameter of this message.

Definition at line 2016 of file window.h.

MSG_EXIN_BUTTONUP
#define MSG_EXIN_BUTTONUP
Indicates the user has released a button on joystick or other input device.
Definition: window.h:1566
MSG_EXIN_USER_END
#define MSG_EXIN_USER_END
Indicates that the end of a user-defined extra input event.
Definition: window.h:2031
MSG_EXIN_GESTURE_SWIPE_END
#define MSG_EXIN_GESTURE_SWIPE_END
Indicates the end of a swipe gesture.
Definition: window.h:1700
MSG_EXIN_TOUCH_DOWN
#define MSG_EXIN_TOUCH_DOWN
Indicates a touch down event.
Definition: window.h:1580
WPARAM
UINT_PTR WPARAM
A type definition for the first message paramter.
Definition: common.h:706
MSG_EXIN_TABLET_TOOL_TIP
#define MSG_EXIN_TABLET_TOOL_TIP
Indicates that a tool has come in contact with the surface of the tablet.
Definition: window.h:1895
MSG_EXIN_GESTURE_PINCH_UPDATE
#define MSG_EXIN_GESTURE_PINCH_UPDATE
Indicates the beginning of a pinch gesture.
Definition: window.h:1741
HISWORD
#define HISWORD(l)
Returns the high signed word of the double word l.
Definition: common.h:837
MSG_EXIN_TABLET_TOOL_PROXIMITY
#define MSG_EXIN_TABLET_TOOL_PROXIMITY
Indicates that a tool has come in or out of proximity of the tablet.
Definition: window.h:1872
MSG_EXIN_GESTURE_PINCH_BEGIN
#define MSG_EXIN_GESTURE_PINCH_BEGIN
Indicates the beginning of a pinch gesture.
Definition: window.h:1718
MSG_EXIN_TABLET_PAD_BUTTON
#define MSG_EXIN_TABLET_PAD_BUTTON
Indicates that a button pressed on the tablet pad.
Definition: window.h:1931
MSG_EXIN_GESTURE_SWIPE_UPDATE
#define MSG_EXIN_GESTURE_SWIPE_UPDATE
Indicates update of a swipe gesture.
Definition: window.h:1685
BOOL
int BOOL
A type definition for boolean value.
Definition: common.h:343
MSG_EXIN_TOUCH_FRAME
#define MSG_EXIN_TOUCH_FRAME
Indicates the end of a set of touchpoints at one device sample time.
Definition: window.h:1630
MSG_EXIN_GESTURE_SWIPE_BEGIN
#define MSG_EXIN_GESTURE_SWIPE_BEGIN
Indicates the beginning of a swipe gesture.
Definition: window.h:1668
MSG_EXIN_SWITCH_TOGGLE
#define MSG_EXIN_SWITCH_TOGGLE
Indicates the toggle event of a switch.
Definition: window.h:1655
MSG_EXIN_TABLET_PAD_RING
#define MSG_EXIN_TABLET_PAD_RING
Indicates that a status change on the tablet ring.
Definition: window.h:1959
MSG_EXIN_TOUCH_MOTION
#define MSG_EXIN_TOUCH_MOTION
Indicates a touch move event.
Definition: window.h:1602
LOWORD
#define LOWORD(l)
Returns the low word of the double word l.
Definition: common.h:814
LOSWORD
#define LOSWORD(l)
Returns the low signed word of the double word l.
Definition: common.h:830
HIWORD
#define HIWORD(l)
Returns the high word of the double word l.
Definition: common.h:821
MSG_EXIN_TABLET_PAD_STRIP
#define MSG_EXIN_TABLET_PAD_STRIP
Indicates that a status change on the tablet strip.
Definition: window.h:1986
MSG_EXIN_AXIS
#define MSG_EXIN_AXIS
Indicates an axis input event.
Definition: window.h:1526
MSG_EXIN_GESTURE_PINCH_END
#define MSG_EXIN_GESTURE_PINCH_END
Indicates the end of a swipe gesture.
Definition: window.h:1761
MSG_EXIN_USER_UPDATE
#define MSG_EXIN_USER_UPDATE
Indicates that the update of a user-defined extra input event.
Definition: window.h:2016
MSG_EXIN_USER_BEGIN
#define MSG_EXIN_USER_BEGIN
Indicates that the beginning of a user-defined extra input event.
Definition: window.h:2001
MSG_EXIN_BUTTONDOWN
#define MSG_EXIN_BUTTONDOWN
Indicates the user has pressed a button on joystick or other input device.
Definition: window.h:1546
LPARAM
UINT_PTR LPARAM
A type definition for the second message paramter.
Definition: common.h:712
MSG_EXIN_END_CHANGES
#define MSG_EXIN_END_CHANGES
Indicates the end of one or more parameter changes of one hardware event.
Definition: window.h:1775
MSG_EXIN_TABLET_TOOL_BUTTON
#define MSG_EXIN_TABLET_TOOL_BUTTON
Indicates that a tool has changed a logical button state on the tablet.
Definition: window.h:1912
MSG_EXIN_TABLET_TOOL_AXIS
#define MSG_EXIN_TABLET_TOOL_AXIS
Indicates an axis of the tablet tool has changed state.
Definition: window.h:1849