Update of /project/cells-gtk/cvsroot/root/gtk-ffi In directory common-lisp.net:/tmp/cvs-serv25707/gtk-ffi
Modified Files: gtk-ffi.asd gtk-ffi.lisp gtk-ffi.lpr gtk-utilities.lisp Added Files: gtk-button.lisp gtk-core.lisp gtk-list-tree.lisp gtk-menu.lisp gtk-other.lisp gtk-tool.lisp Removed Files: gtk-lib-gtk.lisp Log Message: Ongoing port to Lispworks Date: Mon Dec 6 21:03:00 2004 Author: ktilton
Index: root/gtk-ffi/gtk-ffi.asd diff -u root/gtk-ffi/gtk-ffi.asd:1.3 root/gtk-ffi/gtk-ffi.asd:1.4 --- root/gtk-ffi/gtk-ffi.asd:1.3 Sun Dec 5 07:31:14 2004 +++ root/gtk-ffi/gtk-ffi.asd Mon Dec 6 21:03:00 2004 @@ -3,6 +3,10 @@ :depends-on (:cells :uffi :ffi-extender) :components ((:file "gtk-ffi") - (:file "gtk-definitions" :depends-on ("gtk-ffi")) - (:file "gtk-lib-gtk" :depends-on ("gtk-ffi")) - (:file "gtk-utilities" :depends-on ("gtk-definitions" "gtk-lib-gtk")))) \ No newline at end of file + (:file "gtk-core" :depends-on ("gtk-ffi")) + (:file "gtk-other" :depends-on ("gtk-ffi")) + (:file "gtk-button" :depends-on ("gtk-ffi")) + (:file "gtk-tool" :depends-on ("gtk-ffi")) + (:file "gtk-menu" :depends-on ("gtk-ffi")) + (:file "gtk-list-tree" :depends-on ("gtk-ffi")) + (:file "gtk-utilities" :depends-on ("gtk-core" "gtk-other")))) \ No newline at end of file
Index: root/gtk-ffi/gtk-ffi.lisp diff -u root/gtk-ffi/gtk-ffi.lisp:1.3 root/gtk-ffi/gtk-ffi.lisp:1.4 --- root/gtk-ffi/gtk-ffi.lisp:1.3 Sun Dec 5 07:31:14 2004 +++ root/gtk-ffi/gtk-ffi.lisp Mon Dec 6 21:03:00 2004 @@ -23,6 +23,7 @@ (in-package :gtk-ffi)
(defconstant c-null #+clisp nil #-clisp (make-null-pointer '(* void))) +(defconstant c-null-int #+clisp nil #-clisp (make-null-pointer :int))
(defvar *gtk-debug* nil)
@@ -45,7 +46,7 @@ new-value))
(eval-when (:compile-toplevel :load-toplevel :execute) - (export '(c-null int-slot-indexed)) + (export '(c-null c-null-int int-slot-indexed)) (defun gtk-function-name (lisp-name) (substitute #_ #- lisp-name))
@@ -77,7 +78,7 @@ (c-ptr-null '*) (c-array-ptr '*) (c-ptr '*) - (c-string :pointer-void) + (c-string :cstring) (sint32 :int) (uint32 :unsigned-int) (uint8 :unsigned-byte) @@ -148,7 +149,7 @@ (if (eql return-type 'boolean) `(not (zerop ,bodyform)) bodyform)) - #+shhhh (print (list ,(symbol-name name) :after + (print (list ,(symbol-name name) :after ,@(mapcar 'car arguments))))) (eval-when (compile load eval) (export ',name))))))
Index: root/gtk-ffi/gtk-ffi.lpr diff -u root/gtk-ffi/gtk-ffi.lpr:1.1 root/gtk-ffi/gtk-ffi.lpr:1.2 --- root/gtk-ffi/gtk-ffi.lpr:1.1 Sun Dec 5 06:11:38 2004 +++ root/gtk-ffi/gtk-ffi.lpr Mon Dec 6 21:03:00 2004 @@ -8,6 +8,7 @@ :application-type (intern "Standard EXE" (find-package :keyword)) :modules (list (make-instance 'module :name "gtk-ffi.lisp") (make-instance 'module :name "gtk-definitions.lisp") + (make-instance 'module :name "gtk-lib-gtk.lisp") (make-instance 'module :name "gtk-utilities.lisp")) :projects (list (make-instance 'project-module :name "c:\000000\uffi\uffi")
Index: root/gtk-ffi/gtk-utilities.lisp diff -u root/gtk-ffi/gtk-utilities.lisp:1.1 root/gtk-ffi/gtk-utilities.lisp:1.2 --- root/gtk-ffi/gtk-utilities.lisp:1.1 Sun Dec 5 06:11:38 2004 +++ root/gtk-ffi/gtk-utilities.lisp Mon Dec 6 21:03:00 2004 @@ -16,9 +16,10 @@
|#
+ (in-package :gtk-ffi)
-(defun gtk-signal-connect (widget signal fun &key (after t) data (destroy-data 0)) +(defun gtk-signal-connect (widget signal fun &key (after t) data destroy-data) (g-signal-connect-data widget signal fun data destroy-data after))
(defun g-signal-connect-data (self detailed-signal c-handler data destroy-data after) @@ -27,14 +28,16 @@ (g_signal_connect_data self c-detailed-signal - (or c-handler c-null) + (if c-handler + (uffi:make-pointer c-handler '(* :void)) + c-null) p4 (or destroy-data c-null) (if after 1 0)))))
(uffi:def-function ("g_signal_connect_data" g_signal_connect_data) - ((instance (* :void)) (detailed-signal (* :void)) - (c-handler :long) (data (* :void))(destroy-data (* :void)) (after :int)) + ((instance (* :void)) (detailed-signal :cstring) + (c-handler (* :void)) (data (* :void))(destroy-data (* :void)) (after :int)) :returning :unsigned-long :call-direct nil)
(defun gtk-signal-connect-swap (widget signal fun &key (after t) data destroy-data)