aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTassilo Horn2008-01-29 18:00:40 +0000
committerTassilo Horn2008-01-29 18:00:40 +0000
commit54089c0eea82caf34ce360cac85c39bd74a3df8a (patch)
tree5d506759d94101973920d8fae9da635eb9018b5c
parent5c8a04f1a93e11538bf895b1755465aa45e244c9 (diff)
downloademacs-54089c0eea82caf34ce360cac85c39bd74a3df8a.tar.gz
emacs-54089c0eea82caf34ce360cac85c39bd74a3df8a.zip
* image-mode.el (image-mode-current-vscroll)
(image-mode-current-hscroll): Add doc strings. (image-set-window-vscroll, image-set-window-hscroll) (image-reset-current-vhscroll, image-mode): Adapt to i-m-current-[vh]scroll being an alist now.
-rw-r--r--lisp/image-mode.el32
1 files changed, 22 insertions, 10 deletions
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index 7af8d0f82da..55caae9a91d 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -50,20 +50,32 @@
50 50
51;;; Image scrolling functions 51;;; Image scrolling functions
52 52
53(defvar image-mode-current-vscroll nil) 53(defvar image-mode-current-vscroll nil
54(defvar image-mode-current-hscroll nil) 54 "An alist with elements (WINDOW . VSCROLL).")
55
56(defvar image-mode-current-hscroll nil
57 "An alist with elements (WINDOW . HSCROLL).")
55 58
56(defun image-set-window-vscroll (window vscroll &optional pixels-p) 59(defun image-set-window-vscroll (window vscroll &optional pixels-p)
57 (setq image-mode-current-vscroll vscroll) 60 (setq image-mode-current-vscroll
61 (append (list (cons window vscroll))
62 (delete (assoc window image-mode-current-vscroll)
63 image-mode-current-vscroll)))
58 (set-window-vscroll window vscroll pixels-p)) 64 (set-window-vscroll window vscroll pixels-p))
59 65
60(defun image-set-window-hscroll (window ncol) 66(defun image-set-window-hscroll (window ncol)
61 (setq image-mode-current-hscroll ncol) 67 (setq image-mode-current-hscroll
68 (append (list (cons window ncol))
69 (delete (assoc window image-mode-current-hscroll)
70 image-mode-current-hscroll)))
62 (set-window-hscroll window ncol)) 71 (set-window-hscroll window ncol))
63 72
64(defun image-reset-current-vhscroll () 73(defun image-reset-current-vhscroll ()
65 (set-window-hscroll (selected-window) image-mode-current-hscroll) 74 (let ((win (selected-window)))
66 (set-window-vscroll (selected-window) image-mode-current-vscroll)) 75 (when (assoc win image-mode-current-hscroll)
76 (set-window-hscroll win (cdr (assoc win image-mode-current-hscroll))))
77 (when (assoc win image-mode-current-vscroll)
78 (set-window-vscroll win (cdr (assoc win image-mode-current-vscroll))))))
67 79
68(defun image-forward-hscroll (&optional n) 80(defun image-forward-hscroll (&optional n)
69 "Scroll image in current window to the left by N character widths. 81 "Scroll image in current window to the left by N character widths.
@@ -241,10 +253,10 @@ to toggle between display as an image and display as text."
241 'image-bookmark-make-cell) 253 'image-bookmark-make-cell)
242 254
243 ;; Keep track of [vh]scroll when switching buffers 255 ;; Keep track of [vh]scroll when switching buffers
244 (set (make-local-variable 'image-mode-current-hscroll) 256 (make-local-variable 'image-mode-current-hscroll)
245 (window-hscroll (selected-window))) 257 (make-local-variable 'image-mode-current-vscroll)
246 (set (make-local-variable 'image-mode-current-vscroll) 258 (image-set-window-hscroll (selected-window) (window-hscroll))
247 (window-vscroll (selected-window))) 259 (image-set-window-vscroll (selected-window) (window-vscroll))
248 (add-hook 'window-configuration-change-hook 260 (add-hook 'window-configuration-change-hook
249 'image-reset-current-vhscroll nil t) 261 'image-reset-current-vhscroll nil t)
250 262