Use new GType designators
[cl-gtk2.git] / gtk / gtk.widget.lisp
index 6532f11..bc4b75c 100644 (file)
@@ -3,13 +3,13 @@
 ; TODO: GtkWidget
 
 (define-g-boxed-cstruct selection-data "GtkSelectionData"
-  (selection :pointer) ; GdkAtom
-  (target :pointer) ; GdkAtom
-  (type :pointer) ; GdkAtom
-  (format :int)
-  (data :pointer :initform 0)
-  (length :int)
-  (display g-object))
+  (selection gdk-atom-as-string :initform nil)
+  (target gdk-atom-as-string :initform nil)
+  (type gdk-atom-as-string :initform nil)
+  (format :int :initform 0)
+  (data :pointer :initform (null-pointer))
+  (length :int :initform 0)
+  (display (g-object display) :initform nil))
 
 (export (boxed-related-symbols 'selection-data))
 
@@ -26,8 +26,8 @@
 (defcstruct %gtk-widget
   (:object %gtk-object)
   (:private-flags :uint16)
-  (:state state-type)
-  (:saved-state state-type)
+  (:state :uint8)
+  (:saved-state :uint8)
   (:name (:pointer :char))
   (:style :pointer)
   (:requisition requisition-cstruct)
   (:parent :pointer))
 
 (defun widget-state (widget)
-  (foreign-slot-value (pointer widget) '%gtk-widget :state))
+  (convert-from-foreign (foreign-slot-value (pointer widget) '%gtk-widget :state) 'state-type))
 
 (export 'widget-state)
 
 (defun widget-saved-state (widget)
-  (foreign-slot-value (pointer widget) '%gtk-widget :saved-state))
+  (convert-from-foreign (foreign-slot-value (pointer widget) '%gtk-widget :saved-state) 'state-type))
 
 (export 'widget-saved-state)
 
   (n-properties (:pointer :int)))
 
 (defun widget-get-style-properties (type)
-  (setf type (ensure-g-type type))
+  (setf type (gtype type))
   (let ((class (g-type-class-ref type)))
     (unwind-protect
          (with-foreign-object (np :int)
 
 (defun widget-style-property-value (widget property-name &optional property-type)
   (unless property-type (setf property-type (widget-style-property-type widget property-name)))
-  (setf property-type (ensure-g-type property-type))
+  (setf property-type (gtype property-type))
   (with-foreign-object (gvalue 'g-value)
     (g-value-zero gvalue)
     (g-value-init gvalue property-type)