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

Diff of /climacs/gui.lisp

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

revision 1.9 by strandh, Thu Dec 23 08:03:53 2004 UTC revision 1.10 by rstrandh, Thu Dec 23 16:37:08 2004 UTC
# Line 62  Line 62 
62    
63  (defun display-win (frame pane)  (defun display-win (frame pane)
64    "The display function used by the climacs application frame."    "The display function used by the climacs application frame."
65      (declare (ignore frame))
66    (let* ((medium (sheet-medium pane))    (let* ((medium (sheet-medium pane))
67           (style (medium-text-style medium))           (style (medium-text-style medium))
68           (height (text-style-height style medium))           (height (text-style-height style medium))
69           (width (text-style-width style medium))           (width (text-style-width style medium))
70           (buffer (buffer (win frame)))           (tab-width (* 8 width))
71           (size (size (buffer (win frame))))           (buffer (buffer pane))
72             (size (size (buffer pane)))
73           (offset 0)           (offset 0)
74           (offset1 nil)           (offset1 nil)
75           (cursor-x nil)           (cursor-x nil)
# Line 79  Line 81 
81                          :stream pane)                          :stream pane)
82                 (setf offset1 nil)))                 (setf offset1 nil)))
83             (display-line ()             (display-line ()
84               (loop when (= offset (offset (point (win frame))))               (loop when (= offset (offset (point pane)))
85                       do (multiple-value-bind (x y) (stream-cursor-position pane)                       do (multiple-value-bind (x y) (stream-cursor-position pane)
86                            (setf cursor-x (+ x (if (null offset1)                            (setf cursor-x (+ x (if (null offset1)
87                                                    0                                                    0
# Line 93  Line 95 
95                          (cond ((eql obj #\Space)                          (cond ((eql obj #\Space)
96                                 (present-contents)                                 (present-contents)
97                                 (princ obj pane))                                 (princ obj pane))
98                                  ((eql obj #\Tab)
99                                   (present-contents)
100                                   (let ((x (stream-cursor-position pane)))
101                                     (stream-increment-cursor-position
102                                      pane (- tab-width (mod x tab-width)) 0)))
103                                ((constituentp obj)                                ((constituentp obj)
104                                 (when (null offset1)                                 (when (null offset1)
105                                   (setf offset1 offset)))                                   (setf offset1 offset)))
# Line 105  Line 112 
112                             (terpri pane))))                             (terpri pane))))
113        (loop while (< offset size)        (loop while (< offset size)
114              do (display-line))              do (display-line))
115        (when (= offset (offset (point (win frame))))        (when (= offset (offset (point pane)))
116          (multiple-value-bind (x y) (stream-cursor-position pane)          (multiple-value-bind (x y) (stream-cursor-position pane)
117            (setf cursor-x x            (setf cursor-x x
118                  cursor-y y))))                  cursor-y y))))
# Line 317  Line 324 
324        do (global-set-key (code-char code) 'com-self-insert))        do (global-set-key (code-char code) 'com-self-insert))
325    
326  (global-set-key #\newline 'com-self-insert)  (global-set-key #\newline 'com-self-insert)
327    (global-set-key #\tab 'com-self-insert)
328  (global-set-key '(#\f :control) 'com-forward-object)  (global-set-key '(#\f :control) 'com-forward-object)
329  (global-set-key '(#\b :control) 'com-backward-object)  (global-set-key '(#\b :control) 'com-backward-object)
330  (global-set-key '(#\a :control) 'com-beginning-of-line)  (global-set-key '(#\a :control) 'com-beginning-of-line)

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.5