3 (defcfun gtk-init-check :boolean
5 (argv (:pointer (:pointer :string))))
8 (gtk-init-check (foreign-alloc :int :initial-element 0)
9 (foreign-alloc :string :initial-contents '("/usr/bin/sbcl")))
10 #+nil(with-foreign-objects ((argc :int)
11 (argv '(:pointer :string) 1))
12 (setf (mem-ref argc :int) 0
13 (mem-ref argv '(:pointer :string)) (foreign-alloc :string :count 1
14 :initial-element "/usr/bin/sbcl"))
16 (unless (gtk-init-check argc argv)
17 (error "Cannot initialize Gtk+"))
18 (foreign-free (mem-ref argv '(:pointer :string))))))
22 (defcfun gtk-test-register-all-types :void)
24 (gtk-test-register-all-types)
26 (defcfun gtk-events-pending :boolean)
28 (defcfun gtk-main :void)
31 (defun ensure-gtk-main ()
32 (unless (find "gtk main thread" (bt:all-threads) :test 'string= :key 'bt:thread-name)
33 (bt:make-thread (lambda () (gtk:gtk-main)) :name "gtk main thread")))
36 (defun ensure-gtk-main ()
39 (export 'ensure-gtk-main)
42 (defun leave-gtk-main ()) ;noop on multithreading
45 (defun leave-gtk-main ()
48 (export 'leave-gtk-main)
50 (defcfun gtk-main-level :uint)
52 (defcfun gtk-main-quit :void)
54 (defcfun gtk-grab-add :void
57 (defcfun gtk-grab-get-current g-object)
59 (defcfun gtk-grab-remove :void