Struct
GdkEventButton
Description [src]
struct GdkEventButton {
GdkEventType type;
GdkWindow* window;
gint8 send_event;
guint32 time;
gdouble x;
gdouble y;
gdouble* axes;
GdkModifierType* state;
guint button;
GdkDevice* device;
gdouble x_root;
gdouble y_root;
}
Used for button press and button release events. The
type
field will be one of GDK_BUTTON_PRESS
,
GDK_2BUTTON_PRESS
, GDK_3BUTTON_PRESS
or GDK_BUTTON_RELEASE
,
Double and triple-clicks result in a sequence of events being received. For double-clicks the order of events will be:
GDK_BUTTON_PRESS
GDK_BUTTON_RELEASE
GDK_BUTTON_PRESS
GDK_2BUTTON_PRESS
GDK_BUTTON_RELEASE
Note that the first click is received just like a normal
button press, while the second click results in a GDK_2BUTTON_PRESS
being received just after the GDK_BUTTON_PRESS
.
Triple-clicks are very similar to double-clicks, except that
GDK_3BUTTON_PRESS
is inserted after the third click. The order of the
events is:
GDK_BUTTON_PRESS
GDK_BUTTON_RELEASE
GDK_BUTTON_PRESS
GDK_2BUTTON_PRESS
GDK_BUTTON_RELEASE
GDK_BUTTON_PRESS
GDK_3BUTTON_PRESS
GDK_BUTTON_RELEASE
For a double click to occur, the second button press must occur within 1/4 of a second of the first. For a triple click to occur, the third button press must also occur within 1/2 second of the first button press.
Structure members
type
The type of the event (
GDK_BUTTON_PRESS
,GDK_2BUTTON_PRESS
,GDK_3BUTTON_PRESS
orGDK_BUTTON_RELEASE
).window
The window which received the event.
send_event
TRUE
if the event was sent explicitly.time
The time of the event in milliseconds.
x
The x coordinate of the pointer relative to the window.
y
The y coordinate of the pointer relative to the window.
axes
x
,y
translated to the axes ofdevice
, orNULL
ifdevice
is the mouse.state
A bit-mask representing the state of the modifier keys (e.g. Control, Shift and Alt) and the pointer buttons. See
GdkModifierType
.button
The button which was pressed or released, numbered from 1 to 5. Normally button 1 is the left mouse button, 2 is the middle button, and 3 is the right button. On 2-button mice, the middle button can often be simulated by pressing both mouse buttons together.
device
The master device that the event originated from. Use
gdk_event_get_source_device()
to get the slave device.x_root
The x coordinate of the pointer relative to the root of the screen.
y_root
The y coordinate of the pointer relative to the root of the screen.