At 12:54 PM 7/11/00 -0500, you wrote:
>I just upgraded to JDE 2.1.9 and it obviously broke my customization of
supporting a list of regular expressions for the
jde-wiz-insert-excluded-packages-regexp
>customizable variable.  (Is there some way of having an "or list" in the
regexp?  I don't know of a way, and that's why I want the list...besides
the list is
>easier to edit ;^).
>
>Anyway, I understand not wanting to break existing code.  So I created a
new customizable variable called
jde-wiz-insert-excluded-packages-regexp-list which is a
>list of regexps.  I then modified the code so that
jde-wiz-strip-excluded-imports excludes for both variables.
>

Is there any reason for having both of these variables other than
preserving existing prj.el files. The list variable seems to include the
non-list variable. So why not just have a list of regexps for classes to
exclude?

- Paul

>I also made a fix to the jde-wiz-choose-imports function so that it works
correctly if pop-up-windows is set to nil (I use that setting, and JDE was
improperly
>deleting my windows).  The following is the updated jde-wiz.el file:
>
>;;; jde-wiz.el
>;; $Revision: 1.23 $
>
>;; Author: Paul Kinnucan <[EMAIL PROTECTED]>
>;; Maintainer: Paul Kinnucan
>;; Keywords: java, tools
>
>;; Copyright (C) 1997, 1998 Paul Kinnucan.
>
>;; GNU Emacs is free software; you can redistribute it and/or modify
>;; it under the terms of the GNU General Public License as published by
>;; the Free Software Foundation; either version 2, or (at your option)
>;; any later version.
>
>;; GNU Emacs is distributed in the hope that it will be useful,
>;; but WITHOUT ANY WARRANTY; without even the implied warranty of
>;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>;; GNU General Public License for more details.
>
>;; You should have received a copy of the GNU General Public License
>;; along with GNU Emacs; see the file COPYING.  If not, write to the
>;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
>;; Boston, MA 02111-1307, USA.
>
>(require 'beanshell)
>
>;; begin JVL enhancement contributed by Jim LoVerde <[EMAIL PROTECTED]>
>(defcustom jde-wiz-insert-excluded-packages-regexp-list '("bsh.*")
>  "*Specifies classes that should not be imported into a source file.
>The value of this variable should be a regular expression. The
`jde-wiz-find-and-import' command does not import any classes whose fully
qualified names matchthe
>regular expression. If more than one fully qualified class name matches
theunqualified name that you specify, the command prompts you to select
only the classes
>that do not match the regular expression."
>  :group 'jde-project
>  :type '(repeat (string :tag "Command")))
>;; end JVL enhancement contributed by Jim LoVerde <[EMAIL PROTECTED]>
>
>(defcustom jde-wiz-insert-excluded-packages-regexp "bsh.*"
>  "*Specifies classes that should not be imported into a source file.
>The value of this variable should be a regular expression. The
`jde-wiz-find-and-import' command does not import any classes whose fully
qualified names matchthe
>regular expression. If more than one fully qualified class name matches
theunqualified name that you specify, the command prompts you to select
only the classes
>that do not match the regular expression."
>  :group 'jde-project
>  :type 'string)
>
>(defun jde-wiz-update-class-list()
>  "Update the class list used to resolve class names.
>The first time you invoke a JDE wizard, the JDE builds a list of all
classes on the classpath
>defined by jde-global-classpath. Wizards use this list to resolve
unqualified class names. If you add any classes to the classpath after
invoking a wizard, you
>should update the class list."
>  (interactive)
>  (message "Rescanning classes..." )
>  (bsh-eval "jde.util.JdeUtilities.buildClassList();" )
>  (message "Rescanning classes...Complete"))
>
>
>(defun jde-wiz-get-imports()
>  (let ((import-re "import[ ]+\\(.*\\)[ ]*;")
> (imports nil))
>    (save-excursion
>      (goto-char (point-max))
>      (while (re-search-backward import-re (point-min) t)
> (looking-at import-re)
> (setq imports (nconc imports
>        (list (buffer-substring-no-properties
>        (match-beginning 1)
>        (match-end 1)))))))
>    imports))
>
>(defun jde-wiz-get-package-name ()
>  (let ((package-re "package[ \t]+\\(.*\\)[ \t]*;"))
>    (save-excursion
>      (goto-char (point-max))
>      (when (re-search-backward package-re (point-min) t)
> (looking-at package-re)
> (buffer-substring-no-properties
>         (match-beginning 1)
>         (match-end 1))))))
>
>(defun jde-wiz-get-import-insertion-point ()
>  (let ((ip-re
>  (list (cons "import[ ]+\\(.*\\)[ ]*;" 'backward)
>        (cons "package[ \t]+\\(.*\\)[ \t]*;" 'backward)
>        (cons "^$" 'forward)))
> insertion-point n)
>    (save-excursion
>      (let ((i 0)
>     (n (length ip-re)))
> (while (and
>  (not insertion-point)
>  (< i n))
>   (let ((re (car (nth i ip-re)))
>  (direction (cdr (nth i ip-re))))
>     (if (eq direction 'forward)
>  (progn
>    (goto-char (point-min))
>    (setq insertion-point (re-search-forward re (point-max) t)))
>       (goto-char (point-max))
>       (setq insertion-point (re-search-backward re (point-min) t)))
>     (when insertion-point
>       (forward-line 1)
>       (setq insertion-point (point))))
>   (setq i (+ i 1)))))
>    insertion-point))
>
>
>(defun jde-wiz-import (class)
>  "*Insert an import statement for a class in the current buffer.
>CLASS is the fully qualified name of the class to be imported. This
>function allows you to enter an import at the head of your buffer
>from any point in the buffer. The function does nothing if an import
>statement for the specified class alrady exists."
>  (interactive
>   "sClass: ")
>  (jde-wiz-insert-imports (list class)))
>
>;; Contributed by David Ponce <[EMAIL PROTECTED]>
>(defun jde-sort-imports (&optional reverse)
>  "Sort Java import statements alphabetically. In reverse order if
>REVERSE is non-nil.
>
>Usage:
>  \\[jde-sort-imports] sort import statements ascending.
>  \\[universal-argument] \\[jde-sort-imports] sort descending.
>
>The the current buffer must be in `jde-mode'. This command uses the
>semantic Java parser and requires JDE 2.1.6-beta24 and above."
>  (interactive "P")
>  (or (eq major-mode 'jde-mode)
>      (error "Invalid major mode found. Must be 'jde-mode'."))
>  (or (and (local-variable-p 'semantic-toplevel-bovine-table
(current-buffer))
>           (symbol-value 'semantic-toplevel-bovine-table))
>      (error "Semantic Java parser not found. JDE 2.1.6-beta24+
>needed."))
>  (and (interactive-p)
>       (consp current-prefix-arg)
>       (setq reverse t))
>  (let* ((tokens  (semantic-bovinate-toplevel nil nil t))
>         (depends (semantic-find-nonterminal-by-token 'include tokens)))
>    (if depends
>        (let* ((first-import-token (car depends))
>               (last-import-token  (nth (1- (length depends)) depends))
>               (start (semantic-token-start first-import-token))
>               (end   (semantic-token-end   last-import-token)))
>          (if (and start end)
>              (let (sort-fold-case)
>                (sort-lines reverse start end)
>                (goto-char start)))))))
>
>
>(defun jde-wiz-strip-package-from-class (class-name)
>  "Strips the package name from fully qualified java class"
>  (let (i return-name)
>    (setq return-name class-name)
>    (setq i (string-match "[^.]*$" class-name))
>    (if i
>        (setq return-name (substring class-name i)))
>    return-name))
>
>
>(defun jde-wiz-get-existing-import (class-name)
>  ""
>  (let ((import-re "import[ ]+\\(.*\\)[ ]*;")
> (imports nil)
>        (existing-import)
>        (result nil))
>    (save-excursion
>      (goto-char (point-max))
>      (while (re-search-backward import-re (point-min) t)
> (looking-at import-re)
>        (setq existing-import (buffer-substring-no-properties
>                               (match-beginning 1)
>                               (match-end 1)))
>        (if (string-equal class-name
>                          (jde-wiz-strip-package-from-class
>      existing-import))
>            (setq result existing-import))))
>    result))
>
>;; Thanks to Jim LoVerde<[EMAIL PROTECTED]> for providing the code to
>;; prevent duplicate imports.
>(defun jde-wiz-find-and-import (class)
>  "*Insert an import statement for a class in the current buffer.
>CLASS is an unqualified class name. This function inserts an import
>statement only if one does not already exist for the class.  This
>function searches the classpath for a class (or classes) that match
>CLASS. If it finds only one, it inserts an import statements for the
>class at the head of the current buffer. If it finds more than one
>class that matches CLASS, it prompts you to select which class to
>import. You can use the variable
>`jde-wiz-insert-excluded-packages-regexp' to prevent specified classes
>from being imported or consider for import. This command uses the
>JDE's BeanShell interpreter. It starts the interpreter if it is not
>already running so there may be a short delay generating the first
>import statement in the session. Note that you must explicitly include
>any directories or jars that you want the command to search in your
>classpath, including jars implicitly included by the jvm, e.g.,
>rt.jar."
>  (interactive
>   (list (read-from-minibuffer "Class: "
>          (thing-at-point 'symbol))))
>  (let (existing-import)
>    (setq existing-import (jde-wiz-get-existing-import class))
>    (if (not (null existing-import))
> (message "Skipping: already imported %s" existing-import)
>      (let ((imports
>      (bsh-eval-r
>       (concat "jde.util.JdeUtilities.getQualifiedName(\""
>        class "\");"))))
> (if imports
>     (jde-wiz-insert-imports imports)
>   (message "Error: could not find %s." class))))))
>
>
>(defun jde-wiz-insert-imports (new-imports)
>  (let* ((imports
>   (mapcar 'jde-wiz-strip-excluded-imports
>    (jde-wiz-strip-existing-imports new-imports
>        (jde-wiz-get-imports)))))
>    ;;Delete the nil which result from the excluded ones
>    (setq imports (delq nil imports))
>    ;; If more than one class matches the specified class name,
>    ;; prompt the user to select a class for import.
>    (if (> (length imports) 1 )
> (jde-wiz-choose-imports imports)
>      (jde-wiz-insert-imports-into-buffer imports))))
>
>
>;;; begin JVL commented out (replaced below)
>;;;(defun jde-wiz-strip-excluded-imports (new-import)
>;;;  "Removes excluded imports from the list"
>;;;  ;;if the string matchs the regexp we want to ignore it.
>;;;  (if (string-match jde-wiz-insert-excluded-packages-regexp
>;;;      (concat " " new-import))
>;;;      (progn (message "Excluding import: %s" new-import)
>;;;      ())
>;;;    new-import))
>;;; end JVL commented out
>
>;;; begin JVL change to support a list of regexps
>(defun jde-wiz-strip-excluded-imports (new-import)
>  "Removes excluded imports from the list"
>  ;;if the string matchs the regexp we want to ignore it.
>  (let ((temp-list (nconc (list jde-wiz-insert-excluded-packages-regexp)
>                          jde-wiz-insert-excluded-packages-regexp-list)))
>    (if temp-list
>        (let (i n result)
>          (setq i 0)
>          (setq n (length temp-list))
>          (setq result new-import)
>          (while (< i n)
>            (let ((exclude-regexp
>                   (nth i temp-list)))
>              (if (string-match exclude-regexp new-import)
>                  (progn
>                    (message "Excluding import: %s" new-import)
>                    (setq result nil)))
>              (setq i (+ i 1))))
>          result)
>      new-import)))
>
>(defun jde-wiz-strip-excluded-import (exclude-regexp new-import)
>  "Removes excluded imports from the list"
>  ;;if the string matchs the regexp we want to ignore it.
>  (if (string-match exclude-regexp (concat " " new-import))
>      (progn (message "Excluding import: %s" new-import)
>      ())
>    new-import))
>;;; end JVL change to support a list of regexps
>
>
>(defun jde-wiz-insert-imports-into-buffer (new-imports)
>  "Inserts imports into the correct place in the buffer."
>  (let (i n)
>    (save-excursion
>      (goto-char (jde-wiz-get-import-insertion-point))
>      (setq i 0)
>      (setq n (length new-imports))
>      (while (< i n)
> (let ((new-import
>        (nth i new-imports)))
>   (progn
>     (insert
>      (concat "import " new-import ";\n"))
>     (message "Imported %s" new-import))
>   (setq i (+ i 1)))))))
>
>
>(defun jde-wiz-strip-existing-imports (new-imports existing-imports)
>  "Exclude classes that have already been imported."
>  (let (i n return-imports)
>    (setq i 0)
>    (setq n (length new-imports))
>    (while (< i n)
>      ;;iterate through the new imports
>      (let((new-import
>     (nth i new-imports)))
> ;;Strip out those alreay there
> (when (not (find new-import existing-imports :test 'string=))
>   (setq return-imports (nconc (list new-import)
>          return-imports))))
>      (setq i(+ i 1)))
>    ;;Return any that still exist
>    return-imports))
>
>
>(defun jde-wiz-choose-imports (new-imports)
>  "Prompts the user to select a class to import from a list of similarly
> named candidates."
>  (let ((buf (get-buffer-create "*Select Import Class*" )))
>    (setq jde-wiz-import-window-config (current-window-configuration))
>    (setq jde-wiz-selected-import (car new-imports))
>    (set-buffer buf)
>    (widget-insert "Several classes match the name you specified.\n")
>    (widget-insert "Select the one you want to import.\n")
>    (widget-insert "Then click the OK button.\n" )
>    (let ((args (list
>   'radio-button-choice
>   :value (car new-imports)
>   :notify (lambda (widget &rest ignore)
>      (setq jde-wiz-selected-import (widget-value widget))
>      (message "You selected: %s"
>        (widget-value widget))))))
>      (setq args (nconc
>    args
>    (mapcar (lambda (x) (list 'item x)) new-imports)))
>      (apply 'widget-create args))
>    (widget-insert "\n")
>    (widget-create 'push-button
>     :notify (lambda (&rest ignore)
>        (let ((dialog-buffer
>        (current-buffer)))
>;; begin JVL Corrected to work if you have (setq pop-up-windows nil)
>                               (if pop-up-windows (delete-window))
>;; end JVL Corrected to work if you have (setq pop-up-windows nil)
>          (kill-buffer dialog-buffer)
>          (set-window-configuration jde-wiz-import-window-config)
>          (jde-wiz-insert-imports-into-buffer (cons
jde-wiz-selected-import nil))
>          (message "Import complete.")))
>     "Ok")
>    (use-local-map widget-keymap)
>    (widget-setup)
>    (pop-to-buffer buf)))
>
>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>;; Method Interface Implementation wizard                                  ;;
>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>
>(defun jde-wiz-get-unqualified-name (name)
>  (string-match "[^.]+$" name)
>  (substring name (match-beginning 0) (match-end 0)))
>
>
>(defun jde-wiz-update-implements-clause (interface-name)
>   (interactive
>    "sEnter interface: ")
>  (let ((interface
> (jde-wiz-get-unqualified-name interface-name)))
>    (save-excursion
>      (let* ((class-re "class[ \t]+\\([a-zA-z]+[a-zA-Z0-9._]*\\).*[ \n]*")
>      (open-brace-pos
>       (scan-lists (point) -1 1))
>      (class-name-end-pos
>       (when open-brace-pos
>  (goto-char open-brace-pos)
>  (when (re-search-backward class-re (point-min) t)
>    (looking-at class-re)
>    (match-end 1))))
>      (implements-keyword-end-pos
>       (when (and open-brace-pos class-name-end-pos)
>  (goto-char open-brace-pos)
>  (if (re-search-backward "implements" class-name-end-pos t)
>      (match-end 0)))))
> (if implements-keyword-end-pos
>     (progn
>       (goto-char implements-keyword-end-pos)
>       (insert (concat " " interface ", ")))
>   (when class-name-end-pos
>     (goto-char (- open-brace-pos 1))
>       (insert (concat " implements " interface " "))))))))
>
>
>(defun jde-wiz-implement-interface (interface-name)
>  "*Generate a skeleton implementation of a specified interface."
>  (interactive
>   "sInterface name: ")
>  (condition-case err
>      (let* ((nl-brace-p
>       (find 'before
>      (cdr (assoc 'defun-open c-hanging-braces-alist))))
>      (code
>       (bsh-eval-r
>        (concat
>  "jde.wizards.InterfaceFactory.makeInterface(\""
>  interface-name "\", true, true, "
>  (if nl-brace-p "true" "false") ");"))))
> (if code
>     (let ((required-imports
>     (bsh-eval-r
>      "jde.wizards.InterfaceFactory.getImportedClasses();")))
>       (insert code)
>       (if required-imports
>    (jde-wiz-insert-imports-into-buffer required-imports))
>       (jde-wiz-update-implements-clause interface-name))))
>    (error
>     (message "%s" (error-message-string err)))))
>
>
>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>;; Method override wizard                                                  ;;
>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>
>
>(defun jde-wiz-get-method-class ()
>  (let ((class-re "class[ \t]+\\([a-zA-z]+[a-zA-Z0-9._]*\\).*[ \n]*"))
>    (save-excursion
>      (let ((open-brace-pos
>      (scan-lists (point) -1 1)))
> (when open-brace-pos
>   (goto-char open-brace-pos)
>   (when (re-search-backward class-re (point-min) t)
>     (looking-at class-re)
>     (buffer-substring-no-properties
>       (match-beginning 1)
>       (match-end 1))))))))
>
>
>(defun jde-wiz-override-method (method-name)
>  "Overrides a method whose name you specify.
>This command creates a skeleton implementation of the
>overridden method at point. This command infers the
>qualified name of the class of the overriden method by
>prepending the package name of the current buffer to
>the class containing point. If the class defines
>more than one method of the same name, this command
>prompts you to select the desired method from a list
>of method prototypes.
>
>This command also generates import statements for
>the parameter and return types of the overridden method.
>The import statements are inserted after the last
>existing import statement or the package statement
>or the first blank line in the source file. Import
>statements are generated only for types for which an
>import statement does not already exist in the file.
>
>NOTE: this command works only if the overriding class
>      has been previously compiled."
>  (interactive
>   "sMethod name: ")
>  (condition-case err
>      (let* ((package-name (jde-wiz-get-package-name))
>      (class-name (jde-wiz-get-method-class))
>      (qualified-class-name
>       (if (and package-name class-name)
>    (concat package-name "." class-name)
>  class-name)))
> (if qualified-class-name
>     (let ((signatures
>     (bsh-eval
>      (concat
>       "jde.wizards.MethodOverrideFactory.getCandidateSignatures(\""
>       qualified-class-name "\",\"" method-name "\");") t)))
>       (if signatures
>    (if (> (length signatures) 1)
>        (jde-wiz-override-variant-method signatures)
>      (jde-wiz-override-method-internal (car signatures)  signatures))))))
>    (error
>     (message "%s" (error-message-string err)))))
>
>(defun jde-wiz-override-method-internal (selected-method methods)
>  (let* ((variant
> (position selected-method methods :test 'string=))
> (nl-brace-p
>   (find 'before
>  (cdr (assoc 'defun-open c-hanging-braces-alist))))
> (skeleton
>   (bsh-eval-r
>    (concat
>     "jde.wizards.MethodOverrideFactory.getMethodSkeleton("
>     (int-to-string variant)
>     (if nl-brace-p
>  ", true"
>       ", false")
>     ");")))
> (required-imports
>   (bsh-eval-r
>    "jde.wizards.MethodOverrideFactory.getImportedClasses();")))
>    (insert skeleton)
>    (if required-imports
> (jde-wiz-insert-imports required-imports))))
>
>
>(defun jde-wiz-override-variant-method (methods)
>  (let ((buf (get-buffer-create "*Choose Method*")))
>    (setq jde-wiz-source-buffer (current-buffer))
>    (setq jde-wiz-method-variants methods)
>    (setq jde-wiz-selected-method (car methods))
>    (set-buffer buf)
>    (widget-insert "Select the method you want to override.\n")
>    (widget-insert "Then click the Ok button.\n\n")
>    (let ((args (list
>  'radio-button-choice
>  :value (car methods)
>  :notify (lambda (widget &rest ignore)
>      (setq jde-wiz-selected-method (widget-value widget))
>      (message "You selected: %s"
>        (widget-value widget))))))
>   (setq args (nconc
>        args
>         (mapcar (lambda (x) (list 'item x)) methods)))
>   (apply 'widget-create args)
>   )
>    (widget-insert "\n")
>    (widget-create 'push-button
>     :notify (lambda (&rest ignore)
>        (let ((dialog-buffer
>        (current-buffer)))
>          (set-buffer jde-wiz-source-buffer)
>          (delete-window)
>          (kill-buffer dialog-buffer)
>          (jde-wiz-override-method-internal
>    jde-wiz-selected-method
>    jde-wiz-method-variants)
>          (message "Method inserted.")
>        ))
>       "Ok")
>    (use-local-map widget-keymap)
>    (widget-setup)
>    (pop-to-buffer buf)))
>
>
>;;
>;; Contributed by Rohit Namjoshi <[EMAIL PROTECTED]>
>;;
>(defun jde-browse-class ()
>  "Displays class at point in BeanShell class browser."
>  (interactive)
>  (condition-case err
>      (let* ((unqualified-name (thing-at-point 'symbol))
>             (class-names
>              ;;expand the names into full names, or a list of names
>              (bsh-eval-r
>               (concat "jde.util.JdeUtilities.getQualifiedName(\""
>         unqualified-name "\");")))
>             ;; Pick first match
>             (cmd (concat "browseClass(\"" (car class-names) "\");")))
>        (if (eq nil class-names)
>            (error "Cannot find %s" unqualified-name))
>        (message cmd)
>        (bsh-eval cmd))
>    (error
>     (message "%s" (error-message-string err)))))
>
>(provide 'jde-wiz)
>
>;; $Log: jde-wiz.el,v $
>;; Revision 1.23  2000/06/22 02:50:25  paulk
>;; The import wizard dialog now uses radio buttons rather than check boxes
to select
>;;  the class to import. Thanks to Mark Gibson for this enhancement.
>;;
>;; Revision 1.22  2000/06/01 06:01:14  paulk
>;; Added jde-sort-imports command. Thanks to David Ponce
<[EMAIL PROTECTED]>.
>;;
>;; Revision 1.21  2000/01/18 07:11:26  paulk
>;; Added jde-show-class-source. Thanks to Phil Lord for the initial
>;; implementation of this command.
>;;
>;; Revision 1.20  1999/12/19 07:02:30  paulk
>;; Changed import wizard to use jde.util.JdeUtilities.getQualifiedName
>;; eliminated redundancy. Thanks to Len Trigg <[EMAIL PROTECTED]>
>;; for this improvement.
>;;
>;; Revision 1.19  1999/11/01 03:11:42  paulk
>;; Added jde-browse-class contributed by Rohit Namjoshi
<[EMAIL PROTECTED]>.
>;;
>;; Revision 1.18  1999/10/17 04:35:05  paulk
>;; Fixed a line in jde-wiz.el, where an int is concat'd with some
>;; strings.  This is not allowed by XEmacs 21.1.
>;;
>;; Revision 1.17  1999/10/01 05:58:14  paulk
>;; Added jde-wiz-update-class-list function contributed by Phillip Lord.
>;;
>;; Revision 1.16  1999/09/17 06:52:50  paulk
>;; Fixed regression error where the interface wizard was putting quotes
>;; around the code inserted into the source buffer.
>;;
>;; Revision 1.15  1999/08/29 04:29:18  paulk
>;; Patches provided by Michael Ernst <[EMAIL PROTECTED]>
>;;
>;; Revision 1.14  1999/08/23 02:13:43  paulk
>;; Fixed regression bug in jde-wiz-implement-interface caused by recent
>;; change in jde-wiz-insert-imports.
>;;
>;; Revision 1.13  1999/06/22 21:12:20  paulk
>;; Added variable to filter out unwanted classes from the list of classes
being
>;; considered for import command by jde-find-and-import. The
jde-find-and-import
>;; command now prompts the user if more than one class matches the specified
>;; import name. Thanks to Phillip Lord <[EMAIL PROTECTED]> for these
enhancements.
>;;
>;; Revision 1.12  1999/05/07 20:42:25  paulk
>;; Cosmetic change.
>;;
>;; Revision 1.11  1999/05/07 20:40:49  paulk
>;; Added new command, jde-wiz-find-and-import, that, given an unqualified
class
>;; name, generates and inserts an import statement for that class.
>;;
>;; Revision 1.10  1999/02/17 19:16:07  paulk
>;; Provided more robust error handling for the interface wizard. The wizard
>;; no longer kills the bsh when it cannot create an interface and provides
>;; meaningfull error messages.
>;;
>;; Revision 1.9  1999/02/15 01:12:54  paulk
>;; Fixed bug in jde-wiz-get-method-class that caused it to fail when the
open bracket
>;; for the class was not on the same line as the class keyworkd. Thanks to
>;; [EMAIL PROTECTED] (Phillip Lord) for diagnosing this bug.
>;;
>;; Revision 1.8  1999/02/12 15:13:00  paulk
>;; Added jde-wiz-import function.
>;;
>;; Revision 1.7  1999/02/11 19:14:50  paulk
>;; Fixed bug in jde-wiz-update-implements-clause.
>;;
>;; Revision 1.6  1999/02/11 18:28:40  paulk
>;; Corrected missing parentheses.
>;;
>;; Revision 1.5  1998/11/22 22:03:43  paulk
>;; Fixed bug in interface wizard.
>;;
>;; Revision 1.4  1998/11/22 21:55:33  paulk
>;; Fixed bug in interface wizard.
>;;
>;; Revision 1.3  1998/11/21 02:41:34  paulk
>;; Fixed bug.
>;; Added implements clause update function to interface implementation
wizard.
>;;
>;; Revision 1.2  1998/11/10 00:46:39  paulk
>;; Added smart import insertion to interface wizard.
>;;
>;; Revision 1.1  1998/11/08 00:39:24  paulk
>;; Initial revision
>;;
>
>
>;; End of jde-wiz.el
>
>
>--
>****************************************************
>Jim LoVerde, Technical Architect
>Strategic Technology Resources
>http://www.str.com
>voice 312.674.4798    fax 312.697.3801
>mobile 773.398.9539    pager [EMAIL PROTECTED]
>
>
>
>Attachment Converted: "g:\eudora\attach\smime21.p7s"
>

Reply via email to