1 /* GDK - The GIMP Drawing Kit 2 * Copyright (C) 2009 Carlos Garnacho <carlosg@gnome.org> 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef __GDK_DEVICE_TOOL_H__ 19 #define __GDK_DEVICE_TOOL_H__ 20 21 #if !defined (__GDK_H_INSIDE__) && !defined (GTK_COMPILATION) 22 #error "Only <gdk/gdk.h> can be included directly." 23 #endif 24 25 #include <gdk/gdkversionmacros.h> 26 #include <gdk/gdktypes.h> 27 28 29 G_BEGIN_DECLS 30 31 #define GDK_TYPE_DEVICE_TOOL (gdk_device_tool_get_type ()) 32 #define GDK_DEVICE_TOOL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_DEVICE_TOOL, GdkDeviceTool)) 33 #define GDK_IS_DEVICE_TOOL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_DEVICE_TOOL)) 34 35 typedef struct _GdkDeviceTool GdkDeviceTool; 36 37 /** 38 * GdkDeviceToolType: 39 * @GDK_DEVICE_TOOL_TYPE_UNKNOWN: Tool is of an unknown type. 40 * @GDK_DEVICE_TOOL_TYPE_PEN: Tool is a standard tablet stylus. 41 * @GDK_DEVICE_TOOL_TYPE_ERASER: Tool is standard tablet eraser. 42 * @GDK_DEVICE_TOOL_TYPE_BRUSH: Tool is a brush stylus. 43 * @GDK_DEVICE_TOOL_TYPE_PENCIL: Tool is a pencil stylus. 44 * @GDK_DEVICE_TOOL_TYPE_AIRBRUSH: Tool is an airbrush stylus. 45 * @GDK_DEVICE_TOOL_TYPE_MOUSE: Tool is a mouse. 46 * @GDK_DEVICE_TOOL_TYPE_LENS: Tool is a lens cursor. 47 * 48 * Indicates the specific type of tool being used being a tablet. Such as an 49 * airbrush, pencil, etc. 50 */ 51 typedef enum { 52 GDK_DEVICE_TOOL_TYPE_UNKNOWN, 53 GDK_DEVICE_TOOL_TYPE_PEN, 54 GDK_DEVICE_TOOL_TYPE_ERASER, 55 GDK_DEVICE_TOOL_TYPE_BRUSH, 56 GDK_DEVICE_TOOL_TYPE_PENCIL, 57 GDK_DEVICE_TOOL_TYPE_AIRBRUSH, 58 GDK_DEVICE_TOOL_TYPE_MOUSE, 59 GDK_DEVICE_TOOL_TYPE_LENS, 60 } GdkDeviceToolType; 61 62 GDK_AVAILABLE_IN_ALL 63 GType gdk_device_tool_get_type (void) G_GNUC_CONST; 64 65 GDK_AVAILABLE_IN_ALL 66 guint64 gdk_device_tool_get_serial (GdkDeviceTool *tool); 67 68 GDK_AVAILABLE_IN_ALL 69 guint64 gdk_device_tool_get_hardware_id (GdkDeviceTool *tool); 70 71 GDK_AVAILABLE_IN_ALL 72 GdkDeviceToolType gdk_device_tool_get_tool_type (GdkDeviceTool *tool); 73 74 GDK_AVAILABLE_IN_ALL 75 GdkAxisFlags gdk_device_tool_get_axes (GdkDeviceTool *tool); 76 77 G_END_DECLS 78 79 #endif /* __GDK_DEVICE_TOOL_H__ */ 80