X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=gdk%2Fgdk.objects.lisp;h=4238442dcfa757da07bde97740b2066cd7326064;hb=b359521e9075871a0deaf33b1437ff0f4dd42060;hp=79ebcb737069dc3229b23fb41152b5da034968a4;hpb=5c0fa3e497b9f797fd579c90d696ad15fbfb1c6b;p=cl-gtk2.git diff --git a/gdk/gdk.objects.lisp b/gdk/gdk.objects.lisp index 79ebcb7..4238442 100644 --- a/gdk/gdk.objects.lisp +++ b/gdk/gdk.objects.lisp @@ -693,6 +693,16 @@ do (setf (aref result i) (mem-aref ptr el-type i))) result))) +(defmethod translate-to-foreign (value (type fixed-array)) + (if (null value) + (null-pointer) + (foreign-alloc (fixed-array-element-type type) :count (length value) :initial-contents value))) + +(defmethod free-translated-object (value (type fixed-array) param) + (declare (ignore param)) + (unless (null-pointer-p value) + (foreign-free value))) + (define-g-boxed-cstruct rectangle "GdkRectangle" (x :int :initform 0) (y :int :initform 0) @@ -927,7 +937,7 @@ ((:cffi visual colormap-visual (g-object visual) "gdk_colormap_get_visual" nil) (:cffi screen colormap-screen (g-object screen) - "gdk_colormap_get_screeen" nil))) + "gdk_colormap_get_screen" nil))) (define-g-object-class "GdkScreen" screen (:type-initializer "gdk_screen_get_type") ((font-options screen-font-options "font-options" "gpointer" t t)