[mcclim-cvs] CVS mcclim/Looks

tmoore tmoore at common-lisp.net
Wed Mar 29 10:43:52 UTC 2006


Update of /project/mcclim/cvsroot/mcclim/Looks
In directory clnet:/tmp/cvs-serv13084/Looks

Modified Files:
	pixie.lisp 
Log Message:


Take out dependencies on case in symbol names. This makes McCLIM sort
of work in ACL's so-called modern mode; there have been some CLX fixes
recently that may get it all the way there.

Clean up events.lisp.

Add a callback-event, which will be used in ports that get high-level
gadget notifications in the event process and need to deliver them to
applications.

Changed the implementation of scroll bars. When the drag callback is
called, just move the sheet; assume that the gadget itself has updated
the value and the graphic representation. add a scroll-bar-values
interface that gets and sets all scroll bar values and only updates
the bar once. This will break the Beagle back end momentarily.




--- /project/mcclim/cvsroot/mcclim/Looks/pixie.lisp	2003/10/08 17:00:56	1.15
+++ /project/mcclim/cvsroot/mcclim/Looks/pixie.lisp	2006/03/29 10:43:50	1.16
@@ -1,4 +1,4 @@
-(in-package :CLIM-INTERNALS)
+(in-package :clim-internals)
 
 ;;;
 ;
@@ -341,6 +341,7 @@
 
 ; We derive from the slider, since the slider is the same, only
 ; less so.
+;;; XXX Probably should derive from scroll-bar too.
 
 (defconstant +pixie-scroll-bar-pane-thumb-size+  5000.0)
 (defconstant +pixie-scroll-bar-thumb-half-height+ 17)
@@ -476,6 +477,14 @@
                   (yb (translate-range-value (+ v ts) minv (+ maxv ts) y1 y2)))
               (make-rectangle* x1 (- ya 1) x2 (+ yb 1)))))))))
 
+(defmethod* (setf scroll-bar-values)
+  (min-value max-value thumb-size value (scroll-bar pixie-scroll-bar-pane))
+  (setf (slot-value scroll-bar 'min-value) min-value
+	(slot-value scroll-bar 'max-value) max-value
+	(slot-value scroll-bar 'thumb-size) thumb-size
+	(slot-value scroll-bar 'value) value)
+  (dispatch-repaint scroll-bar (sheet-region scroll-bar)))
+
 (defmethod handle-event ((pane pixie-scroll-bar-pane) (event pointer-button-release-event))
   (with-slots (armed dragging repeating was-repeating) pane
     (setf was-repeating repeating)




More information about the Mcclim-cvs mailing list