|
Packit |
98cdb6 |
/* GDK - The GIMP Drawing Kit
|
|
Packit |
98cdb6 |
* Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
|
Packit |
98cdb6 |
*
|
|
Packit |
98cdb6 |
* This library is free software; you can redistribute it and/or
|
|
Packit |
98cdb6 |
* modify it under the terms of the GNU Lesser General Public
|
|
Packit |
98cdb6 |
* License as published by the Free Software Foundation; either
|
|
Packit |
98cdb6 |
* version 2 of the License, or (at your option) any later version.
|
|
Packit |
98cdb6 |
*
|
|
Packit |
98cdb6 |
* This library is distributed in the hope that it will be useful,
|
|
Packit |
98cdb6 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
98cdb6 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
98cdb6 |
* Lesser General Public License for more details.
|
|
Packit |
98cdb6 |
*
|
|
Packit |
98cdb6 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
98cdb6 |
* License along with this library; if not, write to the
|
|
Packit |
98cdb6 |
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
Packit |
98cdb6 |
* Boston, MA 02111-1307, USA.
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/*
|
|
Packit |
98cdb6 |
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
|
|
Packit |
98cdb6 |
* file for a list of people on the GTK+ Team. See the ChangeLog
|
|
Packit |
98cdb6 |
* files for a list of changes. These files are distributed with
|
|
Packit |
98cdb6 |
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#ifndef __GDK_EVENTS_H__
|
|
Packit |
98cdb6 |
#define __GDK_EVENTS_H__
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GDK_H_INSIDE__) && !defined (GDK_COMPILATION)
|
|
Packit |
98cdb6 |
#error "Only <gdk/gdk.h> can be included directly."
|
|
Packit |
98cdb6 |
#endif
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#include <gdk/gdkcolor.h>
|
|
Packit |
98cdb6 |
#include <gdk/gdktypes.h>
|
|
Packit |
98cdb6 |
#include <gdk/gdkdnd.h>
|
|
Packit |
98cdb6 |
#include <gdk/gdkinput.h>
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
G_BEGIN_DECLS
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#define GDK_TYPE_EVENT (gdk_event_get_type ())
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#define GDK_PRIORITY_EVENTS (G_PRIORITY_DEFAULT)
|
|
Packit |
98cdb6 |
#define GDK_PRIORITY_REDRAW (G_PRIORITY_HIGH_IDLE + 20)
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef struct _GdkEventAny GdkEventAny;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventExpose GdkEventExpose;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventNoExpose GdkEventNoExpose;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventVisibility GdkEventVisibility;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventMotion GdkEventMotion;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventButton GdkEventButton;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventScroll GdkEventScroll;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventKey GdkEventKey;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventFocus GdkEventFocus;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventCrossing GdkEventCrossing;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventConfigure GdkEventConfigure;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventProperty GdkEventProperty;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventSelection GdkEventSelection;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventOwnerChange GdkEventOwnerChange;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventProximity GdkEventProximity;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventClient GdkEventClient;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventDND GdkEventDND;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventWindowState GdkEventWindowState;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventSetting GdkEventSetting;
|
|
Packit |
98cdb6 |
typedef struct _GdkEventGrabBroken GdkEventGrabBroken;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef union _GdkEvent GdkEvent;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef void (*GdkEventFunc) (GdkEvent *event,
|
|
Packit |
98cdb6 |
gpointer data);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* Event filtering */
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef void GdkXEvent; /* Can be cast to window system specific
|
|
Packit |
98cdb6 |
* even type, XEvent on X11, MSG on Win32.
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum {
|
|
Packit |
98cdb6 |
GDK_FILTER_CONTINUE, /* Event not handled, continue processesing */
|
|
Packit |
98cdb6 |
GDK_FILTER_TRANSLATE, /* Native event translated into a GDK event and
|
|
Packit |
98cdb6 |
stored in the "event" structure that was
|
|
Packit |
98cdb6 |
passed in */
|
|
Packit |
98cdb6 |
GDK_FILTER_REMOVE /* Terminate processing, removing event */
|
|
Packit |
98cdb6 |
} GdkFilterReturn;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef GdkFilterReturn (*GdkFilterFunc) (GdkXEvent *xevent,
|
|
Packit |
98cdb6 |
GdkEvent *event,
|
|
Packit |
98cdb6 |
gpointer data);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* Event types.
|
|
Packit |
98cdb6 |
* Nothing: No event occurred.
|
|
Packit |
98cdb6 |
* Delete: A window delete event was sent by the window manager.
|
|
Packit |
98cdb6 |
* The specified window should be deleted.
|
|
Packit |
98cdb6 |
* Destroy: A window has been destroyed.
|
|
Packit |
98cdb6 |
* Expose: Part of a window has been uncovered.
|
|
Packit |
98cdb6 |
* NoExpose: Same as expose, but no expose event was generated.
|
|
Packit |
98cdb6 |
* VisibilityNotify: A window has become fully/partially/not obscured.
|
|
Packit |
98cdb6 |
* MotionNotify: The mouse has moved.
|
|
Packit |
98cdb6 |
* ButtonPress: A mouse button was pressed.
|
|
Packit |
98cdb6 |
* ButtonRelease: A mouse button was release.
|
|
Packit |
98cdb6 |
* KeyPress: A key was pressed.
|
|
Packit |
98cdb6 |
* KeyRelease: A key was released.
|
|
Packit |
98cdb6 |
* EnterNotify: A window was entered.
|
|
Packit |
98cdb6 |
* LeaveNotify: A window was exited.
|
|
Packit |
98cdb6 |
* FocusChange: The focus window has changed. (The focus window gets
|
|
Packit |
98cdb6 |
* keyboard events).
|
|
Packit |
98cdb6 |
* Resize: A window has been resized.
|
|
Packit |
98cdb6 |
* Map: A window has been mapped. (It is now visible on the screen).
|
|
Packit |
98cdb6 |
* Unmap: A window has been unmapped. (It is no longer visible on
|
|
Packit |
98cdb6 |
* the screen).
|
|
Packit |
98cdb6 |
* Scroll: A mouse wheel was scrolled either up or down.
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_NOTHING = -1,
|
|
Packit |
98cdb6 |
GDK_DELETE = 0,
|
|
Packit |
98cdb6 |
GDK_DESTROY = 1,
|
|
Packit |
98cdb6 |
GDK_EXPOSE = 2,
|
|
Packit |
98cdb6 |
GDK_MOTION_NOTIFY = 3,
|
|
Packit |
98cdb6 |
GDK_BUTTON_PRESS = 4,
|
|
Packit |
98cdb6 |
GDK_2BUTTON_PRESS = 5,
|
|
Packit |
98cdb6 |
GDK_3BUTTON_PRESS = 6,
|
|
Packit |
98cdb6 |
GDK_BUTTON_RELEASE = 7,
|
|
Packit |
98cdb6 |
GDK_KEY_PRESS = 8,
|
|
Packit |
98cdb6 |
GDK_KEY_RELEASE = 9,
|
|
Packit |
98cdb6 |
GDK_ENTER_NOTIFY = 10,
|
|
Packit |
98cdb6 |
GDK_LEAVE_NOTIFY = 11,
|
|
Packit |
98cdb6 |
GDK_FOCUS_CHANGE = 12,
|
|
Packit |
98cdb6 |
GDK_CONFIGURE = 13,
|
|
Packit |
98cdb6 |
GDK_MAP = 14,
|
|
Packit |
98cdb6 |
GDK_UNMAP = 15,
|
|
Packit |
98cdb6 |
GDK_PROPERTY_NOTIFY = 16,
|
|
Packit |
98cdb6 |
GDK_SELECTION_CLEAR = 17,
|
|
Packit |
98cdb6 |
GDK_SELECTION_REQUEST = 18,
|
|
Packit |
98cdb6 |
GDK_SELECTION_NOTIFY = 19,
|
|
Packit |
98cdb6 |
GDK_PROXIMITY_IN = 20,
|
|
Packit |
98cdb6 |
GDK_PROXIMITY_OUT = 21,
|
|
Packit |
98cdb6 |
GDK_DRAG_ENTER = 22,
|
|
Packit |
98cdb6 |
GDK_DRAG_LEAVE = 23,
|
|
Packit |
98cdb6 |
GDK_DRAG_MOTION = 24,
|
|
Packit |
98cdb6 |
GDK_DRAG_STATUS = 25,
|
|
Packit |
98cdb6 |
GDK_DROP_START = 26,
|
|
Packit |
98cdb6 |
GDK_DROP_FINISHED = 27,
|
|
Packit |
98cdb6 |
GDK_CLIENT_EVENT = 28,
|
|
Packit |
98cdb6 |
GDK_VISIBILITY_NOTIFY = 29,
|
|
Packit |
98cdb6 |
GDK_NO_EXPOSE = 30,
|
|
Packit |
98cdb6 |
GDK_SCROLL = 31,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE = 32,
|
|
Packit |
98cdb6 |
GDK_SETTING = 33,
|
|
Packit |
98cdb6 |
GDK_OWNER_CHANGE = 34,
|
|
Packit |
98cdb6 |
GDK_GRAB_BROKEN = 35,
|
|
Packit |
98cdb6 |
GDK_DAMAGE = 36,
|
|
Packit |
98cdb6 |
GDK_EVENT_LAST /* helper variable for decls */
|
|
Packit |
98cdb6 |
} GdkEventType;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* Event masks. (Used to select what types of events a window
|
|
Packit |
98cdb6 |
* will receive).
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_EXPOSURE_MASK = 1 << 1,
|
|
Packit |
98cdb6 |
GDK_POINTER_MOTION_MASK = 1 << 2,
|
|
Packit |
98cdb6 |
GDK_POINTER_MOTION_HINT_MASK = 1 << 3,
|
|
Packit |
98cdb6 |
GDK_BUTTON_MOTION_MASK = 1 << 4,
|
|
Packit |
98cdb6 |
GDK_BUTTON1_MOTION_MASK = 1 << 5,
|
|
Packit |
98cdb6 |
GDK_BUTTON2_MOTION_MASK = 1 << 6,
|
|
Packit |
98cdb6 |
GDK_BUTTON3_MOTION_MASK = 1 << 7,
|
|
Packit |
98cdb6 |
GDK_BUTTON_PRESS_MASK = 1 << 8,
|
|
Packit |
98cdb6 |
GDK_BUTTON_RELEASE_MASK = 1 << 9,
|
|
Packit |
98cdb6 |
GDK_KEY_PRESS_MASK = 1 << 10,
|
|
Packit |
98cdb6 |
GDK_KEY_RELEASE_MASK = 1 << 11,
|
|
Packit |
98cdb6 |
GDK_ENTER_NOTIFY_MASK = 1 << 12,
|
|
Packit |
98cdb6 |
GDK_LEAVE_NOTIFY_MASK = 1 << 13,
|
|
Packit |
98cdb6 |
GDK_FOCUS_CHANGE_MASK = 1 << 14,
|
|
Packit |
98cdb6 |
GDK_STRUCTURE_MASK = 1 << 15,
|
|
Packit |
98cdb6 |
GDK_PROPERTY_CHANGE_MASK = 1 << 16,
|
|
Packit |
98cdb6 |
GDK_VISIBILITY_NOTIFY_MASK = 1 << 17,
|
|
Packit |
98cdb6 |
GDK_PROXIMITY_IN_MASK = 1 << 18,
|
|
Packit |
98cdb6 |
GDK_PROXIMITY_OUT_MASK = 1 << 19,
|
|
Packit |
98cdb6 |
GDK_SUBSTRUCTURE_MASK = 1 << 20,
|
|
Packit |
98cdb6 |
GDK_SCROLL_MASK = 1 << 21,
|
|
Packit |
98cdb6 |
GDK_ALL_EVENTS_MASK = 0x3FFFFE
|
|
Packit |
98cdb6 |
} GdkEventMask;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_VISIBILITY_UNOBSCURED,
|
|
Packit |
98cdb6 |
GDK_VISIBILITY_PARTIAL,
|
|
Packit |
98cdb6 |
GDK_VISIBILITY_FULLY_OBSCURED
|
|
Packit |
98cdb6 |
} GdkVisibilityState;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_SCROLL_UP,
|
|
Packit |
98cdb6 |
GDK_SCROLL_DOWN,
|
|
Packit |
98cdb6 |
GDK_SCROLL_LEFT,
|
|
Packit |
98cdb6 |
GDK_SCROLL_RIGHT
|
|
Packit |
98cdb6 |
} GdkScrollDirection;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* Types of enter/leave notifications.
|
|
Packit |
98cdb6 |
* Ancestor:
|
|
Packit |
98cdb6 |
* Virtual:
|
|
Packit |
98cdb6 |
* Inferior:
|
|
Packit |
98cdb6 |
* Nonlinear:
|
|
Packit |
98cdb6 |
* NonlinearVirtual:
|
|
Packit |
98cdb6 |
* Unknown: An unknown type of enter/leave event occurred.
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_NOTIFY_ANCESTOR = 0,
|
|
Packit |
98cdb6 |
GDK_NOTIFY_VIRTUAL = 1,
|
|
Packit |
98cdb6 |
GDK_NOTIFY_INFERIOR = 2,
|
|
Packit |
98cdb6 |
GDK_NOTIFY_NONLINEAR = 3,
|
|
Packit |
98cdb6 |
GDK_NOTIFY_NONLINEAR_VIRTUAL = 4,
|
|
Packit |
98cdb6 |
GDK_NOTIFY_UNKNOWN = 5
|
|
Packit |
98cdb6 |
} GdkNotifyType;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* Enter/leave event modes.
|
|
Packit |
98cdb6 |
* NotifyNormal
|
|
Packit |
98cdb6 |
* NotifyGrab
|
|
Packit |
98cdb6 |
* NotifyUngrab
|
|
Packit |
98cdb6 |
*/
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_CROSSING_NORMAL,
|
|
Packit |
98cdb6 |
GDK_CROSSING_GRAB,
|
|
Packit |
98cdb6 |
GDK_CROSSING_UNGRAB,
|
|
Packit |
98cdb6 |
GDK_CROSSING_GTK_GRAB,
|
|
Packit |
98cdb6 |
GDK_CROSSING_GTK_UNGRAB,
|
|
Packit |
98cdb6 |
GDK_CROSSING_STATE_CHANGED
|
|
Packit |
98cdb6 |
} GdkCrossingMode;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_PROPERTY_NEW_VALUE,
|
|
Packit |
98cdb6 |
GDK_PROPERTY_DELETE
|
|
Packit |
98cdb6 |
} GdkPropertyState;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_WITHDRAWN = 1 << 0,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_ICONIFIED = 1 << 1,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_MAXIMIZED = 1 << 2,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_STICKY = 1 << 3,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_FULLSCREEN = 1 << 4,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_ABOVE = 1 << 5,
|
|
Packit |
98cdb6 |
GDK_WINDOW_STATE_BELOW = 1 << 6
|
|
Packit |
98cdb6 |
} GdkWindowState;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_SETTING_ACTION_NEW,
|
|
Packit |
98cdb6 |
GDK_SETTING_ACTION_CHANGED,
|
|
Packit |
98cdb6 |
GDK_SETTING_ACTION_DELETED
|
|
Packit |
98cdb6 |
} GdkSettingAction;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
typedef enum
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GDK_OWNER_CHANGE_NEW_OWNER,
|
|
Packit |
98cdb6 |
GDK_OWNER_CHANGE_DESTROY,
|
|
Packit |
98cdb6 |
GDK_OWNER_CHANGE_CLOSE
|
|
Packit |
98cdb6 |
} GdkOwnerChange;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventAny
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventExpose
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkRectangle area;
|
|
Packit |
98cdb6 |
GdkRegion *region;
|
|
Packit |
98cdb6 |
gint count; /* If non-zero, how many more events follow. */
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventNoExpose
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventVisibility
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkVisibilityState state;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventMotion
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
gdouble x;
|
|
Packit |
98cdb6 |
gdouble y;
|
|
Packit |
98cdb6 |
gdouble *axes;
|
|
Packit |
98cdb6 |
guint state;
|
|
Packit |
98cdb6 |
gint16 is_hint;
|
|
Packit |
98cdb6 |
GdkDevice *device;
|
|
Packit |
98cdb6 |
gdouble x_root, y_root;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventButton
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
gdouble x;
|
|
Packit |
98cdb6 |
gdouble y;
|
|
Packit |
98cdb6 |
gdouble *axes;
|
|
Packit |
98cdb6 |
guint state;
|
|
Packit |
98cdb6 |
guint button;
|
|
Packit |
98cdb6 |
GdkDevice *device;
|
|
Packit |
98cdb6 |
gdouble x_root, y_root;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventScroll
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
gdouble x;
|
|
Packit |
98cdb6 |
gdouble y;
|
|
Packit |
98cdb6 |
guint state;
|
|
Packit |
98cdb6 |
GdkScrollDirection direction;
|
|
Packit |
98cdb6 |
GdkDevice *device;
|
|
Packit |
98cdb6 |
gdouble x_root, y_root;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventKey
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
guint state;
|
|
Packit |
98cdb6 |
guint keyval;
|
|
Packit |
98cdb6 |
gint length;
|
|
Packit |
98cdb6 |
gchar *string;
|
|
Packit |
98cdb6 |
guint16 hardware_keycode;
|
|
Packit |
98cdb6 |
guint8 group;
|
|
Packit |
98cdb6 |
guint is_modifier : 1;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventCrossing
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkWindow *subwindow;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
gdouble x;
|
|
Packit |
98cdb6 |
gdouble y;
|
|
Packit |
98cdb6 |
gdouble x_root;
|
|
Packit |
98cdb6 |
gdouble y_root;
|
|
Packit |
98cdb6 |
GdkCrossingMode mode;
|
|
Packit |
98cdb6 |
GdkNotifyType detail;
|
|
Packit |
98cdb6 |
gboolean focus;
|
|
Packit |
98cdb6 |
guint state;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventFocus
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
gint16 in;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventConfigure
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
gint x, y;
|
|
Packit |
98cdb6 |
gint width;
|
|
Packit |
98cdb6 |
gint height;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventProperty
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkAtom atom;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
guint state;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventSelection
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkAtom selection;
|
|
Packit |
98cdb6 |
GdkAtom target;
|
|
Packit |
98cdb6 |
GdkAtom property;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
GdkNativeWindow requestor;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventOwnerChange
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkNativeWindow owner;
|
|
Packit |
98cdb6 |
GdkOwnerChange reason;
|
|
Packit |
98cdb6 |
GdkAtom selection;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
guint32 selection_time;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* This event type will be used pretty rarely. It only is important
|
|
Packit |
98cdb6 |
for XInput aware programs that are drawing their own cursor */
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventProximity
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
GdkDevice *device;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventClient
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkAtom message_type;
|
|
Packit |
98cdb6 |
gushort data_format;
|
|
Packit |
98cdb6 |
union {
|
|
Packit |
98cdb6 |
char b[20];
|
|
Packit |
98cdb6 |
short s[10];
|
|
Packit |
98cdb6 |
long l[5];
|
|
Packit |
98cdb6 |
} data;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventSetting
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkSettingAction action;
|
|
Packit |
98cdb6 |
char *name;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventWindowState
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkWindowState changed_mask;
|
|
Packit |
98cdb6 |
GdkWindowState new_window_state;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventGrabBroken {
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
gboolean keyboard;
|
|
Packit |
98cdb6 |
gboolean implicit;
|
|
Packit |
98cdb6 |
GdkWindow *grab_window;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
/* Event types for DND */
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
struct _GdkEventDND {
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkWindow *window;
|
|
Packit |
98cdb6 |
gint8 send_event;
|
|
Packit |
98cdb6 |
GdkDragContext *context;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
guint32 time;
|
|
Packit |
98cdb6 |
gshort x_root, y_root;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
union _GdkEvent
|
|
Packit |
98cdb6 |
{
|
|
Packit |
98cdb6 |
GdkEventType type;
|
|
Packit |
98cdb6 |
GdkEventAny any;
|
|
Packit |
98cdb6 |
GdkEventExpose expose;
|
|
Packit |
98cdb6 |
GdkEventNoExpose no_expose;
|
|
Packit |
98cdb6 |
GdkEventVisibility visibility;
|
|
Packit |
98cdb6 |
GdkEventMotion motion;
|
|
Packit |
98cdb6 |
GdkEventButton button;
|
|
Packit |
98cdb6 |
GdkEventScroll scroll;
|
|
Packit |
98cdb6 |
GdkEventKey key;
|
|
Packit |
98cdb6 |
GdkEventCrossing crossing;
|
|
Packit |
98cdb6 |
GdkEventFocus focus_change;
|
|
Packit |
98cdb6 |
GdkEventConfigure configure;
|
|
Packit |
98cdb6 |
GdkEventProperty property;
|
|
Packit |
98cdb6 |
GdkEventSelection selection;
|
|
Packit |
98cdb6 |
GdkEventOwnerChange owner_change;
|
|
Packit |
98cdb6 |
GdkEventProximity proximity;
|
|
Packit |
98cdb6 |
GdkEventClient client;
|
|
Packit |
98cdb6 |
GdkEventDND dnd;
|
|
Packit |
98cdb6 |
GdkEventWindowState window_state;
|
|
Packit |
98cdb6 |
GdkEventSetting setting;
|
|
Packit |
98cdb6 |
GdkEventGrabBroken grab_broken;
|
|
Packit |
98cdb6 |
};
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
GType gdk_event_get_type (void) G_GNUC_CONST;
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
gboolean gdk_events_pending (void);
|
|
Packit |
98cdb6 |
GdkEvent* gdk_event_get (void);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
GdkEvent* gdk_event_peek (void);
|
|
Packit |
98cdb6 |
#ifndef GDK_DISABLE_DEPRECATED
|
|
Packit |
98cdb6 |
GdkEvent* gdk_event_get_graphics_expose (GdkWindow *window);
|
|
Packit |
98cdb6 |
#endif
|
|
Packit |
98cdb6 |
void gdk_event_put (const GdkEvent *event);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
GdkEvent* gdk_event_new (GdkEventType type);
|
|
Packit |
98cdb6 |
GdkEvent* gdk_event_copy (const GdkEvent *event);
|
|
Packit |
98cdb6 |
void gdk_event_free (GdkEvent *event);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
guint32 gdk_event_get_time (const GdkEvent *event);
|
|
Packit |
98cdb6 |
gboolean gdk_event_get_state (const GdkEvent *event,
|
|
Packit |
98cdb6 |
GdkModifierType *state);
|
|
Packit |
98cdb6 |
gboolean gdk_event_get_coords (const GdkEvent *event,
|
|
Packit |
98cdb6 |
gdouble *x_win,
|
|
Packit |
98cdb6 |
gdouble *y_win);
|
|
Packit |
98cdb6 |
gboolean gdk_event_get_root_coords (const GdkEvent *event,
|
|
Packit |
98cdb6 |
gdouble *x_root,
|
|
Packit |
98cdb6 |
gdouble *y_root);
|
|
Packit |
98cdb6 |
gboolean gdk_event_get_axis (const GdkEvent *event,
|
|
Packit |
98cdb6 |
GdkAxisUse axis_use,
|
|
Packit |
98cdb6 |
gdouble *value);
|
|
Packit |
98cdb6 |
void gdk_event_request_motions (const GdkEventMotion *event);
|
|
Packit |
98cdb6 |
void gdk_event_handler_set (GdkEventFunc func,
|
|
Packit |
98cdb6 |
gpointer data,
|
|
Packit |
98cdb6 |
GDestroyNotify notify);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
void gdk_event_set_screen (GdkEvent *event,
|
|
Packit |
98cdb6 |
GdkScreen *screen);
|
|
Packit |
98cdb6 |
GdkScreen *gdk_event_get_screen (const GdkEvent *event);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
void gdk_set_show_events (gboolean show_events);
|
|
Packit |
98cdb6 |
gboolean gdk_get_show_events (void);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#ifndef GDK_MULTIHEAD_SAFE
|
|
Packit |
98cdb6 |
void gdk_add_client_message_filter (GdkAtom message_type,
|
|
Packit |
98cdb6 |
GdkFilterFunc func,
|
|
Packit |
98cdb6 |
gpointer data);
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
gboolean gdk_setting_get (const gchar *name,
|
|
Packit |
98cdb6 |
GValue *value);
|
|
Packit |
98cdb6 |
#endif /* GDK_MULTIHEAD_SAFE */
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
G_END_DECLS
|
|
Packit |
98cdb6 |
|
|
Packit |
98cdb6 |
#endif /* __GDK_EVENTS_H__ */
|