Skip to content

Commit

Permalink
- Now speedbar is required (incl. version check)
Browse files Browse the repository at this point in the history
- Added support for hideshow.el
  • Loading branch information
berndl committed Jul 4, 2003
1 parent b17d4bf commit 4d76274
Show file tree
Hide file tree
Showing 8 changed files with 545 additions and 387 deletions.
29 changes: 17 additions & 12 deletions Makefile
@@ -1,6 +1,6 @@
# This Makefile byte-compiles the ECB lisp files and generates online-help.

# $Id: Makefile,v 1.63 2003/06/13 15:13:06 berndl Exp $
# $Id: Makefile,v 1.64 2003/07/04 16:25:46 berndl Exp $

# ========================================================================
# User configurable section
Expand All @@ -12,19 +12,21 @@
# Define here the correct path to your Emacs or XEmacs binary
EMACS=emacs

# If semantic and eieio are added to load-path within some elisp-statements
# in the Emacs initialisation-files (e.g. .emacs or site-start.el) then set
# here again the load-path of the semantic-version and eieio-version loaded
# into your Emacs (use always FORWARD-SLASHES as directory-separator even
# with MS Windows systems). Make sure you compile ECB with the semantic-
# and eieio-version you load into Emacs!
# If semantic, eieio and speedbar are added to load-path within some
# elisp-statements in the Emacs initialisation-files (e.g. .emacs or
# site-start.el) then set here again the load-path of the semantic-version,
# the eieio-version and the speedbar-version loaded into your Emacs (use
# always FORWARD-SLASHES as directory-separator even with MS Windows
# systems). Make sure you compile ECB with the semantic-, eieio- and
# speedbar-version you load into Emacs!

# If you are using XEmacs with already installed xemacs-packages for
# semantic and eieio or if you are using a file subdirs.el with GNU Emacs
# which adds semantic and eieio then there is NO need to set the load-path
# for semantic or eieio.
# semantic, eieio and speedbar or if you are using a file subdirs.el with
# GNU Emacs which adds semantic, eieio and speedbar then there is NO need
# to set the load-path for semantic, eieio or speedbar.
SEMANTIC=
EIEIO=
SPEEDBAR=

# You can set here more load-paths to arbitrary packages if you want. But
# this is really not necessary!
Expand All @@ -39,7 +41,7 @@ LOADPATH=
# or
#
# make SEMANTIC="path/to/semantic" EIEIO="path/to/eieio" \
# EMACS="path/to/emacs"
# SPEEDBAR="path/to/speedbar "EMACS="path/to/emacs"
#
# if you want to set either different load-pathes or Emacs-binary and
# you do not want edit the Makefile. Do not forget quoting the arguments
Expand Down Expand Up @@ -91,7 +93,7 @@ INSTALLINFO=/usr/bin/install-info

# Do not change anything below!

# $Id: Makefile,v 1.63 2003/06/13 15:13:06 berndl Exp $
# $Id: Makefile,v 1.64 2003/07/04 16:25:46 berndl Exp $

# For the ECB-maintainers: Change the version-number here and not
# elsewhere!
Expand Down Expand Up @@ -141,6 +143,9 @@ ecb: $(ecb_LISP_EL)
@if test ! -z "${EIEIO}"; then\
echo "(add-to-list 'load-path \"$(EIEIO)\")" >> ecb-compile-script; \
fi
@if test ! -z "${SPEEDBAR}"; then\
echo "(add-to-list 'load-path \"$(SPEEDBAR)\")" >> ecb-compile-script; \
fi
@if test ! -z "${LOADPATH}"; then\
for loadpath in ${LOADPATH}; do \
echo "(add-to-list 'load-path \"$$loadpath\")" >> ecb-compile-script; \
Expand Down
23 changes: 13 additions & 10 deletions README
Expand Up @@ -16,15 +16,18 @@ Requirements
------------

ECB requires the following packages:

