Rewritten to show a tabbed-dialog.
(ada-prj-add-ada-menu): Remove the map and name parameters.
(ada-prj-display-page, ada-prj-field, ada-prj-initialize-values):
New function
(ada-prj-load-directory, ada-prj-subdirs-of): New functions
(ada-prj-load-from-file): New function
(ada-prj-save): Always save fields that depend on the current buffer
(ada-prj-show-value): New function
(ada-stmt-add-to-ada-menu): Hide the menu if not in
Ada mode. This will allow us to display the Ada menu in any buffer
we want (for project items).
(ada-header-tmpl): Use ada-fill-comment-prefix to put the correct
number of spaces in the header.
Got rid of all byte-compiler warnings on Emacs.
Add to the menu when the file is loaded, not in ada-mode-hook.
Add -toolbar to the default ddd command Switches moved from
ada-prj-default-comp-cmd and ada-prj-default-make-cmd to
ada-prj-default-comp-opt
(ada-add-ada-menu): Remove the map and name parameters Add the Ada
Reference Manual to the menu
(ada-check-current): rewritten as a call to ada-compile-current
(ada-compile): Removed.
(ada-compile-application, ada-compile-current, ada-check-current):
Set the compilation-search-path so that compile.el automatically
finds the sources in src_dir. Automatic scrollong of the
compilation buffer. C-uC-cC-c asks for confirmation before
compiling
(ada-compile-current): New parameter, prj-field
(ada-complete-identifier): Load the .ali file before doing
processing
(ada-find-ali-file-in-dir): prepend build_dir to obj_dir to
conform to gnatmake's behavior.
(ada-find-file-in-dir): New function
(ada-find-references): Set the environment variables for gnatfind
(ada-find-src-file-in-dir): New function.
(ada-first-non-nil): Removed
(ada-gdb-application): Add support for jdb, the java debugger.
(ada-get-ada-file-name): Load the original-file first if not done
yet.
(ada-get-all-references): Handles the new ali syntax (parent types
are found between <>).
(ada-initialize-runtime-library): New function
(ada-mode-hook): Always load a project file when a file is opened,
so that the casing exceptions are correctly read.
(ada-operator-re): Add all missing operators ("abs", "rem", "**").
(ada-parse-prj-file): Use find-file-noselect instead of find-file
to open the project file, since the latter does not work with
speedbar Get default values before loading the prj file, or the
default executable file name is wrong. Use the absolute value of
src_dir to initialize ada-search-directories and
compilation-search-path,... Add the standard runtime library to
the search path for find-file.
(ada-prj-default-debugger): Was missing an opening '{'
(ada-prj-default-bind-opt, ada-prj-default-link-opt): New
variables.
(ada-prj-default-gnatmake-opt): New variable
(ada-prj-find-prj-file): Handles non-file buffers For non-Ada
buffers, the project file is the default one Save the windows
configuration before displaying the menu.
(ada-prj-src-dir, ada-prj-obj-dir, ada-prj-comp-opt,...): Removed
(ada-read-identifier): Fix xrefs on operators (for "mod", "and",
...) regexp-quote identifiers names to support operators +,
-,... in regexps.
(ada-remote): New function.
(ada-run-application): Erase the output buffer before starting the
run Support remote execution of the application. Use
call-process, or the arguments are incorrectly parsed
(ada-set-default-project-file): Reread the content of the active
project file, not the one from the current buffer When a project
file is set as the default project, all directories are
automatically associated with it.
(ada-set-environment): New function
(ada-treat-cmd-string): New special variable ${current}
(ada-treat-cmd-string): Revised. The substitution is now done for
any ${...} substring
(ada-xref-current): If no body was found, compiles the spec
instead. Setup ADA_{SOURCE,OBJECTS}_PATH before running the
compiler to get rid of command line length limitations.
(ada-xref-get-project-field): New function
(ada-xref-project-files): New variable
(ada-xref-runtime-library-specs-path)
(ada-xref-runtime-library-ali-path): New variables
(ada-xref-set-default-prj-values): Default run command now does a
cd to the build directory. New field: main_unit Provide a default
file name even if the current buffer has no prj file.
(c-lineup-multi-inher): Handle lines with
leading comma nicely. Extended to handle member initializers
too.
(c-gnu-impose-minimum): Don't impose minimum
indentation on cpp-macro lines.
(c-indent-new-comment-line): Added a kludge
similar to the one in c-fill-paragraph to check the fill
prefix from the adaptive fill function for sanity.
(c-electric-brace): Fixed some bugs in the state
handling that caused class open lines to be recognized as
statement-conts in some cases.
(c-indent-new-comment-line): Keep the fill prefix
guessed by the adaptive fill function unless point is on the
first line of a block comment.
(c-indent-command): Obey c-syntactic-indentation.
(c-electric-brace, c-electric-slash,
c-electric-star, c-electric-semi&comma, c-electric-colon,
c-electric-lt-gt, c-electric-paren): Don't reindent old lines
when c-syntactic-indentation is nil.
(c-fill-paragraph): Keep one or two spaces
between the text and the block comment ender when it hangs,
depending on how many there are before the fill.
(c-indent-new-comment-line): Always break
multiline comments in multiline mode, regardless of
comment-multi-line.
(c-end-of-defun-1): Fixed forward scanning into
defun block.
(c-auto-newline): Removed this macro since it's
not used anymore.
(c-forward-comment): Removed the workaround
introduced in 5.38 since it had worse side-effects. If a line
contains the string "//\"", it regarded the // as a comment
start since the \ temporarily doesn't have escape syntax.
(c-looking-at-inexpr-block): Replaced a call to
c-beginning-of-statement-1 that caused a bad case of recursion
which could consume a lot of CPU in large classes in languages
that have in-expression classes (i.e. Java and Pike).
(c-guess-basic-syntax): Check for in-expression
statements before top level constructs (i.e. case 6 is moved
before case 5 and is now case 4) to catch in-expression
classes in top level expressions correctly.
(c-guess-basic-syntax): Less naive handling of
objc-method-intro. Case 4 removed and case 5I added.
(c-beginning-of-inheritance-list,
c-guess-basic-syntax): Fixed recognition of inheritance lists
when the lines begins with a comma.
(c-forward-syntactic-ws): Fixed an infloop bug
when the buffer ends with a macro continuation char.
(c-guess-basic-syntax): Added support for
function definitions as statements in Pike. The first
statement in a lambda block is now labeled defun-block-intro
instead of statement-block-intro.
(c-narrow-out-enclosing-class): Whack the state
so that the class surrounding point is selected, not the one
innermost in the state.
(c-guess-basic-syntax): Fixed bug in
recognition of switch labels having hanging multiline
statements.
(c-beginning-of-member-init-list): Broke out
some code in c-guess-basic-syntax to a separate function.
(c-just-after-func-arglist-p): Fixed
recognition of member inits with multiple line arglists.
(c-guess-basic-syntax): New case 5B.3 to detect
member-init-cont when the commas are in funny places.
(c-looking-at-bos): New helper function.
(c-looking-at-inexpr-block): More tests to tell
inexpr and toplevel classes apart in Pike.
(c-guess-basic-syntax): Fixed bogus recognition
of case 9A.
(c-guess-basic-syntax): Made the cpp-macro
a syntax modifier like comment-intro, to make it possible to
get syntactic indentation for preprocessor directives. It's
incompatible wrt to lineup functions on cpp-macro, but it has
no observable effect in the 99.9% common case where cpp-macro
is set to -1000.
(c-guess-basic-syntax): Fixed bug with missed
member-init-cont when the preceding arglist is several lines.
(c-beginning-of-statement-1): Fixed bug where
we were left at comments preceding the first statement when
reaching the beginning of the buffer.
(c-beginning-of-closest-statement): New helper
function to go back to the closest preceding statement start,
which could be inside a conditional statement.
(c-guess-basic-syntax): Use
c-beginning-of-closest-statement in cases 10B.2, 17B and 17C.
(c-guess-basic-syntax): Better handling of
arglist-intro, arglist-cont-nonempty and arglist-close when
the arglist is nested inside parens. Cases 7A, 7C and 7F
changed.
(c-beginning-of-statement-1): Fixed handling of
multiline Pike type decls.
(c-guess-basic-syntax): Fixed bug with
fully::qualified::names in C++ member init lists. Preamble in
case 5D changed.
(c-append-paragraph-start): New variable used by
c-common-init to get paragraph-start correct.
(c-common-init): Use c-append-paragraph-start to
initialize paragraph-start to make it correct both with and
without the javadoc special case.
(c-Pike-inexpr-class-key): New
constant, since "class" can introduce an in-expression class
in Pike nowadays.
(c-Java-javadoc-paragraph-start): Brought
up-to-date with javadoc 1.2.
(c-common-init): Handling of obsolete variables
moved to c-initialize-cc-mode. More compatible style override
when using global style variables.
(c-initialize-cc-mode): Handling of obsolete
variables moved here.
(java-mode): Use c-append-paragraph-start to
initialize paragraph-start for javadoc markup.
(c-style-alist): The basic offset for the BSD
style corrected to 8.
(c-style-alist): Adjusted the indentation of
brace list openers in the gnu style.
(c-make-styles-buffer-local): Flag style
variable localness in c-style-variables-are-local-p to make
the compatibility measure in c-common-init work well.
(c-set-style-1): c-special-indent-hook can no
longer contain set-from-style.
(c-initialize-builtin-style): Don't check for
set-from-style on c-special-indent-hook.
(c-copy-tree): Obsolete. The standard function
copy-alist is sufficient now.
(c-set-style, c-set-style-1,
c-get-style-variables): Fixes to variable initialization so
that duplicate entries in styles have the same effect
regardless of DONT-OVERRIDE.
(c-set-style-2): Fixed bug where the
initialization of inheriting styles failed when the
dont-override flag is set.
(c-style-variables-are-local-p): Incompatible
change by defaulting this to t. It's motivated by the
confusing behavior that otherwise arise from the style system
when editing both java and non-java files at the same time
(see the comments about style setting in c-common-init).
(c-offsets-alist): Changed default for
member-init-cont to c-lineup-multi-inher since it now handles
member initializers and indents better for leading commas.
(c-syntactic-indentation): New variable to turn
off all syntactic indentation.
(c-special-indent-hook): Don't use set-from-style
on this.
(fontset_ref): Remove INLINE declaration.
(fontset_ref_via_base): Likewise.
(Fset_fontset_font): Convert FAMILY and REGISTRY specifications
to downcase.
Documented the special behavior of
c-special-indent-hook as a style variable. Don't talk about
doing (c-make-styles-buffer-local t) in a mode hook, since
that's already too late to work right.
(type-break): perform autosave.
Suggested by Stephen Gildea <gildea@intouchsys.com>.
(type-break-do-query): Cancel query schedule while performing
actual query, to avoid possibility of a second query being made
while first one is already in progress.
(type-break-time-stamp-format): New variable.
(type-break-time-stamp): New function.
(type-break-time-warning): Use it.
(type-break-keystroke-warning): Use it.
(type-break-noninteractive-query): Use it.
(eldoc-minor-mode-string): Add autoload cookie; otherwise autoloaded
add-minor-mode call complains in Emacs 21.
Use add-minor-mode to set minor-mode-alist, if available.
(eldoc-echo-area-use-multiline-p): New user option.
(eldoc-echo-area-multiline-supported-p): New variable.
(eldoc-docstring-format-sym-doc): Use them.
(eldoc-mode): If not using idle timers, append to local post and
pre command hooks. Suggested by David Byers <davby@ida.liu.se>.
(eldoc-display-message-no-interference-p): Don't interfere with edebug.
Add autoload cookie for eldoc-mode minor-mode-alist initialization.
(eldoc-function-arglist): New function.
(eldoc-function-argstring): Use it.
Eli Zaretskii [Sun, 23 Jul 2000 13:03:16 +0000 (13:03 +0000)]
(IT_note_mouse_highlight): Process overlays in the
correct order of priority. If help echo was found in an overlay,
use that overlay as the object in which the help echo was found.
(foreach_window): Instead of a fake variable argument
list, take one USER_DATA argument.
(foreach_window_1): Likewise, and call callback functions with two
args, the window and USER_DATA.
(struct check_window_data): New struct.
(check_window_containing): Use it.
(window_from_coordinates): Set up a struct check_window_data for
foreach_window.
(add_window_to_list, freeze_window_start): Change parameters
according to new calling convention.
(info-lookup): If *info* is shown in another frame
on the same display, select that frame, instead of switching to
the Info buffer in another window of the selected frame.
Dave Love [Thu, 20 Jul 2000 17:29:46 +0000 (17:29 +0000)]
(goto-address-fontify): Don't bother with buffer-modified and read-only
stuff -- irrelevant with overlays. Put an extra property on the
overlays and use it to clean up in case goto-address is re-run.
Eli Zaretskii [Thu, 20 Jul 2000 11:09:12 +0000 (11:09 +0000)]
(IT_note_mode_line_highlight, IT_note_mouse_highlight):
Record the object that generated the help echo and the position of
that object in help_echo_object and help_echo_pos. Record that
some glyphs in a row are displayed in mouse-face.
(IT_update_begin): Don't clear mouse highlight unless one of the
enabled glyph rows is marked as being displayed in mouse-face.
(dos_rawgetc): Generate 2 events for HELP_EVENT. Pass the object
and position recorded in help_echo_object and help_echo_pos to the
event queue.
(IT_menu_display): Accept a new argument PN: the pane number of
the current menu pane. Record the pane number and the item
number of the item which has associated help string.
(XMenuActivate): Update the prototype for help_callback in
function declaration. Call IT_menu_display with the current menu
pane number as an additional argument. Call help_callback with
two additional arguments: the pane number and the item number of
the menu item associated with the help text.
(help_echo_object, help_echo_pos): New variables.
(syms_of_msdos): Initialize them and staticpro help_echo_object.
(help_echo_window): New variable.
(syms_of_msdos): Initialize and staticpro it.
(IT_note_mode_line_highlight): Set help_echo_window.
(IT_note_mouse_highlight): Ditto.
(dos_rawgetc): Store help_echo_window in the second event produced
for HELP_EVENTs.
Dave Love [Wed, 19 Jul 2000 15:52:02 +0000 (15:52 +0000)]
(popup-menu): Allow a list of keymaps for menu arg.
(mouse-popup-menubar, mouse-popup-menubar-stuff): New functions.
(global-map): Bind c-down-mouse-3 to mouse-popup-menubar-stuff.
Don't include <X11/bitmaps/gray> because that
leads to redefinition errors when static is defined as empty in
config.h. Refer to the gray bitmap in xfns.c, instead.
(help_echo_window): New variable.
(note_mouse_highlight, note_tool_bar_highlight): Set
help_echo_window.
(XTread_socket): Pass help_echo_window to gen_help_event.
(syms_of_xterm): Initialize and staticpro help_echo_window.