[mcclim-cvs] CVS mcclim/Drei
thenriksen
thenriksen at common-lisp.net
Mon Jan 28 16:53:21 UTC 2008
Update of /project/mcclim/cvsroot/mcclim/Drei
In directory clnet:/tmp/cvs-serv20878/Drei
Modified Files:
drei-clim.lisp drei.lisp
Log Message:
Added :redisplay-minibuffer initarg to Drei instances.
This enables programs like Climacs to prevent Drei from blasting the minibuffer.
--- /project/mcclim/cvsroot/mcclim/Drei/drei-clim.lisp 2008/01/27 10:46:53 1.34
+++ /project/mcclim/cvsroot/mcclim/Drei/drei-clim.lisp 2008/01/28 16:53:21 1.35
@@ -226,7 +226,9 @@
:documentation "The pane that previously had
keyboard focus"))
(:metaclass modual-class)
- (:default-initargs :command-executor 'execute-drei-command)
+ (:default-initargs
+ :command-executor 'execute-drei-command
+ :redisplay-minibuffer t)
(:documentation "An actual, instantiable Drei gadget with
event-based command processing."))
@@ -359,7 +361,9 @@
:documentation "The parent output
record of the Drei area instance."))
(:metaclass modual-class)
- (:default-initargs :command-executor 'execute-drei-command)
+ (:default-initargs
+ :command-executor 'execute-drei-command
+ :redisplay-minibuffer t)
(:documentation "A Drei editable area implemented as an output
record."))
@@ -500,7 +504,8 @@
a minibuffer."))
(defmethod display-drei :after ((drei drei))
- (when (and *minibuffer* (not (eq *minibuffer* (editor-pane drei))))
+ (when (and *minibuffer* (not (eq *minibuffer* (editor-pane drei)))
+ (redisplay-minibuffer drei))
;; We need to use :force-p t to remove any existing output from
;; the pane.
(redisplay-frame-pane (pane-frame *minibuffer*) *minibuffer* :force-p t)))
--- /project/mcclim/cvsroot/mcclim/Drei/drei.lisp 2008/01/27 10:23:05 1.32
+++ /project/mcclim/cvsroot/mcclim/Drei/drei.lisp 2008/01/28 16:53:21 1.33
@@ -179,7 +179,8 @@
search-table
info-table
self-insert-table
- keyboard-macro-table))
+ keyboard-macro-table)
+ :menu '(("Commenting" :menu comment-table)))
;; Command table for commands that are only available when Drei is a
;; gadget. There is no pane-exclusive table because the Drei pane is
@@ -286,6 +287,14 @@
:initarg :cursors-visible
:documentation "If true, the cursors of this
Drei instance will be visible. If false, they will not.")
+ (%redisplay-minibuffer :accessor redisplay-minibuffer
+ :initform nil
+ :initarg :redisplay-minibuffer
+ :documentation "If true, the minibuffer
+associated with this Drei instance will be redisplayed as the
+last part of the Drei redisplay process. If false, it is the task
+of the Drei-using application to make sure the minibuffer is
+redisplayed as appropriate.")
(%isearch-mode :initform nil :accessor isearch-mode)
(%isearch-states :initform '() :accessor isearch-states)
(%isearch-previous-string :initform nil :accessor isearch-previous-string)
More information about the Mcclim-cvs
mailing list