/[climacs]/climacs/gui.lisp
ViewVC logotype

Diff of /climacs/gui.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.196 by dmurray, Sat Nov 12 23:09:34 2005 UTC revision 1.197 by dmurray, Sun Nov 13 09:24:45 2005 UTC
# Line 37  Line 37 
37     (dabbrev-expansion-mark :initform nil)     (dabbrev-expansion-mark :initform nil)
38     (overwrite-mode :initform nil)))     (overwrite-mode :initform nil)))
39    
40    (defgeneric buffer-pane-p (pane)
41      (:documentation "Returns T when a pane contains a buffer."))
42    
43    (defmethod buffer-pane-p (pane)
44      (declare (ignore pane))
45      nil)
46    
47    (defmethod buffer-pane-p ((pane extended-pane))
48      T)
49    
50  (defclass climacs-info-pane (info-pane)  (defclass climacs-info-pane (info-pane)
51    ()    ()
52    (:default-initargs    (:default-initargs
# Line 149  Line 159 
159  (defmethod redisplay-frame-panes :around ((frame climacs) &rest args)  (defmethod redisplay-frame-panes :around ((frame climacs) &rest args)
160    (declare (ignore args))    (declare (ignore args))
161    (let ((buffers (remove-duplicates (loop for pane in (windows frame)    (let ((buffers (remove-duplicates (loop for pane in (windows frame)
162                                            when (typep pane 'extended-pane)                                            when (buffer-pane-p pane)
163                                              collect (buffer pane)))))                                              collect (buffer pane)))))
164      (loop for buffer in buffers      (loop for buffer in buffers
165            do (update-syntax buffer (syntax buffer)))            do (update-syntax buffer (syntax buffer)))
# Line 226  Line 236 
236    
237  (defmethod execute-frame-command :around ((frame climacs) command)  (defmethod execute-frame-command :around ((frame climacs) command)
238    (handler-case    (handler-case
239        (if (typep (current-window) 'extended-pane)        (if (buffer-pane-p (current-window))
240            (with-undo ((buffer (current-window)))            (with-undo ((buffer (current-window)))
241              (call-next-method))              (call-next-method))
242            (call-next-method))            (call-next-method))
# Line 252  Line 262 
262    
263  (defmethod find-applicable-command-table ((frame climacs))  (defmethod find-applicable-command-table ((frame climacs))
264    (or    (or
265     (let ((syntax (syntax (buffer (current-window)))))     (let ((syntax (and (buffer-pane-p (current-window))
266        (and (slot-exists-p syntax 'command-table)                        (syntax (buffer (current-window))))))
267          (and syntax
268               (slot-exists-p syntax 'command-table)
269             (slot-boundp syntax 'command-table)             (slot-boundp syntax 'command-table)
270             (slot-value syntax 'command-table)))             (slot-value syntax 'command-table)))
271     (find-command-table 'global-climacs-table)))     (find-command-table 'global-climacs-table)))

Legend:
Removed from v.1.196  
changed lines
  Added in v.1.197

  ViewVC Help
Powered by ViewVC 1.1.5