Update of /project/mcclim/cvsroot/mcclim/Drei In directory clnet:/tmp/cvs-serv24404/Drei
Modified Files: drei-clim.lisp drei.lisp syntax.lisp views.lisp Log Message: Changed the Drei/ESA modes-idea to work through metaclasses, enabling default modes.
--- /project/mcclim/cvsroot/mcclim/Drei/drei-clim.lisp 2008/01/02 09:20:26 1.27 +++ /project/mcclim/cvsroot/mcclim/Drei/drei-clim.lisp 2008/01/11 02:44:13 1.28 @@ -158,6 +158,7 @@ :display-function 'display-drei-pane :width 900 :active nil) + (:metaclass modual-class) (:documentation "An actual, instantiable Drei pane that permits (and requires) the host application to control the command loop completely.")) @@ -209,6 +210,7 @@ (%previous-focus :accessor previous-focus :initform nil :documentation "The pane that previously had keyboard focus")) + (:metaclass modual-class) (:default-initargs :command-executor 'execute-drei-command) (:documentation "An actual, instantiable Drei gadget with event-based command processing.")) @@ -336,6 +338,7 @@ editing area in the coordinate system of the encapsulated stream. An (X,Y) list, not necessarily the same as the position of the associated output record.")) + (:metaclass modual-class) (:default-initargs :command-executor 'execute-drei-command) (:documentation "A Drei editable area implemented as an output record.")) --- /project/mcclim/cvsroot/mcclim/Drei/drei.lisp 2007/12/28 10:08:28 1.24 +++ /project/mcclim/cvsroot/mcclim/Drei/drei.lisp 2008/01/11 02:44:13 1.25 @@ -219,7 +219,7 @@ ;;; ;;; The basic Drei class.
-(defclass drei (modual-mixin) +(defclass drei () ((%view :initform (make-instance 'textual-drei-syntax-view) :initarg :view :accessor view @@ -274,6 +274,7 @@ (%isearch-previous-string :initform nil :accessor isearch-previous-string) (%query-replace-mode :initform nil :accessor query-replace-mode) (%query-replace-state :initform nil :accessor query-replace-state)) + (:metaclass modual-class) (:default-initargs :active t :editable-p t) (:documentation "The abstract Drei class that maintains standard Drei editor state. It should not be directly --- /project/mcclim/cvsroot/mcclim/Drei/syntax.lisp 2008/01/09 18:21:44 1.11 +++ /project/mcclim/cvsroot/mcclim/Drei/syntax.lisp 2008/01/11 02:44:13 1.12 @@ -22,7 +22,7 @@
(in-package :drei-syntax)
-(defclass syntax (name-mixin modual-mixin) +(defclass syntax (name-mixin) ((%buffer :initarg :buffer :reader buffer) (%command-table :initarg :command-table :initform (error "A command table has not been provided for this syntax") @@ -30,6 +30,7 @@ (%updater-fns :initarg :updater-fns :initform '() :accessor updater-fns)) + (:metaclass modual-class) (:documentation "The base class for all syntaxes."))
(defgeneric syntax-command-tables (syntax) @@ -287,6 +288,7 @@ ;; It must be just a command table. (find-command-table ,command-table)))))) default-initargs) + (:metaclass modual-class) ,@defclass-options))))
(defgeneric eval-option (syntax name value) --- /project/mcclim/cvsroot/mcclim/Drei/views.lisp 2008/01/09 19:26:14 1.16 +++ /project/mcclim/cvsroot/mcclim/Drei/views.lisp 2008/01/11 02:44:13 1.17 @@ -403,7 +403,7 @@ ;;; ;;; View classes.
-(defclass drei-view (tabify-mixin subscriptable-name-mixin modual-mixin) +(defclass drei-view (tabify-mixin subscriptable-name-mixin) ((%active :accessor active :initform t :initarg :active @@ -436,6 +436,7 @@ `editor-table' - the command tables containing the editor commands will be added automatically, as long as this value is true.")) + (:metaclass modual-class) (:documentation "The base class for all Drei views. A view observes some other object and provides a visual representation for Drei.") @@ -530,6 +531,7 @@ :documentation "The number of lines in the views `displayed-lines' array that are actually live, that is, used for display right now.")) + (:metaclass modual-class) (:documentation "A view that contains a `drei-buffer' object."))
@@ -577,6 +579,7 @@ :initform -1 :documentation "The size of the buffer the last time the view was synchronized.")) + (:metaclass modual-class) (:documentation "A buffer-view that maintains a parse tree of the buffer, or otherwise pays attention to the syntax of the buffer.")) @@ -725,6 +728,7 @@ (defclass point-mark-view (drei-buffer-view) ((%point :initform nil :initarg :point :accessor point-of) (%mark :initform nil :initarg :mark :accessor mark-of)) + (:metaclass modual-class) (:documentation "A view class containing a point and a mark into its buffer."))
@@ -758,6 +762,7 @@ (%prefix-start-offset :initform nil :accessor prefix-start-offset) (%dabbrev-expansion-mark :initform nil :accessor dabbrev-expansion-mark) (%overwrite-mode :initform nil :accessor overwrite-mode)) + (:metaclass modual-class) (:default-initargs :use-editor-commands t))
(defmethod create-view-cursors nconc ((output-stream extended-output-stream)