]> code.delx.au - gnu-emacs/blobdiff - lisp/cedet/semantic/mru-bookmark.el
Improve the custom type of some user options.
[gnu-emacs] / lisp / cedet / semantic / mru-bookmark.el
index 4216e099857569d7a93b713827b60429371a7395..4146b4e5b2c497543ff0b0892586a8e5c893fcb1 100644 (file)
@@ -1,6 +1,6 @@
 ;;; semantic/mru-bookmark.el --- Automatic bookmark tracking
 
-;; Copyright (C) 2007-2012 Free Software Foundation, Inc.
+;; Copyright (C) 2007-2016 Free Software Foundation, Inc.
 
 ;; Author: Eric M. Ludlam <eric@siege-engine.com>
 
@@ -53,6 +53,7 @@
 (declare-function data-debug-new-buffer "data-debug")
 (declare-function data-debug-insert-object-slots "eieio-datadebug")
 (declare-function semantic-momentary-highlight-tag "semantic/decorate")
+(declare-function semantic-tag-similar-p "semantic/tag-ls")
 
 ;;; TRACKING CORE
 ;;
@@ -85,7 +86,7 @@ Nice values are 'edit, 'read, 'jump, and 'mark.
    )
   "A single bookmark.")
 
-(defmethod initialize-instance :AFTER ((sbm semantic-bookmark) &rest fields)
+(cl-defmethod initialize-instance :after ((sbm semantic-bookmark) &rest fields)
   "Initialize the bookmark SBM with details about :tag."
   (condition-case nil
       (save-excursion
@@ -95,7 +96,7 @@ Nice values are 'edit, 'read, 'jump, and 'mark.
     (error (message "Error bookmarking tag.")))
   )
 
-(defmethod semantic-mrub-visit ((sbm semantic-bookmark))
+(cl-defmethod semantic-mrub-visit ((sbm semantic-bookmark))
   "Visit the semantic tag bookmark SBM.
 Uses `semantic-go-to-tag' and highlighting."
   (require 'semantic/decorate)
@@ -116,7 +117,7 @@ Uses `semantic-go-to-tag' and highlighting."
     (semantic-momentary-highlight-tag tag)
     ))
 
-(defmethod semantic-mrub-update ((sbm semantic-bookmark) point reason)
+(cl-defmethod semantic-mrub-update ((sbm semantic-bookmark) point reason)
   "Update the existing bookmark SBM.
 POINT is some important location.
 REASON is a symbol.  See slot `reason' on `semantic-bookmark'."
@@ -131,7 +132,7 @@ REASON is a symbol.  See slot `reason' on `semantic-bookmark'."
     (error nil))
   )
 
-(defmethod semantic-mrub-preflush ((sbm semantic-bookmark))
+(cl-defmethod semantic-mrub-preflush ((sbm semantic-bookmark))
   "Method called on a tag before the current buffer list of tags is flushed.
 If there is a buffer match, unlink the tag."
   (let ((tag (oref sbm tag))
@@ -182,7 +183,7 @@ Argument POINT is where to find the tag near."
        (when nearby (setq tag nearby))))
     tag))
 
-(defmethod semantic-mrub-push ((sbr semantic-bookmark-ring) point
+(cl-defmethod semantic-mrub-push ((sbr semantic-bookmark-ring) point
                               &optional reason)
   "Add a bookmark to the ring SBR from POINT.
 REASON is why it is being pushed.  See doc for `semantic-bookmark'
@@ -206,7 +207,7 @@ The resulting bookmark is then sorted within the ring."
       )))
 
 (defun semantic-mrub-cache-flush-fcn ()
-  "Function called in the `semantic-before-toplevel-cache-flush-hook`.
+  "Function called in the `semantic-before-toplevel-cache-flush-hook'.
 Cause tags in the ring to become unlinked."
   (let* ((ring (oref semantic-mru-bookmark-ring ring))
         (len (ring-length ring))
@@ -291,13 +292,13 @@ minor mode is enabled."
             (setq semantic-mru-bookmark-mode nil)
             (error "Buffer %s was not set up for parsing"
                    (buffer-name)))
-        (semantic-make-local-hook 'semantic-edits-new-change-hooks)
-        (add-hook 'semantic-edits-new-change-hooks
+        (semantic-make-local-hook 'semantic-edits-new-change-functions)
+        (add-hook 'semantic-edits-new-change-functions
                   'semantic-mru-bookmark-change-hook-fcn nil t)
         (add-hook 'semantic-edits-move-change-hooks
                   'semantic-mru-bookmark-change-hook-fcn nil t))
     ;; Remove hooks
-    (remove-hook 'semantic-edits-new-change-hooks
+    (remove-hook 'semantic-edits-new-change-functions
                 'semantic-mru-bookmark-change-hook-fcn t)
     (remove-hook 'semantic-edits-move-change-hooks
                 'semantic-mru-bookmark-change-hook-fcn t)))