/[mcclim]/mcclim/frames.lisp
ViewVC logotype

Diff of /mcclim/frames.lisp

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

revision 1.88 by moore, Tue Jan 20 16:07:25 2004 UTC revision 1.89 by moore, Wed Jan 21 08:59:13 2004 UTC
# Line 52  Line 52 
52  ;;; XXX All these slots should move to a mixin or to standard-application-frame.  ;;; XXX All these slots should move to a mixin or to standard-application-frame.
53  ;;; -- moore  ;;; -- moore
54    
55  (define-protocol-class  application-frame (presentation-history-mixin)  (define-protocol-class  application-frame ()
56    ((port :initform nil    ((port :initform nil
57           :initarg :port           :initarg :port
58           :accessor port)           :accessor port)
# Line 184  FRAME-EXIT condition.")) Line 184  FRAME-EXIT condition."))
184    (:documentation "Called when a pane receives or loses the keyboard    (:documentation "Called when a pane receives or loses the keyboard
185  input focus. This is a McCLIM extension."))  input focus. This is a McCLIM extension."))
186    
187  (defclass standard-application-frame (application-frame)  (defclass standard-application-frame (application-frame
188                                          presentation-history-mixin)
189    ((event-queue :initarg :frame-event-queue    ((event-queue :initarg :frame-event-queue
190                  :initarg :input-buffer                  :initarg :input-buffer
191                  :initform nil                  :initform nil
# Line 194  input focus. This is a McCLIM extension. Line 195  input focus. This is a McCLIM extension.
195     (documentation-state :accessor frame-documentation-state     (documentation-state :accessor frame-documentation-state
196                          :initform nil                          :initform nil
197                          :documentation "Used to keep of track of what                          :documentation "Used to keep of track of what
198    needs to be rendered in the pointer documentation frame.")))    needs to be rendered in the pointer documentation frame.")
199       (calling-frame :reader frame-calling-frame
200                      :initarg :calling-frame
201                      :initform nil
202                      :documentation "The frame that is the parent of this
203    frame, if any")))
204    
205  ;;; Support the :input-buffer initarg for compatibility with "real CLIM"  ;;; Support the :input-buffer initarg for compatibility with "real CLIM"
206    
207  (defmethod initialize-instance :after ((obj standard-application-frame)  (defmethod initialize-instance :after ((obj standard-application-frame)
208                                         &key &allow-other-keys)                                         &key &allow-other-keys)
209      (when (and (frame-calling-frame obj)
210               (null (frame-event-queue obj)))
211        (setf (frame-event-queue obj)
212              (frame-event-queue (frame-calling-frame obj))))
213    (unless (frame-event-queue obj)    (unless (frame-event-queue obj)
214      (setf (frame-event-queue obj)      (setf (frame-event-queue obj)
215            (make-instance 'port-event-queue))))            (make-instance 'port-event-queue))))
# Line 419  input focus. This is a McCLIM extension. Line 429  input focus. This is a McCLIM extension.
429             'command-line-read-remaining-arguments-for-partial-command)             'command-line-read-remaining-arguments-for-partial-command)
430            (prompt "Command: "))            (prompt "Command: "))
431    (loop    (loop
432     (let* ((*standard-input*  (frame-standard-input frame))     (let* ((*standard-input*  (or (frame-standard-input frame)
433            (*standard-output* (frame-standard-output frame))                                   *standard-input*))
434            (*query-io* (frame-query-io frame))            (*standard-output* (or (frame-standard-output frame)
435                                     *standard-output*))
436              (query-io  (frame-query-io frame))
437              (*query-io* (or query-io *query-io*))
438            (*pointer-documentation-output* (frame-pointer-documentation-output            (*pointer-documentation-output* (frame-pointer-documentation-output
439                                             frame))                                             frame))
440            ;; during development, don't alter *error-output*            ;; during development, don't alter *error-output*
# Line 433  input focus. This is a McCLIM extension. Line 446  input focus. This is a McCLIM extension.
446       (restart-case       (restart-case
447           (progn           (progn
448             (redisplay-changed-panes frame)             (redisplay-changed-panes frame)
449             (if *query-io*             (if query-io
450                 ;; We don't need to turn the cursor on here, as Goatee has its own                 ;; We don't need to turn the cursor on here, as Goatee has its own
451                 ;; cursor which will appear. In fact, as a sane interface policy,                 ;; cursor which will appear. In fact, as a sane interface policy,
452                 ;; leave it off by default, and hopefully this doesn't violate the                 ;; leave it off by default, and hopefully this doesn't violate the

Legend:
Removed from v.1.88  
changed lines
  Added in v.1.89

  ViewVC Help
Powered by ViewVC 1.1.5