X-Git-Url: https://git.distorted.org.uk/~mdw/clg/blobdiff_plain/56460319be51dd9ffc1005dca03a7b145ff4734b..43e8a182b5a4b41d3b5bb063cecb15d12ae3964b:/gdk/gdktypes.lisp diff --git a/gdk/gdktypes.lisp b/gdk/gdktypes.lisp index 3ffc850..58a5b3b 100644 --- a/gdk/gdktypes.lisp +++ b/gdk/gdktypes.lisp @@ -15,13 +15,21 @@ ;; License along with this library; if not, write to the Free Software ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -;; $Id: gdktypes.lisp,v 1.5 2001-11-12 22:29:17 espen Exp $ +;; $Id: gdktypes.lisp,v 1.10 2004-12-26 11:47:24 espen Exp $ (in-package "GDK") (eval-when (:compile-toplevel :load-toplevel :execute) - (init-types-in-library "libgdk-x11-1.3.so") - (init-types-in-library "libgdk_pixbuf-1.3.so")) + (init-types-in-library #.(concatenate 'string + (pkg-config:pkg-variable "gtk+-2.0" "libdir") + "/libgdk-x11-2.0.so") :prefix "gdk_") + (init-types-in-library #.(concatenate 'string + (pkg-config:pkg-variable "gtk+-2.0" "libdir") + "/libgdk-x11-2.0.so") :prefix "_gdk_") + (init-types-in-library #.(concatenate 'string + (pkg-config:pkg-variable "gtk+-2.0" "libdir") + "/libgdk_pixbuf-2.0.so") :prefix "gdk_")) + (defclass color (boxed) ((pixel @@ -33,7 +41,7 @@ :type unsigned-short) (green :allocation :alien - :accessor color-grenn + :accessor color-green :type unsigned-short) (blue :allocation :alien @@ -43,16 +51,130 @@ (: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))) + ("GdkEvent" :ignore t) + ("GdkRectngle" :ignore t) + ("GdkFont" :ignore t) ; deprecated + + ("GdkDrawable" + :slots + ((display + :allocation :virtual + :getter "gdk_drawable_get_display" + :reader drawable-display + :type display) + (screen + :allocation :virtual + :getter "gdk_drawable_get_screen" + :reader drawable-screen + :type screen) + (visual + :allocation :virtual + :getter "gdk_drawable_get_visual" + :reader drawable-visual + :type visual) + (colormap + :allocation :virtual + :getter "gdk_drawable_get_colormap" + :setter "gdk_drawable_set_colormap" + :unbound nil + :accessor drawable-colormap + :initarg :colormap + :type colormap) + (depth + :allocation :virtual + :getter "gdk_drawable_get_depth" + :reader drawable-depth + :type int) + (with + :allocation :virtual + :getter drawable-width) + (height + :allocation :virtual + :getter drawable-height))) + + ("GdkWindow" + :slots + ((state + :allocation :virtual + :getter "gdk_window_get_state" + :reader window-state + :type window-state) + (parent + :allocation :virtual + :getter "gdk_window_get_parent" + :reader window-parent + :type window) + (toplevel + :allocation :virtual + :getter "gdk_window_get_toplevel" + :reader window-toplevel + :type window) + (children + :allocation :virtual + :getter "gdk_window_get_children" + :reader window-children + :type (glist window)) + (events + :allocation :virtual + :getter "gdk_window_get_events" + :setter "gdk_window_set_events" + :accessor window-events + :type event-mask) + (group + :allocation :virtual + :getter "gdk_window_get_group" + :setter "gdk_window_set_group" + :unbound nil + :accessor window-group + :type window) + + )) +)) (deftype bitmap () 'pixmap) @@ -60,14 +182,76 @@ (defclass cursor (struct) ((type :allocation :alien - :accessor cursor-type - :initarg :type - :type cursor-type)) - (:metaclass proxy-class) - (:copy %cursor-copy) - (:free %cursor-free)) + :reader cursor-type + :type cursor-type) + (ref-count + :allocation :alien + :type unsigned-int) + (display + :allocation :virtual + :getter "gdk_cursor_get_display" + :reader cursor-display + :type display)) + (:metaclass struct-class)) (defclass device (struct) () - (:metaclass proxy-class)) + (:metaclass struct-class)) +(defclass geometry (struct) + ((min-width + :allocation :alien + :accessor geometry-min-width + :initarg :min-width + :type int) + (min-height + :allocation :alien + :accessor geometry-min-height + :initarg :min-height + :type int) + (max-width + :allocation :alien + :accessor geometry-max-width + :initarg :max-width + :type int) + (max-height + :allocation :alien + :accessor geometry-max-height + :initarg :max-height + :type int) + (base-width + :allocation :alien + :accessor geometry-base-width + :initarg :base-width + :type int) + (base-height + :allocation :alien + :accessor geometry-base-height + :initarg :base-height + :type int) + (width-inc + :allocation :alien + :accessor geometry-width-inc + :initarg :width-inc + :type int) + (height-inc + :allocation :alien + :accessor geometry-height-inc + :initarg :height-inc + :type int) + (min-aspect + :allocation :alien + :accessor geometry-min-aspect + :initarg :min-aspect + :type double-float) + (max-aspect + :allocation :alien + :accessor geometry-max-aspect + :initarg :max-aspect + :type double-float) + (gravity + :allocation :alien + :accessor geometry-gravity + :initarg :gravity + :type gravity)) + (:metaclass struct-class))