;; 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: gdk.lisp,v 1.6 2001/05/11 16:19:07 espen Exp $
+;; $Id: gdk.lisp,v 1.10 2004/10/31 11:51:08 espen Exp $
(in-package "GDK")
+;;; Initialization
+
+(defbinding (gdk-init "gdk_parse_args") () nil
+ "Initializes the library without opening the display."
+ (nil null)
+ (nil null))
-;;; Events
-(defbinding event-poll-fd () int)
+;;; Display
+
+(defbinding %display-manager-get () display-manager)
+
+(defbinding (display-set-default "gdk_display_manager_set_default_display")
+ (display) nil
+ ((%display-manager-get) display-manager)
+ (display display))
+
+(defbinding display-get-default () display)
+
+(defbinding %display-open () display
+ (display-name (or null string)))
+
+(defun display-open (&optional display-name)
+ (let ((display (%display-open display-name)))
+ (unless (display-get-default)
+ (display-set-default display))
+ display))
+
+(defbinding (display-connection-number "clg_gdk_connection_number")
+ (&optional (display (display-get-default))) int
+ (display display))
+
+
+;;; Events
(defbinding (events-pending-p "gdk_events_pending") () boolean)
(y int :out)
(mask modifier-type :out))
-(defbinding get-root-window () window)
+(defbinding %get-default-root-window () window)
+(defun get-root-window (&optional display)
+ (if display
+ (error "Not implemented")
+ (%get-default-root-window)))
;;
;;; Pixmaps
-#|
+
(defbinding pixmap-new (width height depth &key window) pixmap
(width int)
(height int)
window colormap color (namestring (truename source))))
((vector string)
(%pixmap-colormap-create-from-xpm-d window colormap color source)))
- (unreference-instance pixmap)
- (unreference-instance mask)
+;; (unreference-instance pixmap)
+;; (unreference-instance mask)
(values pixmap mask))))
-|#
+
;;; Color