1 #ifndef __GDK_INPUT_H__
2 #define __GDK_INPUT_H__
4 #include <gdk/gdktypes.h>
8 #endif /* __cplusplus */
10 typedef struct _GdkDeviceKey GdkDeviceKey;
11 typedef struct _GdkDeviceAxis GdkDeviceAxis;
12 typedef struct _GdkDevice GdkDevice;
13 typedef struct _GdkTimeCoord GdkTimeCoord;
17 GDK_EXTENSION_EVENTS_NONE,
18 GDK_EXTENSION_EVENTS_ALL,
19 GDK_EXTENSION_EVENTS_CURSOR
52 GdkModifierType modifiers;
64 /* All fields are read-only */
67 GdkInputSource source;
69 gboolean has_cursor; /* TRUE if the X pointer follows device motion */
78 /* We don't allocate each coordinate this big, but we use it to
79 * be ANSI compliant and avoid accessing past the defined limits.
81 #define GDK_MAX_TIMECOORD_AXES 128
86 gdouble axes[GDK_MAX_TIMECOORD_AXES];
89 /* Returns a list of GdkDevice * */
90 GList * gdk_devices_list (void);
92 /* Functions to configure a device */
93 void gdk_device_set_source (GdkDevice *device,
94 GdkInputSource source);
96 gboolean gdk_device_set_mode (GdkDevice *device,
99 void gdk_device_set_key (GdkDevice *device,
102 GdkModifierType modifiers);
104 void gdk_device_set_axis_use (GdkDevice *device,
107 void gdk_device_get_state (GdkDevice *device,
110 GdkModifierType *mask);
111 gboolean gdk_device_get_history (GdkDevice *device,
115 GdkTimeCoord ***events,
117 void gdk_device_free_history (GdkTimeCoord **events,
119 gboolean gdk_device_get_axis (GdkDevice *device,
124 void gdk_input_set_extension_events (GdkWindow *window,
126 GdkExtensionMode mode);
128 GDKVAR GdkDevice *gdk_core_pointer;
132 #endif /* __cplusplus */
134 #endif /* __GDK_INPUT_H__ */