diff lisp/cedet/ede.el @ 105815:cdc718e48308

* menu-bar.el (menu-bar-tools-menu): Add Semantic and EDE menu items. * cedet/cedet.el (cedet-menu-map): Remove Semantic and EDE menu items. * cedet/ede.el (ede-minor-mode): * cedet/semantic.el (semantic-mode): Toggle menu separators.
author Chong Yidong <cyd@stupidchicken.com>
date Sat, 31 Oct 2009 18:03:02 +0000
parents 3fe6da4a95a9
children 83dde921cc1b
line wrap: on
line diff
--- a/lisp/cedet/ede.el	Sat Oct 31 17:12:13 2009 +0000
+++ b/lisp/cedet/ede.el	Sat Oct 31 18:03:02 2009 +0000
@@ -585,27 +585,31 @@
 ;; Activate the EDE items in cedet-menu-map
 
 (define-key cedet-menu-map [ede-find-file]
-  '(menu-item "Find File in Project..." ede-find-file :enable ede-object))
+  '(menu-item "Find File in Project..." ede-find-file :enable ede-object
+	      :visible global-ede-mode))
 (define-key cedet-menu-map [ede-speedbar]
-  '(menu-item "View Project Tree" ede-speedbar :enable ede-object))
+  '(menu-item "View Project Tree" ede-speedbar :enable ede-object
+	      :visible global-ede-mode))
 (define-key cedet-menu-map [ede]
-  '(menu-item "Load Project" ede))
+  '(menu-item "Load Project" ede
+	      :visible global-ede-mode))
 (define-key cedet-menu-map [ede-new]
   '(menu-item "Create Project" ede-new
-	      :enable (not ede-object)))
+	      :enable (not ede-object)
+	      :visible global-ede-mode))
 (define-key cedet-menu-map [ede-target-options]
   '(menu-item "Target Options" ede-target-options
-	      :filter ede-target-forms-menu))
+	      :filter ede-target-forms-menu
+	      :visible global-ede-mode))
 (define-key cedet-menu-map [ede-project-options]
   '(menu-item "Project Options" ede-project-options
-	      :filter ede-project-forms-menu))
+	      :filter ede-project-forms-menu
+	      :visible global-ede-mode))
 (define-key cedet-menu-map [ede-build-forms-menu]
   '(menu-item "Build Project" ede-build-forms-menu
 	      :filter ede-build-forms-menu
-	      :enable ede-object))
-(define-key cedet-menu-map [semantic-menu-separator] 'undefined)
-(define-key cedet-menu-map [cedet-menu-separator] 'undefined)
-(define-key cedet-menu-map [ede-menu-separator] '("--"))
+	      :enable ede-object
+	      :visible global-ede-mode))
 
 (defun ede-menu-obj-of-class-p (class)
   "Return non-nil if some member of `ede-object' is a child of CLASS."
@@ -841,6 +845,8 @@
   (if global-ede-mode
       ;; Turn on global-ede-mode
       (progn
+	(if semantic-mode
+	    (define-key cedet-menu-map [cedet-menu-separator] '("--")))
 	(add-hook 'semanticdb-project-predicate-functions 'ede-directory-project-p)
 	(add-hook 'semanticdb-project-root-functions 'ede-toplevel-project-or-nil)
 	(add-hook 'ecb-source-path-functions 'ede-ecb-project-paths)
@@ -850,6 +856,7 @@
 	(ede-load-cache)
 	(ede-reset-all-buffers 1))
     ;; Turn off global-ede-mode
+    (define-key cedet-menu-map [cedet-menu-separator] nil)
     (remove-hook 'semanticdb-project-predicate-functions 'ede-directory-project-p)
     (remove-hook 'semanticdb-project-root-functions 'ede-toplevel-project-or-nil)
     (remove-hook 'ecb-source-path-functions 'ede-ecb-project-paths)