]> code.delx.au - gnu-emacs/blobdiff - lisp/progmodes/ebrowse.el
Update copyright year to 2016
[gnu-emacs] / lisp / progmodes / ebrowse.el
index 8ac54d6524e7cf958a571049700ca9e8fe749f54..5a9870b9001a34bc396dd17006572b593cecb9b4 100644 (file)
@@ -1,9 +1,9 @@
 ;;; ebrowse.el --- Emacs C++ class browser & tags facility
 
-;; Copyright (C) 1992-201 Free Software Foundation, Inc.
+;; Copyright (C) 1992-2016 Free Software Foundation, Inc.
 
 ;; Author: Gerd Moellmann <gerd@gnu.org>
-;; Maintainer: FSF
+;; Maintainer: emacs-devel@gnu.org
 ;; Keywords: C++ tags tools
 
 ;; This file is part of GNU Emacs.
 
 ;;; Code:
 
+(require 'cl-lib)
 (require 'easymenu)
 (require 'view)
 (require 'ebuff-menu)
 
 (eval-when-compile
-  (require 'cl-lib)
   (require 'helper))
 
 \f
@@ -233,19 +233,6 @@ Compare items with `eq' or TEST if specified."
     found))
 
 
-(defun ebrowse-delete-if-not (predicate list)
-  "Remove elements not satisfying PREDICATE from LIST and return the result.
-This is a destructive operation."
-  (let (result)
-    (while list
-      (let ((next (cdr list)))
-       (when (funcall predicate (car list))
-         (setq result (nconc result list))
-         (setf (cdr list) nil))
-       (setq list next)))
-    result))
-
-
 (defmacro ebrowse-output (&rest body)
   "Eval BODY with a writable current buffer.
 Preserve buffer's modified state."
@@ -1310,17 +1297,17 @@ With PREFIX, insert that many filenames."
 
 (defun ebrowse-browser-buffer-list ()
   "Return a list of all tree or member buffers."
-  (ebrowse-delete-if-not 'ebrowse-buffer-p (buffer-list)))
+  (cl-delete-if-not 'ebrowse-buffer-p (buffer-list)))
 
 
 (defun ebrowse-member-buffer-list ()
   "Return a list of all member buffers."
-  (ebrowse-delete-if-not 'ebrowse-member-buffer-p (buffer-list)))
+  (cl-delete-if-not 'ebrowse-member-buffer-p (buffer-list)))
 
 
 (defun ebrowse-tree-buffer-list ()
   "Return a list of all tree buffers."
-  (ebrowse-delete-if-not 'ebrowse-tree-buffer-p (buffer-list)))
+  (cl-delete-if-not 'ebrowse-tree-buffer-p (buffer-list)))
 
 
 (defun ebrowse-known-class-trees-buffer-list ()
@@ -1341,7 +1328,7 @@ one buffer.  Prefer tree buffers over member buffers."
 
 (defun ebrowse-same-tree-member-buffer-list ()
   "Return a list of members buffers with same tree as current buffer."
-  (ebrowse-delete-if-not
+  (cl-delete-if-not
    (lambda (buffer)
      (eq (buffer-local-value 'ebrowse--tree buffer)
         ebrowse--tree))
@@ -1618,7 +1605,7 @@ specifies where to find/view the result."
   ;; Get the source file to view or find.
   (setf file (ebrowse-find-source-file file tags-file))
   ;; If current window is dedicated, use another frame.
-  (when (window-dedicated-p (selected-window))
+  (when (window-dedicated-p)
     (setf where 'other-window))
   (cond (view
         (setf ebrowse-temp-position-to-view struc
@@ -2028,7 +2015,7 @@ COLLAPSE non-nil means collapse the branch."
 (defun ebrowse-electric-list-looper (state condition)
   "Prevent cursor from moving beyond the buffer end.
 Don't let it move into the title lines.
-See 'Electric-command-loop' for a description of STATE and CONDITION."
+See `Electric-command-loop' for a description of STATE and CONDITION."
   (cond ((and condition
              (not (memq (car condition)
                         '(buffer-read-only end-of-buffer
@@ -3484,7 +3471,7 @@ are not performed."
     (with-output-to-temp-buffer (concat "*Apropos Members*")
       (set-buffer standard-output)
       (erase-buffer)
-      (insert "Members matching `" regexp "'\n\n")
+      (insert (format-message "Members matching `%s'\n\n" regexp))
       (cl-loop for s in (ebrowse-list-of-matching-members members regexp) do
                (cl-loop for info in (gethash s members) do
                         (ebrowse-draw-file-member-info info))))))
@@ -4236,7 +4223,8 @@ NUMBER-OF-STATIC-VARIABLES:"
                                                    (1+ (point)))))))))
       (unless non-empty
        (error "No tree buffers"))
-      (setf unread-command-events (listify-key-sequence "p"))
+      (setf unread-command-events
+            (nconc (listify-key-sequence "p") unread-command-events))
       (shrink-window-if-larger-than-buffer (selected-window))
       (setq buffer-read-only t))))