aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/image.el
diff options
context:
space:
mode:
authorGlenn Morris2013-02-15 20:58:20 -0500
committerGlenn Morris2013-02-15 20:58:20 -0500
commitbb9dfee1d6d0e67b3564d25580f144d25284c0ea (patch)
tree48504bfef887e8c395e18cd46f7b974bbc17017a /lisp/image.el
parentef5ae980aad7c1b67b4171f7a2c106d1f69aa94f (diff)
downloademacs-bb9dfee1d6d0e67b3564d25580f144d25284c0ea.tar.gz
emacs-bb9dfee1d6d0e67b3564d25580f144d25284c0ea.zip
Display a mode-line frame counter for animated images
* lisp/image.el (image-current-frame): New variable. (image-animate-timeout): Set image-current-frame. * lisp/image-mode.el (image-mode): For animated images, display a frame counter via mode-line-process.
Diffstat (limited to 'lisp/image.el')
-rw-r--r--lisp/image.el4
1 files changed, 4 insertions, 0 deletions
diff --git a/lisp/image.el b/lisp/image.el
index 73b25f6da67..e0521ad065a 100644
--- a/lisp/image.el
+++ b/lisp/image.el
@@ -657,6 +657,9 @@ number, play until that number of seconds has elapsed."
657 (setq timer nil))) 657 (setq timer nil)))
658 timer)) 658 timer))
659 659
660(defvar-local image-current-frame nil
661 "The frame index of the current animated image.")
662
660;; FIXME? The delay may not be the same for different sub-images, 663;; FIXME? The delay may not be the same for different sub-images,
661;; hence we need to call image-animated-p to return it. 664;; hence we need to call image-animated-p to return it.
662;; But it also returns count, so why do we bother passing that as an 665;; But it also returns count, so why do we bother passing that as an
@@ -672,6 +675,7 @@ LIMIT determines when to stop. If t, loop forever. If nil, stop
672 after LIMIT seconds have elapsed. 675 after LIMIT seconds have elapsed.
673The minimum delay between successive frames is 0.01s." 676The minimum delay between successive frames is 0.01s."
674 (plist-put (cdr image) :index n) 677 (plist-put (cdr image) :index n)
678 (setq image-current-frame n)
675 (force-window-update) 679 (force-window-update)
676 (setq n (1+ n)) 680 (setq n (1+ n))
677 (let* ((time (float-time)) 681 (let* ((time (float-time))