[closure-cvs] CVS closure/src/gui
emarsden
emarsden at common-lisp.net
Sat Dec 30 15:07:31 UTC 2006
Update of /project/closure/cvsroot/closure/src/gui
In directory clnet:/tmp/cvs-serv12658/src/gui
Modified Files:
clim-gui.lisp
Log Message:
Minor improvements to user interface:
- enable double buffering
- wait until page has been downloaded before erasing previous page
- enable busy cursor while downloading and rendering
--- /project/closure/cvsroot/closure/src/gui/clim-gui.lisp 2006/12/29 17:37:07 1.23
+++ /project/closure/cvsroot/closure/src/gui/clim-gui.lisp 2006/12/30 15:07:31 1.24
@@ -4,7 +4,7 @@
;;; Created: 2002-07-22
;;; Author: Gilbert Baumann <gilbert at base-engineering.com>
;;; License: MIT style (see below)
-;;; $Id: clim-gui.lisp,v 1.23 2006/12/29 17:37:07 dlichteblau Exp $
+;;; $Id: clim-gui.lisp,v 1.24 2006/12/30 15:07:31 emarsden Exp $
;;; ---------------------------------------------------------------------------
;;; (c) copyright 2002 by Gilbert Baumann
@@ -28,6 +28,12 @@
;;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
;; $Log: clim-gui.lisp,v $
+;; Revision 1.24 2006/12/30 15:07:31 emarsden
+;; Minor improvements to user interface:
+;; - enable double buffering
+;; - wait until page has been downloaded before erasing previous page
+;; - enable busy cursor while downloading and rendering
+;;
;; Revision 1.23 2006/12/29 17:37:07 dlichteblau
;; Make closure start on Gtkairo:
;;
@@ -162,6 +168,8 @@
:min-height 100
:max-width 300
:max-height 20000
+ :incremental-redisplay t
+ :double-buffering t
:display-function 'aux-display
:display-time :command-loop)
(status :pointer-documentation
@@ -192,7 +200,7 @@
(default
(vertically ()
(spacing (:thickness 5)
- (scrolling (:width 830 :height 600 :min-height 600 :max-height 20000
+ (scrolling (:width 830 :height 600 :min-height 400 :max-height 20000
:scroll-bar :vertical)
canvas))
(spacing (:thickness 5)
@@ -531,9 +539,9 @@
(let* ((*package* (find-package :r2))
(*pane* (find-pane-named *frame* 'canvas))
(*medium* (sheet-medium *pane*)))
- (window-clear *pane*)
(progn ;; with-sheet-medium (*medium* *pane*)
(let ((device (make-instance 'closure/clim-device::clim-device :medium *pane*)))
+ (setf (sheet-pointer-cursor *pane*) :busy)
(setq url (r2::parse-url* url))
(let ((request (clue-gui2::make-request :url url :method :get)))
(multiple-value-bind (io header) (clue-gui2::open-document-4 request)
@@ -554,6 +562,7 @@
(make-instance 'r2::xml-style-document-language)))
(closure-protocol:*user-agent* nil)
(r2::*canvas-width* (bounding-rectangle-width (sheet-parent *pane*))))
+ (window-clear *pane*)
(closure-protocol:render
closure-protocol:*document-language*
doc
@@ -569,7 +578,8 @@
;; While we are at it, force a repaint
(handle-repaint *pane* (sheet-region (pane-viewport *pane*)))
(clim-backend:port-force-output (find-port)))))))
- #+nil (write-status "Done.")))))
+ (setf (sheet-pointer-cursor *pane*) :default)
+ (write-status "Done.")))))
#+nil (clim-backend:port-force-output (find-port))))))
(defun reflow ()
More information about the Closure-cvs
mailing list