(:wheel 6)
(:last 7))
+(define-g-enum "GdkDragProtocol"
+ gdk-drag-protocol
+ (:export t :type-initializer "gdk_drag_protocol_get_type")
+ (:motif 0)
+ (:xdnd 1)
+ (:rootwin 2)
+ (:none 3)
+ (:win32-dropfiles 4)
+ (:ole2 5)
+ (:local 6))
+
+(define-g-flags "GdkDragAction"
+ gdk-drag-action
+ (:export t :type-initializer "gdk_drag_action_get_type")
+ (:default 1)
+ (:copy 2)
+ (:move 4)
+ (:link 8)
+ (:private 16)
+ (:ask 32))
+
+(define-g-enum "GdkInputSource"
+ gdk-input-source
+ (:export t :type-initializer "gdk_input_source_get_type")
+ (:mouse 0)
+ (:pen 1)
+ (:eraser 2)
+ (:cursor 3))
+
+(define-g-enum "GdkInputMode"
+ gdk-input-mode
+ (:export t :type-initializer "gdk_input_mode_get_type")
+ (:disabled 0)
+ (:screen 1)
+ (:window 2))
+
+(define-g-enum "GdkExtensionMode"
+ gdk-extension-mode
+ (:export t :type-initializer "gdk_extension_mode_get_type")
+ (:none 0)
+ (:all 1)
+ (:cursor 2))
+
(export 'cursor-type)
(define-g-boxed-cstruct geometry nil
;;;FIXME: Check correct type
+#+ windows
+(defctype native-window :pointer)
+#- windows
(defctype native-window :uint32)
(define-foreign-type fixed-array ()
:drag-status
:drop-start
:drop-finished) event-dnd
- (drag-context :pointer)
+ (drag-context (g-object drag-context))
(time :uint32)
(x-root :short)
(y-root :short))
(export (boxed-related-symbols 'event))
-(define-g-object-class "GdkDragContext" drag-context () ())
+(define-g-object-class "GdkDragContext" drag-context ()
+ ((:cffi protocol drag-context-protocol gdk-drag-protocol
+ %gdk-drag-context-get-protocol nil)
+ (:cffi is-source drag-context-is-source :boolean
+ %gdk-drag-context-get-is-source nil)
+ (:cffi source-window drag-context-source-window (g-object gdk-window)
+ %gdk-drag-context-get-source-window nil)
+ (:cffi dest-window drag-context-dest-window (g-object gdk-window)
+ %gdk-drag-context-get-dest-window nil)
+ (:cffi targets drag-context-targets (glib:glist gdk-atom-as-string :free-from-foreign nil)
+ %gdk-drag-context-get-targets nil)
+ (:cffi actions drag-context-actions gdk-drag-action
+ %gdk-drag-context-get-actions nil)
+ (:cffi suggested-action drag-context-suggested-action gdk-drag-action
+ %gdk-drag-context-get-suggested-action nil)
+ (:cffi action drag-context-action gdk-drag-action
+ %gdk-drag-context-get-action nil)
+ (:cffi start-time drag-context-start-time :uint32
+ %gdk-drag-context-get-start-time nil)))
(define-g-object-class "GdkPixbuf" pixbuf ()
((colorspace pixbuf-colorspace "colorspace" "GdkColorspace" t nil)
(define-g-object-class "GdkPixmap" pixmap (:superclass drawable) ())
-(define-g-object-class "GdkKeymap" keymap () ())
+(define-g-object-class "GdkKeymap" keymap
+ (:superclass g-object :export t :interfaces
+ nil :type-initializer "gdk_keymap_get_type")
+ ((:cffi direction keymap-direction pango:pango-direction
+ "gdk_keymap_get_direction" nil)
+ (:cffi has-bidi-layouts keymap-has-bidi-layouts :boolean
+ "gdk_keymap_have_bidi_layouts" nil)
+ (:cffi caps-lock-state keymap-caps-lock-state :boolean
+ "gdk_keymap_get_caps_lock_state" nil)))
+
+(define-g-boxed-cstruct keymap-key nil
+ (keycode :uint :initform 0)
+ (group :int :initform 0)
+ (level :int :initform 0))
(define-g-boxed-cstruct gdk-window-attr nil
(title (:string :free-from-foreign nil) :initform nil)
(export (boxed-related-symbols 'gdk-window-attr))
+(define-g-object-class "GdkDevice" gdk-device
+ (:superclass g-object :export t :interfaces
+ nil :type-initializer
+ "gdk_device_get_type")
+ ((:cffi name gdk-device-name :string
+ %gdk-device-name nil)
+ (:cffi source gdk-device-source gdk-input-source
+ %gdk-device-source "gdk_device_set_source")
+ (:cffi mode gdk-device-mode gdk-input-mode
+ %gdk-device-mode gdk_device_set_mode)
+ (:cffi has-cursor gdk-device-has-cursor :boolean
+ %gdk-device-has-cursor nil)
+ (:cffi n-axes gdk-device-n-axes :int
+ %gdk-device-n-axes nil)
+ (:cffi axes gdk-device-axes nil
+ %gdk-device-axes nil)
+ (:cffi keys gdk-device-keys nil
+ %gdk-device-keys nil)
+ (:cffi n-keys gdk-device-n-keys nil
+ %gdk-device-n-keys nil)))
+