Permalink
Browse files

Latest changes for release 1.94 (support of non-semantic-sources and …

…better

speedbar integration)
  • Loading branch information...
berndl
berndl committed Jun 23, 2003
1 parent c4bdcf4 commit 2556d3ef03b5638c8800d0107e4e878c2e52d0ed
Showing with 1,282 additions and 445 deletions.
  1. +28 −15 NEWS
  2. +3 −2 README
  3. +1 −1 RELEASE_NOTES
  4. +19 −0 ecb-face.el
  5. +45 −9 ecb-layout.el
  6. +151 −19 ecb-speedbar.el
  7. +7 −2 ecb-upgrade.el
  8. +395 −247 ecb.el
  9. +618 −144 ecb.texi
  10. +15 −6 html/ecb-html.el
View
43 NEWS
@@ -1,20 +1,24 @@
-* Changes for ECB version
+* Changes for ECB version 1.94
-** Fixed bugs:
+** Supporting of non-semantic-sources.
-*** Using "Add source path" from the popup-menu now doesn't open the Windows
- file-dialog-box onto Windows-systems because this would prevent this
- command from working.
+*** Native parsing and displaying source-contents of imenu supported files
-*** Smart arrowkey-navigation in the tree-buffers is now even smarter.
- Thanks to John Russel <jorussel@cisco.com> for suggestion.
-
-*** If ECB was activated with a layout which does not contain a
- directory-buffer then you got always an empty directory-buffer even after
- switching to a layout with a directory-buffer. This is fixed now.
+*** Native parsing and displaying source-contents of etags supported files
+*** There are some new options like `ecb-process-non-semantic-files',
+ `ecb-non-semantic-parsing-function' and `ecb-method-non-semantic-face' and
+ one new face `ecb-method-non-semantic-face'. See new customize group
+ "ecb-non-semantic"!
+
** Better speedbar integration into the ECB-frame
+*** Now speedbar can be used not only as replacement for the
+ ECB-directory-browser in the directory-window but also instead of the
+ sources- or the methods-buffer/window. See new option
+ `ecb-use-speedbar-instead-native-tree-buffer' which replaces the old
+ option `ecb-use-speedbar-for-directories'.
+
*** Now speedbar can be integrated into an arbitrary layout in the same way as
the other four special buffers (directories, sources, methods and
history). See new example layout with name "left-dir-plus-speedbar".
@@ -23,17 +27,26 @@
to update a speedbar-window to the current selected directory of the
ECB-directories-window.
-** Handling of non-semantic-files. Now the contents of files which can not be
- parsed by semantic but by imenu or etags can be displayed in the
- ECB-methods-window. See new option `ecb-process-non-semantic-files'.
-
** New option `ecb-compilation-predicates' for better specifying which buffers
should be treated as compilation-buffers and therefore be displayed in the
compile-window of ECB - if there is any.
** Better customizing of the mode-line of an ECB-tree-buffer.
See the new option `ecb-mode-line-data'.
+** Fixed bugs:
+
+*** Using "Add source path" from the popup-menu now doesn't open the Windows
+ file-dialog-box onto Windows-systems because this would prevent this
+ command from working.
+
+*** Smart arrowkey-navigation in the tree-buffers is now even smarter.
+ Thanks to John Russel <jorussel@cisco.com> for suggestion.
+
+*** If ECB was activated with a layout which does not contain a
+ directory-buffer then you got always an empty directory-buffer even after
+ switching to a layout with a directory-buffer. This is fixed now.
+
* Changes for ECB version 1.93
View
5 README
@@ -1,4 +1,4 @@
-Readme for the Emacs Code Browser (ECB) version 1.93
+Readme for the Emacs Code Browser (ECB) version 1.94
About
@@ -23,7 +23,8 @@ ECB requires the following packages:
- Optional: speedbar, author version 0.14beta1 or higher
(http://cedet.sourceforge.net/eieio.shtml)
- This is only needed if the speedbar-integration of ECB is used
+ This is only needed if the speedbar-integration of ECB is used or if
+ non-semantic-sources should be parsed and displayed.
- Optional: If Java code is edited the ECB works best when the JDE package
(http://sunsite.auc.dk/jde) is installed.
View
@@ -1,4 +1,4 @@
-This file contains some important release-notes for ECB version 1.93
+This file contains some important release-notes for ECB version 1.94
General:
--------
View
@@ -283,6 +283,25 @@ methods buffer. If the face 'ecb-default-highlight-face' is used then the
display of all ECB-tree-buffers can be changed by modifying only the face
'ecb-default-highlight-face'.
+Changes take first effect after finishing and reactivating ECB!"
+ :group 'ecb-face-options
+ :group 'ecb-methods
+ :type '(radio (const :tag "Use ecb-default-highlight-face"
+ :value ecb-default-highlight-face)
+ (face :tag "Special face"
+ :value ecb-method-face)))
+
+(defface ecb-method-non-semantic-face (ecb-face-default nil nil nil
+ 'ecb-methods-general-face
+ "brown" "brown")
+ "*Define face used for displaying tokens of sources not supported by
+semantic."
+ :group 'ecb-faces)
+
+(defcustom ecb-method-non-semantic-face 'speedbar-tag-face
+ "*Face used for for displaying tokens of sources not supported by
+semantic. Default is the face used by speedbar for tags.
+
Changes take first effect after finishing and reactivating ECB!"
:group 'ecb-face-options
:group 'ecb-methods
View
@@ -129,8 +129,8 @@
(silentcomp-defvar window-size-fixed)
(silentcomp-defun fit-window-to-buffer)
-;; ecb-speedbar is only loaded if ecb-use-speedbar-for-directories is set to
-;; true
+;; ecb-speedbar is only loaded if ecb-use-speedbar-instead-native-tree-buffer
+;; is set to not nil
(silentcomp-defun ecb-speedbar-set-buffer)
(silentcomp-defun ecb-speedbar-deactivate)
(silentcomp-defvar ecb-speedbar-buffer-name)
@@ -1985,8 +1985,10 @@ during evaluating BODY the current window is always dedicated at the end!"
(set-window-dedicated-p (selected-window) t)))
(defun ecb-set-directories-buffer ()
- (let ((set-directories-buffer (not ecb-use-speedbar-for-directories)))
- ;; first we act depending on the value of ecb-use-speedbar-for-directories
+ (let ((set-directories-buffer
+ (not (equal ecb-use-speedbar-instead-native-tree-buffer 'dir))))
+ ;; first we act depending on the value of
+ ;; ecb-use-speedbar-instead-native-tree-buffer
(when (not set-directories-buffer)
(condition-case error-data
(ecb-set-speedbar-buffer)
@@ -1995,7 +1997,7 @@ during evaluating BODY the current window is always dedicated at the end!"
(error (message "%s" error-data)
(setq set-directories-buffer t))))
;; maybe we need to set the standard directories buffer:
- ;; - if ecb-use-speedbar-for-directories is nil or
+ ;; - if ecb-use-speedbar-instead-native-tree-buffer is not 'dir or
;; - if setting the speedbar buffer has failed.
(when set-directories-buffer
(if (featurep 'ecb-speedbar)
@@ -2008,12 +2010,46 @@ during evaluating BODY the current window is always dedicated at the end!"
(ecb-with-dedicated-window (ecb-speedbar-set-buffer)))
(defun ecb-set-sources-buffer ()
- (ecb-with-dedicated-window
- (switch-to-buffer ecb-sources-buffer-name)))
+ (let ((set-sources-buffer
+ (not (equal ecb-use-speedbar-instead-native-tree-buffer 'source))))
+ ;; first we act depending on the value of
+ ;; ecb-use-speedbar-instead-native-tree-buffer
+ (when (not set-sources-buffer)
+ (condition-case error-data
+ (ecb-set-speedbar-buffer)
+ ;; setting the speedbar buffer has failed so we set
+ ;; set-sources-buffer to t ==> standard-sources-buffer is set!
+ (error (message "%s" error-data)
+ (setq set-sources-buffer t))))
+ ;; maybe we need to set the standard sources buffer:
+ ;; - if ecb-use-speedbar-instead-native-tree-buffer is not 'source or
+ ;; - if setting the speedbar buffer has failed.
+ (when set-sources-buffer
+ (if (featurep 'ecb-speedbar)
+ (ignore-errors (ecb-speedbar-deactivate)))
+ (ecb-with-dedicated-window
+ (switch-to-buffer ecb-sources-buffer-name)))))
(defun ecb-set-methods-buffer ()
- (ecb-with-dedicated-window
- (switch-to-buffer ecb-methods-buffer-name)))
+ (let ((set-methods-buffer
+ (not (equal ecb-use-speedbar-instead-native-tree-buffer 'method))))
+ ;; first we act depending on the value of
+ ;; ecb-use-speedbar-instead-native-tree-buffer
+ (when (not set-methods-buffer)
+ (condition-case error-data
+ (ecb-set-speedbar-buffer)
+ ;; setting the speedbar buffer has failed so we set
+ ;; set-method-buffer to t ==> standard-methods-buffer is set!
+ (error (message "%s" error-data)
+ (setq set-methods-buffer t))))
+ ;; maybe we need to set the standard methods buffer:
+ ;; - if ecb-use-speedbar-instead-native-tree-buffer is not 'method or
+ ;; - if setting the speedbar buffer has failed.
+ (when set-methods-buffer
+ (if (featurep 'ecb-speedbar)
+ (ignore-errors (ecb-speedbar-deactivate)))
+ (ecb-with-dedicated-window
+ (switch-to-buffer ecb-methods-buffer-name)))))
(defun ecb-set-history-buffer ()
(ecb-with-dedicated-window
Oops, something went wrong.

0 comments on commit 2556d3e

Please sign in to comment.