Sets our main struct and passes it to the parent class.
Creates a new event of the given type. All fields are set to 0.
A destructor is present on this object, but not explicitly documented in the source.
Get a specific event.
Copies a gdk.Event, copying or incrementing the reference count of the resources associated with it (e.g. gdk.Window’s and strings).
Get a specific event.
Frees a gdk.Event, freeing or decrementing any resources associated with it. Note that this function should only be called with events returned from functions such as Event.peek, Event.get, Event.copy and Event.new.
Extract the axis value for a particular axis use from an event structure.
Extract the button number from an event.
Extracts the click count from an event.
Extract the event window relative x/y coordinates from an event.
If the event contains a “device” field, this function will return it, else it will return NULL.
If the event was generated by a device that supports different tools (eg. a tablet), this function will return a gdk.DeviceTool representing the tool that caused the event. Otherwise, NULL will be returned.
If event if of type GDK_TOUCH_BEGIN, GDK_TOUCH_UPDATE, GDK_TOUCH_END or GDK_TOUCH_CANCEL, returns the gdk.EventSequence to which the event belongs. Otherwise, return NULL.
Get the main Gtk struct
Retrieves the type of the event.
Extracts the hardware keycode from an event.
Extracts the keyval from an event.
Extract the root window relative x/y coordinates from an event.
Gets the keyboard low-level scancode of a key event.
Returns the screen for the event. The screen is typically the screen for event->any.window, but for events such as mouse events, it is the screen where the pointer was when the event occurs - that is, the screen which has the root window to which event->motion.x_root and event->motion.y_root are relative.
Retrieves the scroll deltas from a gdk.Event
Extracts the scroll direction from an event.
Returns the gdk.Seat this event was generated for.
This function returns the hardware (slave) gdk.Device that has triggered the event, falling back to the virtual (master) device (as in Event.getDevice) if the event wasn’t caused by interaction with a hardware device. This may happen for example in synthesized crossing events after a gdk.Window updates its geometry or a grab is acquired/released.
If the event contains a “state” field, puts that field in state. Otherwise stores an empty state (0). Returns TRUE if there was a state field in the event. event may be NULL, in which case it’s treated as if the event had no state field.
the main Gtk struct as a void*
Returns the time stamp from event, if there is one; otherwise returns GDK_CURRENT_TIME If event is NULL, returns GDK_CURRENT_TIME
Extracts the gdk.Window associated with an event.
Get a specific event.
Check whether a scroll event is a stop scroll event. Scroll sequences with smooth scroll information may provide a stop scroll event once the interaction with the device finishes, e.g. by lifting a finger. This stop scroll event is the signal that a widget may trigger kinetic scrolling based on the current velocity.
Get a specific event.
Appends a copy of the given event onto the front of the event queue for event->any.window’s display, or the default event queue if event->any.window is NULL. See Display.putEvent.
Get a specific event.
Sets the device for event to device. The event must have been allocated by GTK+, for instance, by Event.copy.
Sets the device tool for this event, should be rarely used.
Sets the screen for event to screen. The event must have been allocated by GTK+, for instance, by Event.copy.
Sets the slave device for event to device.
Get a specific event.
This function returns whether a GdkEventButton should trigger a context menu, according to platform conventions. The right mouse button always triggers context menus. Additionally, if Keymap.getModifierMask returns a non-0 mask for GDK_MODIFIER_INTENT_CONTEXT_MENU, then the left mouse button will also trigger a context menu if this modifier is pressed.
Specifies the type of the event.
Get a specific event.
Checks all open displays for a gdk.Event to process,to be processed on, fetching events from the windowing system if necessary. See Display.getEvent.
If both events contain X/Y information, this function will return TRUE and return in angle the relative angle from event1 to event2. The rotation direction for positive angles is from the positive X axis towards the positive Y axis.
If both events contain X/Y information, the center of both coordinates will be returned in x and y.
If both events have X/Y information, the distance between both coordinates (as in a straight line going from event1 to event2) will be returned.
Gets whether event debugging output is enabled.
Sets the function to call to handle all events from GDK.
If there is an event waiting in the event queue of some open display, returns a copy of it. See Display.peekEvent.
Checks if any events are ready to be processed for any display.
Request more motion notifies if event is a motion notify hint event.
Sets whether a trace of received events is output. Note that GTK+ must be compiled with debugging (that is, configured using the --enable-debug option) to use this option.
Obtains a desktop-wide setting, such as the double-click time, for the default screen. See Screen.getSetting.
the main Gtk struct
A gdk.Event contains a union of all of the event types, and allows access to the data fields in a number of ways.
The event type is always the first field in all of the event types, and can always be accessed with the following code, no matter what type of event it is:
To access other fields of the event, the pointer to the event can be cast to the appropriate event type, or the union member name can be used. For example if the event type is GDK_BUTTON_PRESS then the x coordinate of the button press can be accessed with:
r: