2009-09-27 Chong Yidong <cyd@stupidchicken.com>
+ * cedet/semantic/symref/list.el: Require semantic/complete.
+ (semantic-symref-symbol): Use
+ semantic-complete-read-tag-buffer-deep.
+
+ * cedet/semantic/ia.el (semantic-ia-complete-symbol-menu): Remove.
+ (semantic-ia-complete-symbol): Use semantic-complete-symbol.
+
* cedet/semantic/idle.el (semantic-idle-scheduler-work-timer):
Change timeout to 1. Doc fix.
;; fast-jump. For a virtual method, offer some of the possible
;; implementations in various sub-classes.
-;; (require 'senator)
(require 'semantic/analyze)
(require 'semantic/format)
(require 'pulse)
;;
;; This is a way of making this fcn more useful since the
;; smart completion engine sometimes failes.
- (senator-complete-symbol)
- ))
+ (semantic-complete-symbol)))
;; Use try completion to seek a common substring.
(let ((tc (try-completion (or pre "") syms)))
(if (and (stringp tc) (not (string= tc (or pre ""))))
:group 'semantic
:type semantic-format-tag-custom-list)
-;;;###autoload
-(defun semantic-ia-complete-symbol-menu (point)
- "Complete the current symbol via a menu based at POINT.
-Completion options are calculated with `semantic-analyze-possible-completions'."
- (interactive "d")
- (require 'imenu)
- (let* ((a (semantic-analyze-current-context point))
- (syms (semantic-ia-get-completions a point))
- )
- ;; Complete this symbol.
- (if (not syms)
- (progn
- (message "No smart completions found. Trying Senator.")
- (when (semantic-analyze-context-p a)
- ;; This is a quick way of getting a nice completion list
- ;; in the menu if the regular context mechanism fails.
- (senator-completion-menu-popup)))
-
- (let* ((menu
- (mapcar
- (lambda (tag)
- (cons
- (funcall semantic-ia-completion-menu-format-tag-function tag)
- (vector tag)))
- syms))
- (ans
- (imenu--mouse-menu
- ;; XEmacs needs that the menu has at least 2 items. So,
- ;; include a nil item that will be ignored by imenu.
- (cons nil menu)
- (senator-completion-menu-point-as-event)
- "Completions")))
- (when ans
- (if (not (semantic-tag-p ans))
- (setq ans (aref (cdr ans) 0)))
- (delete-region (car (oref a bounds)) (cdr (oref a bounds)))
- (semantic-ia-insert-tag ans))
- ))))
-
;;; Completions Tip
;;
;; This functions shows how to get the list of completions,
;; NOTE: Need to add some refactoring tools.
(require 'semantic/symref)
+(require 'semantic/complete)
(require 'pulse)
;;; Code:
references are the organized by file and the name of the function
they are used in.
Display the references in`semantic-symref-results-mode'"
- (interactive (list (car (senator-jump-interactive "Symrefs for: " nil nil t)))
- )
+ (interactive (list (semantic-tag-name (semantic-complete-read-tag-buffer-deep
+ "Symrefs for: "))))
(semantic-fetch-tags)
(let ((res nil)
)