- Semantic, author version between 1.4 and 1.4.9
(http://cedet.sourceforge.net/semantic.shtml)

- Eieio, author version between 0.17 and 0.17.9
(http://cedet.sourceforge.net/eieio.shtml).

- 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 or if
non-semantic-sources should be parsed and displayed.
- speedbar, author version 0.14beta1 or higher
(http://cedet.sourceforge.net/speedbar.shtml)
IMPORTANT: The speedbar-version shipped with GNU Emacs <= 21.3 does not
satisfy the requirements - download and install a newer one!

- Optional: If Java code is edited the ECB works best when the JDE package
(http://sunsite.auc.dk/jde) is installed.

Expand All @@ -46,20 +49,20 @@ with `ecb-activate' or read the online-help with `ecb-show-help'.

1. Unpack the ECB archive (probably you have already done this :-)

2. Install the required semantic- and eieio-version.
2. Install the required semantic-, eieio- and speedbar-version.

*Note*: ECB maybe requires a newer version of these libraries than shipped
with (X)Emacs. You have to install exactly a version ECB requires and also
to make sure that the correct version is loaded into (X)Emacs!

But ECB performs two automatic checks:

- At load-time: It checks if the packages semantic and eieio are at least
installed so ECB can be loaded. If not it offers to download and
install them.
- At load-time: It checks if the packages semantic, eieio and speedbar are
at least installed so ECB can be loaded. If not it offers to download
and install them.

- At start-time: It checks if the correct versions of semantic and eieio
are installed and gives you proper feedback.
- At start-time: It checks if the correct versions of semantic, eieio and
speedbar are installed and gives you proper feedback.

So if you are not sure if you have installed the required packages at all
or if you have installed the correct versions of these packages then do
Expand Down
2 changes: 2 additions & 0 deletions RELEASE_NOTES
Expand Up @@ -26,6 +26,8 @@ Some default keybindings have changed; the new bindings are:
C-c . lt: `ecb-toggle-layout'
C-c . lw: `ecb-toggle-ecb-windows'

ECB now requires speedbar. ECB needs a version >= 0.14beta1.


Upgrading from versions >= 1.90:
--------------------------------
Expand Down
20 changes: 10 additions & 10 deletions ecb-layout.el
Expand Up @@ -110,14 +110,15 @@
;; For the ChangeLog of this file see the CVS-repository. For a complete
;; history of the ECB-package see the file NEWS.

;; $Id: ecb-layout.el,v 1.166 2003/06/23 14:13:40 berndl Exp $
;; $Id: ecb-layout.el,v 1.167 2003/07/04 16:25:45 berndl Exp $

;;; Code:

(eval-when-compile
(require 'silentcomp))

(require 'ecb-util)
(require 'ecb-speedbar)
(require 'ecb-compilation)
(require 'ecb-create-layout)

Expand Down Expand Up @@ -1857,6 +1858,10 @@ special ecb-window."
"Used with `ecb-toggle-ecb-windows'. If true the ECB windows are hidden. Do
not change this variable!")

;; TODO: Klaus Berndl <klaus.berndl@sdm.de>: For left-right-layouts: Not only
;; hiding all the ecb-windows but offering to hide only one of the left or the
;; right column. Maybe toggling in the sequence "Hide left" --> "Hide all" -->
;; Hide right" --> "Show all". But i (Klaus) think this is not so easy........
(defun ecb-toggle-ecb-windows (&optional arg)
"Toggle visibilty of the ECB-windows.
With prefix argument ARG, make visible if positive, otherwise invisible.
Expand Down Expand Up @@ -2000,13 +2005,11 @@ during evaluating BODY the current window is always dedicated at the end!"
;; - 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)
(ignore-errors (ecb-speedbar-deactivate)))
(ignore-errors (ecb-speedbar-deactivate))
(ecb-with-dedicated-window
(switch-to-buffer ecb-directories-buffer-name)))))

(defun ecb-set-speedbar-buffer ()
(require 'ecb-speedbar)
(ecb-with-dedicated-window (ecb-speedbar-set-buffer)))

(defun ecb-set-sources-buffer ()
Expand All @@ -2025,8 +2028,7 @@ during evaluating BODY the current window is always dedicated at the end!"
;; - 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)))
(ignore-errors (ecb-speedbar-deactivate))
(ecb-with-dedicated-window
(switch-to-buffer ecb-sources-buffer-name)))))

Expand All @@ -2046,8 +2048,7 @@ during evaluating BODY the current window is always dedicated at the end!"
;; - 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)))
(ignore-errors (ecb-speedbar-deactivate))
(ecb-with-dedicated-window
(switch-to-buffer ecb-methods-buffer-name)))))

Expand Down Expand Up @@ -2619,8 +2620,7 @@ this function the edit-window is selected which was current before redrawing."
(ecb-update-directories-buffer))
;; deactivate the speedbar stuff if the speedbar-integration-buffer
;; was shown before but not now
(when (and (featurep 'ecb-speedbar)
(member (get-buffer ecb-speedbar-buffer-name)
(when (and (member (get-buffer ecb-speedbar-buffer-name)
ecb-windows-before-redraw)
(not (member (get-buffer ecb-speedbar-buffer-name)
current-ecb-windows)))
Expand Down

0 comments on commit 4d76274

Please sign in to comment.