[graphic-forms-cvs] r451 - trunk/src/uitoolkit/widgets
junrue at common-lisp.net
junrue at common-lisp.net
Fri Mar 30 03:26:46 UTC 2007
Author: junrue
Date: Thu Mar 29 22:26:46 2007
New Revision: 451
Modified:
trunk/src/uitoolkit/widgets/event.lisp
Log:
when processing WM_CTLCOLOR* messages, call the default wndproc rather than returning 0
Modified: trunk/src/uitoolkit/widgets/event.lisp
==============================================================================
--- trunk/src/uitoolkit/widgets/event.lisp (original)
+++ trunk/src/uitoolkit/widgets/event.lisp Thu Mar 29 22:26:46 2007
@@ -145,18 +145,17 @@
0))))
(defun process-ctlcolor-message (wparam lparam)
- (let* ((widget (get-widget (thread-context) (cffi:make-pointer (logand #xFFFFFFFF lparam))))
- (hdc (cffi:make-pointer wparam))
- (bkgdcolor (brush-color-of widget))
- (textcolor (text-color-of widget))
- (ret-val 0))
- (when widget
+ (let ((widget (get-widget (thread-context) (cffi:make-pointer (logand #xFFFFFFFF lparam))))
+ (hdc (cffi:make-pointer wparam)))
+ (if widget
+ (let ((bkgdcolor (brush-color-of widget))
+ (textcolor (text-color-of widget)))
(if bkgdcolor
(gfs::set-bk-color hdc (gfg:color->rgb bkgdcolor)))
(if textcolor
(gfs::set-text-color hdc (gfg:color->rgb textcolor)))
- (setf ret-val (cffi:pointer-address (brush-handle-of widget))))
- ret-val))
+ (cffi:pointer-address (brush-handle-of widget)))
+ 0)))
(defun dispatch-scroll-notification (widget axis wparam-lo)
(let ((disp (dispatcher widget))
@@ -425,20 +424,28 @@
0)
(defmethod process-message (hwnd (msg (eql gfs::+wm-ctlcolorbtn+)) wparam lparam)
- (declare (ignore hwnd))
- (process-ctlcolor-message wparam lparam))
+ (let ((retval (process-ctlcolor-message wparam lparam)))
+ (if (zerop retval)
+ (gfs::def-window-proc hwnd msg wparam lparam)
+ retval)))
(defmethod process-message (hwnd (msg (eql gfs::+wm-ctlcoloredit+)) wparam lparam)
- (declare (ignore hwnd))
- (process-ctlcolor-message wparam lparam))
+ (let ((retval (process-ctlcolor-message wparam lparam)))
+ (if (zerop retval)
+ (gfs::def-window-proc hwnd msg wparam lparam)
+ retval)))
(defmethod process-message (hwnd (msg (eql gfs::+wm-ctlcolorlistbox+)) wparam lparam)
- (declare (ignore hwnd))
- (process-ctlcolor-message wparam lparam))
+ (let ((retval (process-ctlcolor-message wparam lparam)))
+ (if (zerop retval)
+ (gfs::def-window-proc hwnd msg wparam lparam)
+ retval)))
(defmethod process-message (hwnd (msg (eql gfs::+wm-ctlcolorstatic+)) wparam lparam)
- (declare (ignore hwnd))
- (process-ctlcolor-message wparam lparam))
+ (let ((retval (process-ctlcolor-message wparam lparam)))
+ (if (zerop retval)
+ (gfs::def-window-proc hwnd msg wparam lparam)
+ retval)))
(defmethod process-message (hwnd (msg (eql gfs::+wm-setcursor+)) wparam lparam)
(let* ((widget (get-widget (thread-context) hwnd))
More information about the Graphic-forms-cvs
mailing list