chiark / gitweb /
Stock item bindings updated to Gtk+ 2.8
[clg] / gtk / gtktypes.lisp
index 28834f6ccc8f2a94460f21fa57e4414ae0bd38d7..b7b6fb79b66f3f9e13f2a96671c3e77099bd19a6 100644 (file)
@@ -20,7 +20,7 @@
 ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
-;; $Id: gtktypes.lisp,v 1.40 2006/02/04 12:18:12 espen Exp $
+;; $Id: gtktypes.lisp,v 1.44 2006/02/26 15:30:01 espen Exp $
 
 (in-package "GTK")
 
@@ -136,8 +136,16 @@ (register-type 'tree-path '|gtk_tree_path_get_type|)
 (deftype position () 
   '(or int (enum (:start 0) (:end -1) (:first 0) (:last -1))))
 
-(defmethod reader-function ((type (eql 'position)) &rest args)
-  (declare (ignore type args))
+(define-type-method from-alien-form ((type position) form)
+  (declare (ignore type))
+  (from-alien-form 'int form))
+
+(define-type-method from-alien-function ((type position))
+  (declare (ignore type))
+  (from-alien-function 'int))
+
+(define-type-method reader-function ((type position))
+  (declare (ignore type))
   (reader-function 'int))
 
 
@@ -155,7 +163,7 @@ (define-types-by-introspection "Gtk"
   ("GtkWidget"
    :slots
    ((child-properties
-     :allocation :special
+     :special t
      :accessor widget-child-properties
      :type container-child)
     (window
@@ -307,7 +315,7 @@     (default-widget
      :type boolean)
     (icon-list
      :allocation :virtual
-     :getter "gtk_window_get_icon_list"
+     :getter %window-get-icon-list
      :setter "gtk_window_set_icon_list"
      :accessor window-icon-list
      :initarg :icon-list
@@ -1183,7 +1191,6 @@ (define-enum-type drop-position
   :no-drop :drop-into :drop-left :drop-right :drop-above :drop-below)
 
 
-
 (defclass target-entry (struct)
   ((target
     :allocation :alien
@@ -1202,4 +1209,32 @@ (defclass target-entry (struct)
     :type unsigned-int))
   (:metaclass struct-class))
 
-(deftype target-list () 'pointer)
+
+(defclass selection-data (boxed)
+  ((selection
+    :allocation :alien :type gdk:atom
+    :reader selection-data-selection)
+   (target
+    :allocation :alien :type gdk:atom
+    :reader selection-data-target)
+   (type
+    :allocation :alien :type gdk:atom
+    :reader selection-data-type)
+   (format 
+    :allocation :alien :type int
+    :reader selection-data-format)
+   (data
+    :allocation :alien :type pointer
+    :reader selection-data-data)
+   (length 
+    :allocation :alien :type int
+    :reader selection-data-length)
+   (display 
+    :allocation :alien :type gdk:display
+    :reader selection-data-display))
+  (:metaclass boxed-class))
+
+
+(defclass target-list (proxy)
+  ()
+  (:metaclass proxy-class))