[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/vc.el,v
From: |
Dan Nicolaescu |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/vc.el,v |
Date: |
Fri, 18 Jan 2008 23:33:00 +0000 |
CVSROOT: /cvsroot/emacs
Module name: emacs
Changes by: Dan Nicolaescu <dann> 08/01/18 23:32:59
Index: vc.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/vc.el,v
retrieving revision 1.515
retrieving revision 1.516
diff -u -b -r1.515 -r1.516
--- vc.el 18 Jan 2008 14:12:43 -0000 1.515
+++ vc.el 18 Jan 2008 23:32:57 -0000 1.516
@@ -544,8 +544,6 @@
;;
;; - decide if vc-status should replace vc-dired.
;;
-;; - vc-status should be made asynchronous.
-;;
;; - vc-status needs a menu, mouse bindings and some color bling.
;;; Code:
@@ -2622,16 +2620,26 @@
(put 'vc-status-mode 'mode-class 'special)
+(defun vc-update-vc-status-buffer (entries buffer)
+ (with-current-buffer buffer
+ (dolist (entry entries)
+ (ewoc-enter-last vc-status
+ (vc-status-create-fileinfo (cdr entry) (car entry))))
+ (ewoc-goto-node vc-status (ewoc-nth vc-status 0))))
+
(defun vc-status-refresh ()
"Refresh the contents of the VC status buffer."
(interactive)
;; This is not very efficient; ewoc could use a new function here.
(ewoc-filter vc-status (lambda (node) nil))
(let ((backend (vc-responsible-backend default-directory)))
- (dolist (entry (vc-call-backend backend 'dir-status default-directory))
- (ewoc-enter-last vc-status
- (vc-status-create-fileinfo (cdr entry) (car entry)))))
- (ewoc-goto-node vc-status (ewoc-nth vc-status 0)))
+ ;; Call the dir-status backend function. dir-status is supposed to
+ ;; be asynchronous. It should compute the results and call the
+ ;; function passed as a an arg to update the vc-status buffer with
+ ;; the results.
+ (vc-call-backend
+ backend 'dir-status default-directory
+ #'vc-update-vc-status-buffer (current-buffer))))
(defun vc-status-next-line (arg)
"Go to the next line.
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, (continued)
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Juanma Barranquero, 2008/01/05
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/06
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Stefan Monnier, 2008/01/06
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/09
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/09
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/10
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/13
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/14
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/16
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/18
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v,
Dan Nicolaescu <=
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Glenn Morris, 2008/01/22
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/23
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/24
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Michael Albinus, 2008/01/26
- [Emacs-diffs] Changes to emacs/lisp/vc.el,v, Dan Nicolaescu, 2008/01/27