- changed error signalling from raising an error to returning #f in

some functions.
This commit is contained in:
frese 2002-04-26 08:24:00 +00:00
parent 093edeb064
commit a0ac2ea56b
1 changed files with 18 additions and 16 deletions
scheme/xlib

View File

@ -109,7 +109,8 @@
"scx_Set_Text_Property")
;; get-wm-protocols function returns the list of atoms stored in the
;; WM_PROTOCOLS property on the specified window. These atoms describe
;; WM_PROTOCOLS property on the specified window, or #f if this
;; property does not exist or has a bas format. These atoms describe
;; window manager protocols in which the owner of this window is
;; willing to participate. See XGetWMProtocols.
@ -119,7 +120,7 @@
(if res
(map make-atom
(vector->list res))
(error "cannot get WM protocols"))))
#f)))
(import-lambda-definition %wm-protocols (Xdisplay Xwindow)
"scx_Wm_Protocols")
@ -133,20 +134,17 @@
(list->vector (map atom-Xatom protocols)))))
(if res
res
(error "cannot set WM protocols" protocols))))
(error "cannot set WM protocols" window protocols))))
(import-lambda-definition %set-wm-protocols! (Xdisplay Xwindow protocols)
"scx_Set_Wm_Protocols")
;; get-wm-class returns the class hint for the specified window. See
;; XGetClassHint.
;; get-wm-class returns the class hint for the specified window or #f
;; if it does not exists or has a bad format. See XGetClassHint.
(define (get-wm-class window)
(let ((res (%wm-class (display-Xdisplay (window-display window))
(window-Xwindow window))))
(if res
res
(error "cannot get WM class hint"))))
(%wm-class (display-Xdisplay (window-display window))
(window-Xwindow window)))
(import-lambda-definition %wm-class (Xdisplay Xwindow)
"scx_Wm_Class")
@ -245,8 +243,9 @@
(define (get-wm-hints window)
(let ((res (%wm-hints (display-Xdisplay (window-display window))
(window-Xwindow window))))
(filter (lambda (x) (not (null? (cdr x))))
((integer+vector->wm-hint-alist (window-display window)) res))))
(if res
((integer+vector->wm-hint-alist (window-display window)) res)
#f)))
(import-lambda-definition %wm-hints (Xdisplay Xwindow)
"scx_Wm_Hints")
@ -268,10 +267,13 @@
;; XGetTransientForHint.
(define (get-transient-for window)
(make-window (%transient-for (display-Xdisplay (window-display window))
(window-Xwindow window))
(window-display window)
#f))
(let ((Xwindow (%transient-for (display-Xdisplay (window-display window))
(window-Xwindow window))))
(if (= 0 Xwindow)
#f
(make-window Xwindow
(window-display window)
#f))))
(import-lambda-definition %transient-for (Xdisplay Xwindow)
"scx_Transient_For")