Update of /project/gsharp/cvsroot/gsharp In directory clnet:/tmp/cvs-serv4923
Modified Files: gui.lisp Log Message: Scrolling.
* change space requirements after drawing to a score pane * intercept window-clear on score panes, so as not to reset sheet transformations, viewport positions, and so on, but just to clear the output record and draw in background ink.
--- /project/gsharp/cvsroot/gsharp/gui.lisp 2006/03/02 09:29:44 1.59 +++ /project/gsharp/cvsroot/gsharp/gui.lisp 2006/05/14 07:51:27 1.60 @@ -167,7 +167,18 @@ (score-pane:with-score-pane pane (draw-buffer pane buffer (current-cursor) (left-margin buffer) 100) - (gsharp-drawing::draw-the-cursor pane (current-cursor) (cursor-element (current-cursor)) (last-note (input-state *application-frame*)))))) + (gsharp-drawing::draw-the-cursor pane (current-cursor) (cursor-element (current-cursor)) (last-note (input-state *application-frame*))) + (multiple-value-bind (minx miny maxx maxy) + (bounding-rectangle* pane) + (declare (ignore minx maxx)) + (change-space-requirements pane :height (- maxy miny)))))) + +(defmethod window-clear ((pane score-pane:score-pane)) + (let ((output-history (stream-output-history pane))) + (with-bounding-rectangle* (left top right bottom) output-history + (medium-clear-area (sheet-medium pane) left top right bottom)) + (clear-output-record output-history)) + (window-erase-viewport pane))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;