;;; ebrowse.el --- Emacs C++ class browser & tags facility
-;; Copyright (C) 1992-2012 Free Software Foundation, Inc.
+;; Copyright (C) 1992-2014 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
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."
(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 ()
(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))
;; 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
;; this will select the buffer from which the buffer menu was
;; invoked. But this buffer is not displayed in the buffer list if
;; it isn't a tree buffer. I therefore let the buffer menu command
-;; loop read the command `p' via `unread-command-char'. This command
+;; loop read the command `p' via `unread-command-events'. This command
;; has no effect since we are on the first line of the buffer.
(defvar electric-buffer-menu-mode-hook nil)