+ (:metaclass boxed-class)
+ (:alien-name "GdkColor"))
+
+
+(deftype point () '(vector int 2))
+(deftype segment () '(vector int 4))
+(deftype trapezoid () '(vector double-float 6))
+
+
+
+;; Could this just as well have been a vector?
+(defclass rectangle (boxed)
+ ((x
+ :allocation :alien
+ :accessor rectangle-x
+ :initarg :x
+ :type int)
+ (y
+ :allocation :alien
+ :accessor rectangle-y
+ :initarg :y
+ :type int)
+ (width
+ :allocation :alien
+ :accessor rectangle-width
+ :initarg :width
+ :type int)
+ (height
+ :allocation :alien
+ :accessor rectangle-height
+ :initarg :height
+ :type int))
+ (:metaclass boxed-class)
+ (:alien-name "GdkRectangle"))
+
+
+(eval-when (:compile-toplevel :load-toplevel :execute)
+ (define-types-by-introspection "Gdk"
+ ("GdkFunction" :type gc-function)
+ ("GdkWMDecoration" :type wm-decoration)
+ ("GdkWMFunction" :type wm-function)
+ ("GdkGC" :type gc)
+ ("GdkGCX11" :type gc-x11)
+ ("GdkGCValuesMask" :type gc-values-mask)
+ ("GdkDrawableImplX11" :ignore t)
+ ("GdkWindowImplX11" :ignore t)
+ ("GdkPixmapImplX11" :ignore t)
+ ("GdkGCX11" :ignore t)
+ ("GdkColor" :ignore t)
+ ("GdkEvent" :ignore t)
+ ("GdkRectngle" :ignore t)
+ ("GdkFont" :ignore t) ; deprecated