[cells-cvs] CVS gears
ktilton
ktilton at common-lisp.net
Tue May 16 02:53:12 UTC 2006
Update of /project/cells/cvsroot/gears
In directory clnet:/tmp/cvs-serv27612
Modified Files:
gears.lisp
Log Message:
Celtk2 alpha release
--- /project/cells/cvsroot/gears/gears.lisp 2006/05/12 08:33:46 1.1
+++ /project/cells/cvsroot/gears/gears.lisp 2006/05/16 02:53:12 1.2
@@ -47,33 +47,29 @@
:timer-interval (c? (let ((n$ (md-value (fm-other :vtime))))
(format nil "~a" (max 1 (or (parse-integer n$ :junk-allowed t) 0)))))
:double 1 ;; "yes"
- :bindings (c? (list
- (list '(ctk::|<1>| "%X %Y")
- (lambda (self event root-x root-y)
- (declare (ignorable self event root-x root-y))
- (RotStart self root-x root-y)
- 0))
- (list '(ctk::|<B1-Motion>| "%X %Y")
- (lambda (self event root-x root-y)
- (declare (ignore event))
- (RotMove self root-x root-y)
- 0))))))))))
+ :event-handler (c? (lambda (self xe)
+ (case (tk-event-type (xsv type xe))
+ (:virtualevent
+ (trc "canvas virtual" (xsv name xe)))
+ (:buttonpress
+ (RotStart self (xsv x-root xe) (xsv y-root xe)))
+ (:motionnotify
+ (RotMove self (xsv x-root xe) (xsv y-root xe)))
+ (:buttonrelease
+ (setf *startx* nil)))))))))))
(defun RotStart (self x y)
- ;(trc "Rotstart!!!" self x y)
(setf *startx* x)
(setf *starty* y)
(setf *xangle0* (rotx self))
(setf *yangle0* (roty self)))
(defun RotMove (self x y)
- ;(trc "RotMove!!!!" self x y)
- (setf *xangle* (+ *xangle0* (- x *startx*)))
- (setf *yangle* (+ *yangle0* (- y *starty*)))
- (setf (rotx self) *xangle*)
- (assert (eql *xangle* (rotx self)))
- (setf (roty self) *yangle*)
- (trc nil "RotMove x y" *xangle* *yangle*))
+ (when *startx*
+ (setf *xangle* (+ *xangle0* (- x *startx*)))
+ (setf *yangle* (+ *yangle0* (- y *starty*)))
+ (setf (rotx self) *xangle*)
+ (setf (roty self) *yangle*)))
(defconstant +pif+ (coerce pi 'single-float))
@@ -138,6 +134,7 @@
(gl:load-identity)
(gl:translate 0 0 -30))))
+
(defmethod togl-display-using-class ((self gears) &aux (scale (scale (upper self gears-demo))))
(declare (ignorable scale))
More information about the Cells-cvs
mailing list