[cells-gtk-cvs] CVS update: root/gtk-ffi/gtk-button.lisp root/gtk-ffi/gtk-core.lisp root/gtk-ffi/gtk-list-tree.lisp root/gtk-ffi/gtk-menu.lisp root/gtk-ffi/gtk-other.lisp root/gtk-ffi/gtk-tool.lisp root/gtk-ffi/gtk-ffi.asd root/gtk-ffi/gtk-ffi.lisp root/gtk-ffi/gtk-ffi.lpr root/gtk-ffi/gtk-utilities.lisp root/gtk-ffi/gtk-lib-gtk.lisp

Kenny Tilton ktilton at common-lisp.net
Mon Dec 6 20:03:09 UTC 2004


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)






More information about the Cells-gtk-cvs mailing list