URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
[/] [or1k/] [trunk/] [insight/] [gdb/] [gdbtcl/] [ChangeLog-1998] - Rev 1765
Compare with Previous | Blame | View Log
Mon Dec 21 14:12:14 1998 Keith Seitz <keiths@cygnus.com>
* manage.tcl (manage_create): Set window geometry after window is
created.
* prefs.tcl (pref_save): Save out preferences for memory window, too.
Thu Dec 17 08:54:37 1998 Keith Seitz <keiths@cygnus.com>
* browser.tcl (fill_source): Strip off any function args
which could arise from C++ function names.
(search): Be careful of C++ functions with spaces in the name
returned from gdb_search.
Tue Dec 15 13:24:42 1998 Keith Seitz <keiths@cygnus.com>
* prefs.tcl (escape_value, unescape_value): New procs to
escape equal signs in preference values.
(pref_read): Use unescape_value whenever prefs are read.
(pref_save): Use escape_value whenever prefs are saved..
Tue Dec 15 11:07:01 1998 Keith Seitz <keiths@cygnus.com>
* process.tcl (build_win): Do not export the listbox's selection
as the X selection so that multiple listboxes can have selections
highlighted at the same time.
* stack.tcl (build_win): Ditto.
Mon Dec 14 15:53:38 1998 Keith Seitz <keiths@cygnus.com>
* watch.tcl (update): Catch errors to getLocals, which could error
if no symbol table is loaded.
* locals.tcl (update): Ditto.
1998-11-17 Fernando Nasser <fnasser@totem.to.cygnus.com>
* kod.tcl: fix <Double-1> command spec for listbox.
1998-11-13 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (bp): Pass "asm" argument to do_bp.
(do_bp): Use asm argument to determine whether to
check for multiple bps on the same src line. Remove
redundant "if" statement.
1998-11-12 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (do_bp): Fix multiple assembly
breakpoints mapping to the same line number.
Thu Nov 12 15:20:15 1998 Jim Ingham <jingham@cygnus.com>
* console.tcl (complete): I added the ability to pass from_tty
from gdb_cmd to the underlying commands. Pass 1 when the
command is invoked from the console.
* interface.tcl (gdbtk_tcl_tstart, gdbtk_tcl_tstop): Run the
src window's do_tstop method rather than manipulating the
widgets by hand.
* src.tcl (build_win): Redo the packing so that the function
combobox doesn't push all the other combo-boxes off the screen
if it has a very long function name in it.
* srcbar.tcl (do_tstop): Added a mode that just changes the
GUI, which can be called from console hooks.
* srctextwin.tcl: Fixed some bugs I introduced in setting
breakpoints in the assembly & mixed mode windows. Dropped
the notion of joint breakpoint images for lines that have
breakpoints of two separate types. Too fragile.
Also added the "dont_change_appearance" flag, used in the
continue_to_here method to tell the GUI not to reflect the
temporary disabling of all the breakpoints.
* toolbar.tcl (insert_buttons): Added a little more error-checking.
Wed Nov 11 08:40:04 1998 Fernando Nasser <fnasser@cygnus.com>
* kod.c: adjusted sizes and packing options of widgets
1998-11-10 Fernando Nasser <fnasser@totem.to.cygnus.com>
* main.tcl: small fix to the kod code as requested by the maintainers
* kod.tcl: use show kod and info <kod cmd> as per spec
Mon Nov 9 17:00:45 1998 Fernando Nasser <fnasser@cygnus.com>
* kod.tcl: New file that implements the Kernel Object Display window
* Makefile: added kod.tcl
* main.tcl: test for kod support
* manage.tcl (manage_init): support for kod
* prefs.tcl (pref_save, pref_set_defaults): ibid
* scrtextwin.tcl (config_win, do_key): ibid
* toolbar.tcl (_load_images, create_window_buttons,
create_view_menu): ibid
* tclIndex: regen
Mon Nov 9 12:09:48 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* actiondlg.tcl: Customize the stack collect string to collect
the FP reg plus 64 words of stack mem. This will work for many
targets. As noted in earlier comment, we need a way to configure
this to the specific target.
Wed Nov 4 12:41:42 1998 Jim Ingham <jingham@cygnus.com>
* actiondlg.tcl: Get the stack collect string from an instance
variable. Need to implement some way to get this from the
target settings...
* global_pref.tcl (toggle_tracing_mode): Add & remove hooks
when you go in and out of tracing mode. Also reset the B1
behavior when you leave tracing mode
* interface.tcl (gdbtk_tcl_trace_find_hook): Added the trace
find hook, so you can switch the GUI state when the tfind
command is used to enter & leave browse mode.
* srcbar.tcl (constructor, destructor trace_find_hook): Added
the trace_find_hook to the source toolbar, and added the
necessary hooks to handle it.
* srctextwin.tcl (trace_find_hook): Added a trace find hook to
the sourcebar as well.
* stack.tcl (update): protect against errors in gdb_stack.
Just return "NO STACK" if we couldn't get it.
* src_pref.tcl (constructor, cancel): Put all the saved prefs
in an array, on cancel, see if any have changed and only
rebuild the window if there have been changes.
1998-11-03 Keith Seitz <keiths@cygnus.com>
* target.tcl: Add ice target.
(GdbLoadPref): Add "after_attaching" preference.
(set_saved): Add "after_attaching" preference.
(write_saved): Add "after_attaching" preference.
(change_target): Add "after_attaching" preference.
(build_win): Add "after_attaching" entry to options
frame.
* main.tcl (set_target_name): Add ice target.
(set_target): If an "after_attaching" preference exists,
run it.
Mon Nov 2 13:24:10 1998 Jim Ingham <jingham@cygnus.com>
* bp.tcl (update): The hook function was passing more
arguments than this function expected.
Mon Nov 2 11:16:10 1998 Jim Ingham <jingham@cygnus.com>
* toolbar.tcl: Added Tdump image.
Fri Oct 30 17:36:05 1998 Jim Ingham <jingham@cygnus.com>
* src.tcl (set_execution_status): Changed status messages,
tracing is not the same as async debugging...
Fri Oct 30 17:06:31 1998 Jim Ingham <jingham@cygnus.com>
* bp.tcl (bp_all): Only remove tracepoints in the tracepoint
window, and breakpoints in the breakpoint window.
Fri Oct 30 11:22:23 1998 Jim Ingham <jingham@cygnus.com>
* actiondlg.tcl: Added special tag "Collect Stack". This
still needs to get hooked into the target database to deal
with targets that need to do something special to collect the
stack. Also moved some repeated code into loops.
* main.tcl (source_file): Source in a file of gdb commands.
* srcbar.tcl (constructor): Added source file menu entry, and
made stack buttons belong to both the Trace & Control classes.
* srctextwin.tcl (constructor): One too many separators in the
trace trace popup menu.
* tclIndex: regenerated.
* tfind_args.tcl: Added "tfind frame"
* toolbar.tcl (create_button): Allow a button to belong to
more than one class.
* toolbar.tcl (enable_ui): Eliminate redundant code, and allow
a button to belong to more than one class.
* toolbar.tcl (create_trace_menu): Added save tracepoints &
Tfind frame menu items.
* tracedlg.tcl: Added deletion of actions, and fixed a
the whiile-stepping combobox callback for the new combobox.
* util.tcl (save_trace_commands): new proc.
1998-10-29 Michael Snyder <msnyder@demo-laptop2.cygnus.com>
* target.tcl: add /dev/cua0 for Linux.
Tue Oct 27 13:46:03 1998 Jim Ingham <jingham@cygnus.com>
* Many little bug fixes all over in order to get tracing to work
along with normal program control.
* toolbar.tcl: Rewrote much of the code here to put commonly
used code into functions, and clean up adding menus and
buttons. Added the ability to disable particular menu items,
not just whole menus. Added the ability to delete and insert
buttons on the fly.
* srcbar.tcl: Pushed the changes to toolbar.tcl into this file.
* srctextwin.tcl: Changed the code dealing with breakpoints
and tracepoints to use the text tags more consistently. Use
only one set of menus for the whole widget, rather than having
a separate set for the SRC+ASM case. Rewrote a lot of the
code to separate out the tracing & program control functions.
* interface.tcl (gdbtk_tcl_breakpoint): pass more information
to the scrtextwin when a breakpoint changes state, so it can
do the right thing without having to guess...
* tracedlg.tcl (build_win): get the packing right so the
window expands correctly.
* main.tcl: do_tstop -> tstop, do_tstart -> tstart to avoid
confusion with the methods in ScrBar.tcl.
* prefs.tcl: Added two new preferences B1_Behavior to control
whether B1 sets breakpoints or tracepoints.
* src_prefs.tcl: Put in support for the B1_Behavior.
* global_prefs.tcl: Put back tracing checkbox.
* tdump.tcl: Fixed an incorrect (1 rather than 1.0) text
widget line specification.
* tfind_args.tcl (build_win): Bind return in the entry to the
OK button. Clear the entry field if the Type has changed.
* utils.tcl: Added comments for the debug commands.
* watch.tcl (build_win): Flash the OK button before invoking it.
Wed Oct 28 16:19:57 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl: Changed the _map cache to use
the variable Cname instead of the kludgy upvar alias.
Mon Oct 26 21:08:54 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (motion): Show breakpoint balloons
even when not running.
(showBPBalloon): Check for null before displaying.
Wed Oct 21 10:05:17 1998 Martin M. Hunt <hunt@cygnus.com>
* images/kod.gif: Added temporary kernel object display icon.
Wed Oct 14 17:30:07 PDT 1998 Jim Ingham <jingham@cygnus.com>
* main.tcl (gdbtk_tcl_preloop): Fixed the code to set gdb_exe_name.
I seem to have dropped a variable...
* main.tcl (_open_file): Make the open file dialog truely
modal on windows.
Wed Oct 14 14:29:17 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl: Change default runlist for remote
targets to download.
(build_win): Add user-defined list of functions for
initial breakpoints.
* main.tcl (run_executable): Set user-defined initial
breakpoints.
* prefs.tcl (pref_set_defaults): Define new prefs
gdb/load/bp_at_func and gdb/load/bp_func. These are
user-defined initial breakpoints.
Sat Oct 10 00:21:44 1998 Martin M. Hunt <hunt@cygnus.com>
* help/source.html: Add new images, add description of changes
to breakpoints and threads support. Fix typos.
* help/memory.html: Cleanup and add new information.
* help/breakpoint.html: Reformat.
* help/images: Add a bunch of new GIFs.
1998-10-08 Keith Seitz <keiths@cygnus.com>
* main.tcl (run_executable): Do not call set_exe here, either.
(_open_file): Add some comments about using set_exe
here instead of in download_it and run_executable. Do not look
for main, either, since the file hooks will take care of that.
* interface.tcl (gdbtk_tcl_pre_add_symbol): Do not reset the
source windows here -- only show the user what is going on.
(gdbtk_tcl_post_add_symbol): Force the source windows' file
comboboxes to refill, since adding a symbol file may actually
expand the debugger's view of the world.
(gdbtk_tcl_file_changed): New hook proc. Called by file_changed_hook
in symfile.c, this hook will cause the source window to point
to main/entry. gdbtk_tcl_exec_file_display actually sets up
gdbtk for this.
(gdbtk_tcl_exec_file_display): Renamed from
gdbtk_tcl_exec_file_changed for clarity. This hook is called
from exec_file_display_hook in exec_file_command. This function
sets up gdbtk to use a new executable, including resetting the
debugger's state and source window(s). See comments in this file
for more information.
* download.tcl (download_it): Don't call set_exe here and
do not touch state variables gdb_target_changed -- run_executable
will do it. (In short, make download_it one step closer to only
doing the download!)
1998-10-08 Keith Seitz <keiths@cygnus.com>
* variables.tcl (UnEdit): Fix quoting problems so that arrays may be
inspected/edited.
(edit): Ditto.
Wed Oct 7 16:03:00 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (reconfig): Fix bindings.
Wed Oct 7 13:07:00 1998 Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_create): Bind ALL source windows
Map and Unmap events.
(manage_delete): Small optimization.
(manage_iconify): When the last source window is iconified,
iconify all the support windows too. When any source
window is deiconified, deiconify everything.
* src.tcl (destructor): Destroy SrcTextWin too.
Tue Oct 6 23:00:08 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (set_status): Display only the first line of
the message.
(build_win): Configure status window to a height of 1.
* srcbar.tcl (create_menu_items): Change "Open..."
menu item to call _open_file proc. Remove old
_open_file method.
* main.tcl (run_executable): If the run command fails
with a result of "No executable" then call _open_file.
(_open_file): New proc. Opens a file requester and
sets the executable name to the selected file.
* toolbar.tcl (create_menu_items): Add "..." to Source
and Global prefs menu item.
Mon Oct 5 21:10:30 1998 Jim Ingham <jingham@cygnus.com>
* srctextwin.tcl (set_tracepoint): The filename variable
changed to current(filename) but this use was not updated.
* global_prefs: Added a global preference to turn on the
tracing. It only sets the tracing preference, and does
not cause gdb to relayout the toolbar yet...
* util.tcl: Fixed the comments for the little debug
thingie.
* util.tcl (auto_step): Added a way to cancel the
auto_stepping. This is not currently used, but with this
it could be...
Mon Oct 5 00:43:11 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (SrcTextWin): Create a threaded image
with a color of [pref get gdb/src/thread_fg].
(bind_src_tags): Bind bp_tag <Motion> and <Leave> for
balloon help on breakpoints.
(config_win): A bunch of binding changes to support
balloon help breakpoints and setting multiple BPs
on a line. Add menu item for thread specific BPs.
(reconfig): Similar changes as above.
(register_balloon): Remove.
(updateBalloon): Cleanup and don't call register_balloon.
(do_bp): When a BP is deleted, call gdb_find_bp_at_line()
to see if there are any more BPs at the same line number.
Add "thread" BP type.
(bp_line): Accept an optional list of thread numbers to
set BPs on. Loop through the list setting BPs on each thread.
(motion): Accept a window and type argument. Call
showBPBalloon in type is not "var".
(showBPBalloon): New method.Opens a balloon with breakpoint
info in it.
(showballoon): Accept window parameter.
(ask_thread_bp): New. A thread selector dialog. Opens
a scrolled listbox with a list of threads and allows
the user to multiselect threads to set BPs on.
(do_thread_bp): New callback from ask_thread_bp()
listbox.
* src_pref.tcl: Replace disabled color selector with thread
fg selector. Disabled color should probably always be
black anyways.
* util.tcl (CygScrolledListbox): Temporary simple scrolled
listbox. Replace with a better one soon.
* prefs.tcl (pref_set_defaults): Set default for thread fg.
* bp.tcl (bp_add): For thread BPs, set the button color
correctly.
* tclIndex: Rebuilt.
Fri Oct 2 17:07:32 1998 Jim Ingham <jingham@cygnus.com>
* util.tcl (debug namespace): Added helper functions
"trace_var", "remove_trace" & "remove_all_traces" which
watch a variable, and dump the stack, and its value when
it is touched... They are in the "debug" namespace.
*tclIndex: regenerate index.
Fri Oct 2 14:02:25 1998 Jim Ingham <jingham@cygnus.com>
* main.tcl (gdbtk_tcl_preloop): Catch the error when no file
is given on the command line.
1998-10-02 Keith Seitz <keiths@cygnus.com>
* srcbar.tcl (_open_file): Call SrcWin::point_to_main.
(_set_runstop): Catch the stop in case the user
aborts a session.
* srctextwin.tcl (destructor): New. Remove all previously added
hooks.
* src.tcl (point_to_main): New function. I got tired of typing
the same five lines over and over again.
* main.tcl (set_baud): Target baud preferences are stored as
[target name]-baud, not [target name]/baud.
(run_executable): Call SrcWin::point_to_main.
(gdbtk_tcl_preloop): Call SrcWin::point_to_main.
* interface.tcl (gdbtk_tcl_pre_add_symbol): Use "update idletasks", not
just "update".
(gdbtk_tcl_post_add_symbol): Rewrite to have better behavior
for symbol files which have been loaded. Use a small hack to work
with gdbtk_tcl_exec_file_changed so that we look for main only
when a new executable is loaded.
(gdbtk_tcl_exec_file_changed): New proc to do some necessary
setup when an exec file changes.
* tclIndex: Regenerate.
Fri Oct 2 11:40:05 1998 Martin M. Hunt <hunt@cygnus.com>
* Makefile (TCL): Add modal.tcl.
* tclIndex: Rebuilt.
1998-10-02 Keith Seitz <keiths@cygnus.com>
* srcbar.tcl (_set_runstop): Catch the stop in case the user
aborts a session.
Thu Oct 1 18:58:11 1998 Jim Ingham <jingham@cygnus.com>
* main.tcl (gdbtk_tcl_preloop): We were using lindex on the
return value from info files, but if the directory had a space
in it, then the result was not a proper Tcl list, and so the
command would fail. Use regexp instead...
Thu Oct 1 17:21:26 1998 Jim Ingham <jingham@cygnus.com>
* download.tcl (download_it): One more place where we used
"Foundry_Debugger" unconditionally... Stamped out.
* main.tcl (set_target): Don't put the "Trying to
communicate..." message in the window title, put it in the
status area, and remember to remove it when you are done.
Wed Sep 30 21:32:39 1998 Jim Ingham <jingham@cygnus.com>
* srctextwin.tcl (insertBreakTag): There was a bug in the
method of inserting break tags. If a tag of the intended
type did not already exist, insertBreakTag would not set it.
This method is a little less flexible, but actually works
for all our uses.
Wed Sep 30 19:42:43 1998 Jim Ingham <jingham@cygnus.com>
* src.tcl (set_execution_status): When the program has
terminated, most stubs detach. Then we need to set
gdb_target_changed here so gdb will know to reattack when
you press the Run button.
* memory.tcl (update_address): We caught the gdb_eval when you
give an address expression, but then only trapped the case
where you gave an invalid address or non-existant symbol.
Trap all the other errors as well...
Wed Sep 30 16:55:53 1998 Martin M. Hunt <hunt@cygnus.com>
* bp.tcl: Add optional "thread" column and menu items
to turn it on and off.
* prefs.tcl (pref_set_defaults): Add gdb/bp/show_threads
preference used for toggling the display of the thread
column in the BP window. Default is 0 (off).
1998-09-28 Keith Seitz <keiths@cygnus.com>
* download.tcl (download_it): Don't download if there is no executable...
Mon Sep 28 14:23:39 1998 Jim Ingham <jingham@cygnus.com>
* modal.tcl: NEW FILE. Had to fix a bug in the dialogs
so I made a sub-class: ModalDialog. The bug was that
manage.tcl sets the WM_DELETE_WINDOW handler to be
"manage delete" of the window, which is wrong for these
windows, they need to unpost themselves first. Override
this in the post method.
* mem_pref.tcl: Subclass & remove the code that went into
the ModalDialog class.
* target.tcl: ditto.
* tclIndex: regenerate for the new class.
Fri Sep 25 19:01:32 1998 Jim Ingham <jingham@cygnus.com>
* utils.tcl (freeze): Hacked the freeze method so that it comes closer
to working on Windows, but it still flashes. Use a post
method, like that im mem_prefs.tcl or target.tcl instead.
* mem_pref.tcl (post): Added post method, so you can use the
Windows EnableWindow call without sending your app into the
background when the dialog is dismissed.
* target.tcl (post): Added the same method to this class.
Really should subclass these. Will do this when we rework the
class hierarchy for Itcl3.0.
* memory.tcl (create_prefs): Use the new post method.
* main.tcl (set_target_name): Use the post method rather than
freeze.
1998-09-25 Keith Seitz <keiths@cygnus.com>
* main.tcl (set_baud): Baud rates are saved in gdb/load/target-baud,
not gdb/load/target/baud.
(set_target): Attempt to silently detach before attaching.
* target.tcl: Add gdb_target entries for Angel and ARM Remote
protocols.
1998-09-18 Keith Seitz <keiths@cygnus.com>
* interface.tcl (gdbtk_tcl_post_add_symbol): Force the source window
to 'main'; if that fails, let gdb guess based on stop_pc.
1998-09-04 Keith Seitz <keiths@cygnus.com>
* srctextwin.tcl (SrcTextWin::destructor): Define and remove
previously installed hooks.
* browser.tcl (get_selection): Listbox indices start at zero!
Clear the selection if the user clicks below the last visible
item in the listbox.
Thu Sep 3 16:43:43 1998 Jim Ingham <jingham@leda.cygnus.com>
* mem_prefs.tcl: Fixed the size & format radiogroups in
the memory preferences so that they match the format
options being sent to it by the memory window. Also
greyed out the format box when float or double is selected.
Also made sure we didn't re-enable any disabled widgets in
the idle function.
Sun Aug 30 00:40:28 1998 Martin M. Hunt <hunt@cygnus.com>
* process.tcl: New file. Implement a process/thread selection
and display window.
* srctextwin.tcl (do_key): Add entry for thread/process
window.
(config_win): Bind "Thread List" to Control-H.
(FillSource): Fix bug when source is not found.
* toolbar.tcl (create_menu_items): Add Thread List to menu
* manage.tcl (manage_init): Add process window to
managed array.
* prefs.tcl (pref_save): Add "process" to window types to save.
* Makefile: Add process.tcl
* tclIndex: Rebuilt
1998-08-28 Keith Seitz <keiths@cygnus.com>
* variables.tcl (edit): Format data so that C arrays are not
mistaken for tcl commands.
(UnEdit): Ditto.
Thu Aug 27 14:13:09 1998 Martin M. Hunt <hunt@cygnus.com>
* main.tcl (run_executable): If the target is "sim"
then the pref "sim-opts" should be treated as target
options instead of command line arguments.
Wed Aug 26 00:06:11 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (mode): Set the mode widget using entryset.
(build_win): Use default combobox selectbackground.
* srctextwin.tcl (FillMixed): Better error handling.
(LoadFIle): Stop harrassing users with worthless dialog boxes.
* main.tcl (run_executable): Set args when arguments are
given in the target dialog.
* helpViewer.tcl (insertHtml): Window may have been
closed while waiting for HTMLparse, so catch next commands
to prevent error message.
* images/stack.gif: Use the image from images2 because
it looks better.
Tue Aug 25 16:09:02 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (build_win): Change fonts on comboboxes to src-font.
* global_pref.tcl: Change to new combobox.
Tue Aug 25 11:41:43 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (insertBreakTag): Take an index
instead of a linenumber. Check for bp_tag and break_tag.
(display_breaks): Reset all lines back to break_tag
after deleting bp image. Fixes caching bug.
(do_bp): Fix up calls to insertBreakTag.
Fri Aug 21 12:44:25 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl (build_win): Remove tix stuff. Set maxheight
of comboboxes to 10. Remove all code to count elements
in comboboxes because the new one does it for us.
(fill_rates): Remove combobox height configure code.
(fill_targets): Same.
* src.tcl (build_win): Change combobox -height to
-maxheight for combobox 1.05.
(name, goto_func): Use combobox entryset instead of SetSilent.
(SetSilent): Deleted.
* srctextwin.tcl (FillSource): Fix change mode call when
no source is found.
1998-08-20 Keith Seitz <keiths@cygnus.com>
* srctextwin.tcl (print): New method. Moved from src.tcl.
* srcbar.tcl (create_menu_items): Add page setup for non-ide again..
* src.tcl (build_win): Fix balloon help for new comboboxes.
(print): Move guts to srctextwin and invoke that method.
* target.tcl: Remove protected variable tcpmode.
Add "options" member for sim and exec targets. For sim, this is
options to pass to the simulator; for exec, command line arguments.
(build_win): Replace tix comboboxes with one from libgui.
(set_saved): Add target-options when appropriate.
(write_saved): Add target-options when appropriate.
(fill_rates): Modify to work with new combobox.
(fill_targets): Modify to work with new combobox.
(config_dialog): New method which maps/unmaps/relabels comboboxes
and entries for each target.
(change_target): Remove all code pertaining to mapping/unmapping/relabeling
comboboxes and entries and call config_dialog instead.
(change_baud): Remove all code pertaining to mapping/unmapping/relabeling
comboboxes and entries and call config_dialog instead.
* console.tcl (Console): Add key binding for TAB completion.
(find_lcp): New helper method for find_completion.
(find_completion): New helper method for complete.
(complete): New method (bound to tab key) which computes the completion
of the current command line.
(reset_tab): New method to reset the tab completion whenever a key
is pressed (forces complete to recompute the completions instead of
printing out the last list of completions).
1998-08-18 Keith Seitz <keiths@cygnus.com>
* stack.tcl (update): Use new built-in command gdb_stack for
backtraces.
Use the global gdb_selected_frame_level to figure out which
line in the listbox should be highlighted.
ALWAYS highlight the selected frame.
Put a fencepost arount update so that we can prevent it from
being called twice when change_frame is used.
(change_frame): Protect call to gdbtk_update so that this object is
not updated twice.
* srctextwin.tcl (config_win): Copy the properties of the selection tag
into a new "search" tag that will be used by the search widget.
(search): Use the defined "search" tag to highlight found text.
Remove all search-tagged text from the window when an empty expression
is entered.
Mon Aug 17 14:27:54 1998 Martin M. Hunt <hunt@cygnus.com>
* main.tcl (do_tstop): Require combobox package.
* src.tcl (build_win): Use new combobox.
(name): Changes for new combobox.
(goto_func): Changes for new combobox.
(FillNameCB): Changes for new combobox.
(FillFuncCB): Changes for new combobox.
(SetSilent): New method, like tixSetSilent.
(mode): Changes for new combobox.
(set_name): Changes for new combobox.
(reset): Changes for new combobox.
* srctextwin.tcl (FillSource): Call parent's mode method when
mode is changed to assembly.
(location): Call display_breaks only if flag is set.
(LoadFIle, FillAssembly, FillMixed): Set display_breaks flag.
(display_breaks): Set all breakpoints in a single pass.
(insertBreakTag): Check $stop before trying to remove tag.
Mon Jul 27 12:35:31 1998 Martin M. Hunt <hunt@cygnus.com>
* interface.tcl (gdbtk_tcl_tracepoint): Make function match C
implementation by adding pass_count.
Sat Jul 25 22:40:49 1998 Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_init): Change "loadpref" to "targetsel"
and change class name to TargetSelection. This avoids confusion
with the IDE GdbLoadPref class.
* target.tcl (TargetSelection): Change class name.
* main.tcl (set_target_name): Change "loadpref" to" targetsel"
Fri Jul 24 14:37:49 1998 Keith Seitz <keiths@cygnus.com>
* util.tcl (bp_exists): New procedure.
* srctextwin.tcl (SrcTextWin::constructor): Add public vars
"parent" and "ignore_var_balloons" and initialize accordingly.
(config_win): Add binding for browser.
Add binding for up/down arrows to scroll more naturally.
(do_key): Add browser entry.
* browser.tcl: Add srctextwin into browser.
* prefs.tcl (pref_set_defaults): Add new preferences for the func
browser.
* tclIndex: Regenerate.
Fri Jul 24 00:53:28 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (SrcTextWin): Initialize LineNums.
(setTabs): Set tabs correctly when in assembly mode
or when there are no linenumbers.
(bind_src_tags): Remove lineNum_tag bindings.
(config_win): Remove lineNum_tag and line_tag. Set
linenumbers to break_tag and bp_tag instead.
(FillAssembly): Don't use lineNum_tag.
(FillMixed): Don't use line_tag.
(LoadFile): Use new protected variable LineNums.
(insertBreakTag): Instead of trying to calculate the
correct location of the new tag, simply ask the widget
where the old one was.
(do_bp): Call insertBreakTag when bps are deleted.
* src.tcl (FillNameCB): Call gdb_listfiles with [pwd].
Sat Jul 18 13:27:20 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (location): Change BROWSE_TAG to STACK_TAG.
* interface.tcl (gdbtk_quit): New function. Called by
cleanup code in GDB.
Fri Jul 17 00:03:43 1998 Martin M. Hunt <hunt@cygnus.com>
* memory.tcl (build_win): Change address controlbox to
call update_address_cb.
(update_address_cb): New method. Handle address
controlbox callbacks. Set flag and call update_address.
(update_address): Call BadExpr on bad expressions.
Use local variable "ae" to set public variable addr_exp.
This fixes bug where widget forgets its address when
reconfigured. Set table background white when expression
is OK.
(BadExpr): When a bad expression is entered, create a
messagebox and set the table bg to gray.
* mem_pref.tcl (apply): Remove mystery debug line.
Thu Jul 16 16:56:12 1998 Jim Ingham <jingham@cygnus.com>
* download.tcl, ide.tcl, interface.tcl, main.tcl, manage.tcl
srcbar.tcl, toolbar.tcl: Merged the IDE changes back into devo.
Mon Jul 13 14:34:45 1998 Jim Ingham <jingham@cygnus.com>
* mem_pref.tcl (destructor): Remember to delete the variable
trace that implements the entry widget checking.
Fri Jul 10 19:17:53 1998 Jim Ingham <jingham@cygnus.com>
* mem_pref.tcl: Changed the number of bytes entry widget so
that it only accepts +'ve integers, and protect against the
case where the user deletes the contents of this entry, then
closes the window. Also made the entry disabled when the
other radio button is selected.
Wed Jul 8 23:20:33 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (FillSource): Fix code that
detects when no line numbers are available and we must use
assembly mode.
Mon Jul 6 17:53:50 1998 Jim Ingham <jingham@cygnus.com>
* download.tcl, helpViewer.tcl, html_library.tcl, memory.tcl,
register.tcl, src.tcl, srctextwin.tcl, target.tcl,
tracedlg.tcl, util.tcl, variables.tcl, warning.tcl, watch.tcl:
With the Tcl 8.0 compiler, expr commands are more efficient if
you use:
expr {$foo + $bar}
instead of:
expr $foo + $bar
So I changed all the uses of expr to this form.
Mon Jul 6 15:19:59 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (FillSource): Call Parent's mode method
to combobox will be updated.
* src.tcl (mode): Pass along second argument to mode_set.
Wed Jul 1 15:09:47 1998 Martin M. Hunt <hunt@cygnus.com>
* srctextwin.tcl (location): Add missing parameter
to FillSource call in SRC+ASM.
Wed Jul 1 11:07:21 1998 Jim Ingham <jingham@cygnus.com>
* main.tcl (gdbtk_preloop): Call gdbtk_idle on spec. If there was an
error in loading an executible specified on the command line,
then the pre_add_symbol hook would have called gdbtk_busy but
the corresponding call to gdbtk_idle would not have occured.
Also changed some catch calls so they didn't use
"catch {set foo [real_command]}"
but rather the more efficient:
"catch {real_command} foo"
* register.tcl: more catch cleanups
* src.tcl: more catch cleanups
* stack.tcl: more catch cleanups
* target.tcl: more catch cleanups
* tdump.tcl: more catch cleanups
* variables.tcl: more catch cleanups
* watch.tcl: more catch cleanups
Wed Jul 1 12:21:55 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (build_win): Remove incorrect runstop
argument for srcbar.
Wed Jul 1 11:25:48 1998 Martin M. Hunt <hunt@cygnus.com>
* floatbar.tcl: Deleted.
* Makefile: Removed floatbar.tcl
* tclIndex: Rebuilt.
Wed Jul 1 11:19:05 1998 Martin M. Hunt <hunt@cygnus.com>
* toolbar.tcl (enable_ui): Now takes an argument and
handles disable_ui and no_inferior functions.
(disable_ui): Deleted.
(no_inferior): Deleted.
(constructor): Set idle, busy, and no_inferior hooks
to enable_ui.
* srcbar.tcl (_open_file): Fix for multiple source windows.
Wed Jul 1 01:40:52 1998 Martin M. Hunt <hunt@cygnus.com>
* Makefile: Added srctextwin.tcl.
* tclIndex: Rebuilt.
* src.tcl: Major rewrite to move the source text window
into another object implemented in srctextwin.tcl. Every function
changed and many moved to srctextwin.tcl.
* srctextwin.tcl: New file.
* bp.tcl (goto_bp): Fix call to source widget.
* src_pref.tcl (build_win): Add line number
checkbutton. Layout needs changed.
* prefs.tcl (pref_set_defaults): Add linenum pref.
Thu Jun 25 17:31:30 1998 Keith Seitz <keiths@cygnus.com>
* toolbar.tcl (create_menu_items): Add Function Browser menu item.
* tclIndex: Regenerate.
* Makefile: Add browser.tcl.
* util.tcl (do_test): New procedure for invoking a test in the
testsuite from the command line.
(gdbtk_read_defs): New procedure for reading in the testsuite definitions
file
* src.tcl (build_win): Create new entry for searching the source window.
This "feature" shares the screen with the download indicator.
(download_progress): If starting a download, unmap the search widget
and map the download progress indicator in its place. When downloading
is done, do the opposite.
(config_win): Bind the down and up arrow keys to directly scroll the
window.
(search): New method which searches for strings in the source window
and jumps to a particular line.
(set_state): Do not reset current_file to empty when an exe has been
downloaded.
(bp): Do not special case tracepoint debugging.
* manage.tcl (manage_init): Add elements for function browser.
(manage_create): If GDBTK_TEST_RUNNING is set in the environment,
place all windows on the screen at +0+0.
* prefs.tcl (pref_save): Add new preference category "search".
(pref_set_defaults): Add search preferences.
* tracedlg.tcl (TraceDlg::destructor): Destroy the actions dialog is
it exists.
(add_action): Save the object returned from the window manager when
the actions dialog is opened so that we can later destroy it if
necessary.
(done): Clear ActionsDlg when the actions dialog is destroyed.
* main.tcl (do_tstart): Do not disable the "Begin collection" menu
item when we issue a tstart.
* console.tcl (paste): New method which handles all Paste events for
this window.
(Console): Bind the middle mouse button on unix to generate a paste
event.
Override default binding for button-2 motion to allow easier pasting
into the window.
Bind the paste event to the method paste.
Wed Jun 17 13:50:48 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (reconfig): Recognize tab size changes.
* src_pref.tcl (build_win): Add tab control. Remove extra frame.
Justify variable ballons text. Set activebackgrounds on
color buttons.
Tue Jun 9 13:57:24 1998 Keith Seitz <keiths@cygnus.com>
* helpViewer.tcl (HtmlViewer): Display appropriate help based on the
preference gdb/mode.
* help/trace: Add help files for tracing.
* main.tcl (gdbtk_tcl_preloop): Call gdbtk_update so that the
source window fills files into the combobox.
* srcbar.tcl (_open_file): "cd" to directory, don't add it to the
search list. This never gets reset anywhere, so if multiple file
commands are added, we could get the wrong path. Call gdb_clear_file,
too.
* interface.tcl (gdbtk_tcl_pre_add_symbol): Call the reset method
of the source window, too.
* src.tcl (reset): New method used to clear the source window
whenever multiple file commands are used.
* tdump.tcl (update): Erase the contents of the tdump window
when displaying a new dump.
* stack.tcl (update): Errors from the backtrace can contain
backtrace info, too, so make sure we print as much of that as
possible.
* register.tcl (build_win): Do not allow editing in tracing
mode.
(reg_select): Do not allow editing in tracing mode.
* memory.tcl (update_address): Check that gdb's handling of chars and
char*s doesn't abort the update.
* variables.tcl (build_win): Disable editing in tracing mode.
(build_menu_helper): Disable editing in tracing mode.
(getLocals): Use the builtin functions gdb_get_locals and
gdb_get_args to get all local variables. Concat lists together.
(Variable::value): Set a default value for "radix" in case
the regsub fails.
Tue Jun 9 00:00:18 1998 Martin M. Hunt <hunt@cygnus.com>
* interface.tcl (gdbtk_quit): No longer use quit_hook.
Just call "manage save".
* manage.tcl (manage): Remove manage quit.
(manage_quit): Deleted.
(manage_init): Remove quit_hook.
(manage_save): Use "Pref setd" instead of "pref set".
* prefs.tcl (pref_set_defaults): Remove quit_hook.
(pref_quit): Deleted.
Mon Jun 8 16:15:33 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl (set_check_button): Check for existence of
button before trying to set its state.
Mon Jun 8 13:31:08 1998 Martin M. Hunt <hunt@cygnus.com>
* memory.tcl (build_win): Always Bind configure event to
newsize method. Change table widget to use incr_addr for
both incr and decr. Enable autorepeat.
(create_prefs): Set rheight (row height).
(newsize): Set rheight if necessary. Return if numbytes
is not zero.
(update_address): Move gdbtk_idle and gdbtk_busy calls to
update_addr.
(update_addr): Surround with gdbtk_idle and gdbtk_busy.
(incr_addr): Take an argument to indicate how much
to increment or decrement by.
(decr_addr): Deleted.
Fri Jun 5 00:13:49 1998 Martin M. Hunt <hunt@cygnus.com>
* Change all references to GDBTK_IDE to IDE_ENABLED.
Thu Jun 4 18:34:11 1998 Martin M. Hunt <hunt@cygnus.com>
* memory.tcl: Complete rewrite. Added many new features
and made it much faster.
* mem_pref.tcl (build_win): Set listbox width.
* images/check.gif: New image. Used in version of
memory window without a menubar.
Thu Jun 4 10:53:33 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tclIndex: regenerated.
Merged (most recent first):
- Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tracedlg.tcl (ok): if the tracepoint does not exist (this can happen
if user is editing a tp and decides to remove it from tp window)
do not core dump, give an error message instead, and return.
* bp.tcl (get_actions): invoke trace dialog from tracepoint window,
passing filename and line as arguments, rather than address.
- Jeff Holcomb <jeffh@cygnus.com>
* main.tcl (set_baud): Change gdb/load/$gdb_target_name/baud
to gdb/load/${gdb_target_name}-baud.
- Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tdump.tcl (update): call tdump only if the current trace frame
number is not -1.
* interface.tcl (gdbtk_tcl_tstart): update menus entries only, do
not do actual command.
(gdbtk_tcl_tstopt): update menus entries only, do not do actual
command.
(gdbtk_tcl_warning): remove tdump warning message from list of not
displayed messages.
* main.tcl (do_tstart): catch error output from tstart and display
error dialog.
(do_tstop): catch error output from tstop and display error dialog.
* bp.tcl (bp_add): align properly the bpnum and passcount fields,
for the tracepoint window.
* main.tcl (set_exe): set file_done (new global state variable)
depending whether new file was read in or not.
(set_target_name): return 0 if user chose cancel from target setting
window displayed by 'connect'.
(set_target): if no target_cmd is specified call set_target_name and
ask user for it.
(async_connect): handle possible outcomes of set_target command,
issue appropriate messages to user.
Initialize file_done to 0.
* target.tcl (cancel): set gdb_target_name to CANCEL for use by
set_target_name.
Added public data 'exportcancel'.
* toolbar.tcl (do_async_connect): change menu items state only
if connect was successful.
* src.tcl (bp): modify condition for SOURCE case to display tp dot
after connecting to target.
* actiondlg.tcl (constructor): make dialog non modal.
(destructor): release grab not any longer necessary.
(change): make lsearch use exact pattern matching for entries
added to the collect list using the 'other' field. The new syntax
allows array elements to be specified and this messes up the
default glob style pattern matching.
(change_other): reject memranges (obsolete). Delegate validation
of user input to the lower levels, in gdb. I.e. keep everything
until the whole tracepoint is installed.
* tracedlg.tcl (gdb_add_tracepoint): call to gdb_actions is now
catching the errors (in case of incorrect syntax) and displaying
them to the user.
* main.tcl (set_target): Changed text of error message to mention
the Target Settings dialog.
* prefs.tcl: Set default preference for gdb/load/check to 0.
* target.tcl (build_win): disable comparison with executable for
'exec' targets.
(set_check_button): new method. Enable/disable the check button
for comparing executable.
(change_target): call set_chack_button when target changes.
Set default preference gdb/load/check to 0.
* stack.tcl: set initial window width value to 40, so that window
looks better if opened before a stack exists.
- David Taylor <taylor@texas.cygnus.com>
* main.tcl (async_connect): remote-compare is now compare-sections.
- Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* warning.tcl (constructor): call destructor if dialog doesn't
need to be displayed.
* console.tcl (invoke): make function get input and return if in
readline state, independently from the value of Running.
* src.tcl (set_state): set state of pop up menus only for synch
mode.
* tdump.tcl (build_win): simplify the window, eliminating pane.
This fixes resize problems.
(update): add call to see to display last thing outputted to the
window.
* tfind_args.tcl (do_it): call the tfind_cmd procedure.
* toolbar.tcl (create_menu_items): changed calls to tstart and tstop
to use do_tstart and do_tstop.
* srcbar.tcl (runstop): do not call _set_trace in asynch case,
just use _set_runstop always.
(_set_runstop): added handling for asynch mode cases.
(_set_trace): removed.
* main.tcl (do_tstart): new procedure to execute tstart command
update tstart/tstop button, and menu entries accordingly.
(do_tstop): new procedure for tstop, as above.
(run_executable): calls do_tstart in the asynch case.
* interface.tcl (gdbtk_tcl_tstart): new procedure to invoke
the tstart command
(gdbtk_tcl_tstop): new procedure to invoke the tstop command
* interface.tcl: (gdbtk_tcl_warning) do not display warning
about no current trace frame upon opening of tdump window.
* main.tcl: (run_executable) in asynch mode just call tstart,
connect is now done independently.
(async_connect) new procedure to connect and do comarison with
remote executable, in asynch mode. Sets up gui state globals.
(async_disconnect) new procedure to disconnect from target in
asynch mode. Sets up gui state globals.
* prefs.tcl: added new preference gdb/load/check
* srcbar.tcl: (create_buttons) tfind commands now use tfind_cmd
function
* target.tcl: added new preference gdb/load/check to execute an
automatic remote-compare command on connection to target in asynch
mode
(set_saved) set saved value for new preference
(write saved) write saved value for new preference
(build_win) set state of 'run to main', 'break at exit', 'display
dowload' to disabled for asynch mode target dialog.
Added new checkbutton for automatic comparison of remote exec.
Saved_check: new protected member
* tdump.tcl: (update) changed check for no frame, since 0 is legal
trace frame number.
* toolbar.tcl: (create_menu_items): added menus items 'connect to
target' and 'disconnect', in async mode. Changed to call tfind_cmd
to execute tfind commands
(do_async_connect): new method to connect to target in async mode.
(do_asynch_disconnect): new method to disconnect from target in
async mode.
* util.tcl: (tfind_cmd): new proc to execute a tfind command on
the target
Thu May 28 12:49:29 1998 Keith Seitz <keiths@cygnus.com>
* target.tcl: Add sparclite target.
(fill_targets): Add sparclite target.
* main.tcl (set_target_name): Rearrange so that the default behavior
is to assume a remote-like target.
* src.tcl (browse_to): Helper function for BpWin::goto_bp which causes
the source window to show the specified location.
* bp.tcl (bp_add): Clean up repetitive code.
Add double-click binding which shows the breakpoint
in the source window.
(bp_select): Clean up repetitive code.
(goto_bp): New function.
Sun May 24 14:05:27 1998 Keith Seitz <keiths@cygnus.com>
* src.tcl (reconfig): Remove the variable balloon selection in the text
widget, too, when we are disabling varialbe balloons.
* target.tcl: Add a "runlist" parameter to all gdb_target entries. This list
controls the default behavior of the run button.
(GdbLoadPref): Define the run preferences based on this target.
(build_win): Add a "more options" dropdown pane to allow users to modify the
behavior of the run button.
(set_saved): Add run button preferences.
(write_saved): Add run button preferences.
(fill_targets): Add the "pretty name" to the combo box, not gdb's internal
target name.
(change_target): Use get_target to translate the "pretty-name" to the
real target name.
(save): Write out saved values, too.
(get_target): New method to translate the "pretty-name" of a target into gdb's
internal name/
(toggle_more_options): New method to handle mapping and unmapping of the
"more options" pane.
(set_run): New method. Moved from src_pref.tcl.
(valid_target): Moved here from main.tcl.
(native_debugging): Moved here from main.tcl.
(change_target): Don't write_saved here -- wait until dialog is closed.
* src_pref.tcl (build_win): Use libgui's Labelledframe class instead of the
Tix labeled frame.
Remove the run button frame -- this has moved into the target selection dialog.
(set_run): Moved to targets.tcl.
* prefs.tcl (pref_set_defaults): Change default preferences for the run
button to only do a run. Target selection will reset these as appropriate.
* main.tcl (set_baud): Baud preferences are in TARGET-baud, not
TARGET/baud.
(run_executable): Remove special cases for exec targets.
(native_debugging,valid_target): Move to target.tcl.
* images/more.gif, images/less.gif: New images for drop frames.
* tclIndex: Regenerate.
Wed May 20 13:43:00 1998 Martin M. Hunt <hunt@cygnus.com>
* toolbar.tcl (create_menu_items): Remove register prefs.
* images/stop.gif: Set transparent bit.
Tue May 19 12:34:11 1998 Keith Seitz <keiths@cygnus.com>
* bp.tcl (bp_add): Use source window's colors. Use "file tail" not
"lindex [file split ] end".
(bp_modify): Use source window's colors. Use "file tail" not
"lindex [file split ] end".
(bp_remove): Call bp_select before we delete the breakpoint.
* main.tcl (run_executable): Encapsulate all calls to debugger
based on new run preferences.
* manage.tcl (manage_init): Change loadpref titles to "Target Selection"
* pref.tcl (build_win): Disable Help button until it works.
* prefs.tcl (pref_set_defaults): Define new run button preferences.
Lose stack and bp window color preferences -- use the source window
ones instead. Lose left_click, too.
* src.tcl: Remove all references to _Source_Left_Click and replace with new
protected variable Tracing. Define new protected variable UseVariableBalloons
so that we don't follow the preferences blindly. Replace all preference calls
for these two globals.
(reconfig): Allow reconfiguration of variable balloons and popup menu colors.
(config_win): Add binding for File Menu->Open.
(do_key): Add open key.
* src_pref.tcl (SrcPref): Save all newly added preferences.
(build_win): Add new preferences for mode, variable balloons,
lots of color choices.
(cancel): Reset all new preferences.
(pick): Allow passing of button in to make things a little easier.
(reconfig): Keep empty -- no need for this to reconfigure itself.
(set_run): New method to make sure someone does not try to run _and_
continue a target with the run button.
* stack.tcl (build_win): Use the source window's preferences to set colors.
* target.tcl (build_win): Disable Help button until it works.
Mon May 18 15:25:00 1998 Martin M. Hunt <hunt@cygnus.com>
* html_library.tcl (HMstack): Remove stray 'g' that was
preventing autoloading.
Mon May 18 13:17:30 1998 Keith Seitz <keiths@cygnus.com>
* helpViewer.tcl (HtmlViewer): Initialize glossary.
(glossaryPost): Fill in skeleton supplied by jingham.
(glossaryUnpost): Ditto.
(lookup): New method to lookup glossary definitions.
(HMset_image): Add special image names.
Fri May 15 00:30:06 1998 Martin M. Hunt <hunt@cygnus.com>
* memory.tcl (update_address): Source window was never being
updated due to a faulty fencepost. I removed it. Was it
useful?
Tue May 12 11:47:11 PDT 1998 James Ingham <jingham@leda.cygnus.com>
* helpViewer.tcl: Made the fonts for the viewer track the global
font preferences
*html_library.tcl: Use Tcl Font objects for the fonts rather than
building up X Font Specs.
Thu May 7 16:03:32 1998 Keith Seitz <keiths@cygnus.com>
* toolbar.tcl (create_menu_items): Remove automatic stepping.
(create_menu_items): "Cygnus on the Web..." should point to GNUPro page...
Wed May 6 20:18:34 1998 Keith Seitz <keiths@cygnus.com>
* main.tcl (set_target_name): Recognize d10v and m32r targets.
(valid_target): Change test to recognize all tcp targets.
* target.tcl: Add m32r and d10v tcp targets.
Wed May 6 12:52:12 1998 Keith Seitz <keiths@cygnus.com>
* srcbar.tcl (create_menu_items): Install a page setup menu item for
non-ide debuggers.
* src.tcl (print): Don't call idewindow_freeze and idewindow_thaw
the ide is not running
Wed May 6 10:41:30 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* bp.tcl (get_actions): set bpnum to be the real tracepoint number,
not the selected row number.
Tue May 5 04:07:12 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl: Add D10V and M32R target.
* prefs.tcl (pref_set_defaults): Set debugging off
by default.
Fri May 1 15:23:57 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* main.tcl (valid_target) make 'remotetcp' a valid
target.
Fri May 1 11:50:40 1998 Jim Ingham <jingham@leda.cygnus.com>
* helpViewer.tcl: Added the skeleton for the Glossary entries.
Fixed the zoom to top of page when rendering is complete nit.
Added a reconfig method to refresh the current page.
Compulsive reordering of methods.
Thu Apr 30 00:04:52 1998 Martin M. Hunt <hunt@cygnus.com
* global_pref.tcl (change_icons): Remove debug line.
* toolbar.tcl: Change image names to end with _img
so they don't conflist with command names.
* srcbar.tcl: Same.
Tue Apr 28 16:51:09 1998 Jim Ingham <jingham@leda.cygnus.com>
* html_library.tcl: The redefinition of tkFocusOK in this file
can cause an infinite recursion loop in autoloading tkFocusOK.
Change proc -> ::proc to hide the definition from itcl_mkindex
* tclIndex: remade without the reference to tkFocusOK.
Tue Apr 28 16:51:09 1998 Jim Ingham <jingham@leda.cygnus.com>
* helpViewer.tcl: The index page now shows up properly in the
history list. Also added images for the fore, back and home
buttons, and removed the close button.
* manage.tcl: Moved the wm withdraw of a new toplevel before the
constructor is run in manage_create. This avoids flashing.
* main.tcl: Changed the tk application name of gdbtk from tk
to gdbtk.
Mon Apr 27 14:18:01 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* helpViewer.tcl: (constructor) Change 'Foreward' to 'Forward' and
calls to 'foreward' method to calls to 'foreward' method.
(forward) changed method name from 'foreward'.
Thu Apr 23 19:02:25 1998 Keith Seitz <keiths@onions.cygnus.com>
* toolbar.tcl (create_menu_items): Use the new help viewer when not
using the IDE.
* helpViewer.tcl (HtmlViewer::constructor): Set default values for
previously passed-in variables.
(HtmlViewer::destructor): Destroy the toplevel, too.
(HMset_image): prepend the dir name "images" to the image path.
Thu Apr 23 13:31:07 1998 Jim Ingham <jingham@leda.cygnus.com>
* html_library.tcl: First checkin
* helpViewer.tcl: First checkin
* manage.tcl (manage): Added the help veiwer to the windows
list. Aslo compulsively alphabetized the list...
* tclIndex Rebuilt for the new procs.
Mon Apr 20 11:14:17 1998 Keith Seitz <keiths@onions.cygnus.com>
* global_pref.tcl (build_win): Add font selector for the status font.
* main.tcl (run_executable): Exec targets are always "loaded".
Sat Apr 18 02:11:04 1998 Martin M. Hunt <hunt@cygnus.com>
* prefs.tcl (pref_read): Remove debug line.
* util.tcl (toggle_debug_mode): When enabling or
disabling debugging, also enable or disable error
reporting and stack traces.
Sat Apr 18 01:13:03 1998 Martin M. Hunt <hunt@cygnus.com>
* srcbar.tcl (_toggle_updates): Cleanup.
* src.tcl (do_popup): Fix problems with selections. While
I'm messing with this code anyway, change how it works
so that the popup will contain the word that is under the cursor
if nothing is selected.
* toolbar.tcl (create_buttons): Bind button 3 to create
new windows when possible.
* stack.tcl (StackWin): Fix broken deiconify call.
* images/[console.gif, reg.gif]: Update.
Fri Apr 17 10:34:23 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (location): Don't look up the full pathname
of each file added to the combobox.
Fri Apr 17 09:58:59 1998 Keith Seitz <keiths@onions.cygnus.com>
* target.tcl (default_port): New proc. Returns a default port
based on host os.
(startup code): Use default port to determine the default port
to use for all hosts.
(build_win): Only set the target if it is valid.
For unix, use port names that correspond to the OS running.
Change gdb/load/$target-portnum to gdb/load/$target-port (typo?)
(get_target_list): Do not allow "exec" for cross debugging.
(save): Do not do dismiss dialog if the target is not valid.
(cancel): If exportcancel is set, set gdb_target_cmd to "CANCEL". This
will allow run_executable to cancel a run if the user cancels target
selection.
(exportcancel): New public data.
* main.tcl (set_target_name): Return status to caller so that the user
can cancel a run request when the target selection dialog is opened.
Do not modify gdb_exe_changed -- it has already been set proprely.
(set_target): If gdb_target_cmd is empty, call set_target_name to
set it.
Allow all set_target_name commands to cancel target selection.
(run_executable): Allow all set_target_name commands to cancel
target selection.
Always clear bp's at main and exit, since this proc will set them
for all targets now.
Save the bp number for the breakpoint installed at main and exit so
that we can reliably delete them if the user cancels any subsequent
target selection.
Whenever the run is canceled, delete the breakpoints at main and exit.
Move setting of breakpoints at main and exit from download_it here.
(valid_target): New proc. Returns true if the given target is a valid,
runnable target.
(native_debugging): New proc. Returns true if this gdb is not a cross
gdb.
(startup code): Do not call set_target_name here -- let run_executable
do it.
* interface.tcl (gdbtk_tcl_query): Update the display when this dialog
is dismissed.
(gdbtk_tcl_warning): Always show warnings in the debug window.
* download.tcl (download_it): Move setting breaks at main,exit to
run_executable in main.tcl.
Thu Apr 16 11:28:01 1998 Martin M. Hunt <hunt@cygnus.com>
* main.tcl (set_target_name): Add "prompt" parameter
which allows this function to be called without it always
prompting for the target name. This allows it to quietly
initialize variables from preferences.
(set_target): Remove HACK_FIRST_HACK.
(run_executable): Check the result of [set_target].
If it fails, prompt for a new target and repeat.
(startup code): Remove HACK_FIRST_HACK.
Call set_target_name to initialize gdb_target_cmd from
preferences.
* toolbar.tcl (create_menu_items): Call set_target_name
for the target menu item. This will open the dialog and
then set the target command correctly.
* target.tcl (save): Set default target preference.
Wed Apr 15 11:29:47 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (reconfig): Tell toolbar to reconfig.
* global_pref.tcl (build_win): Add support for changing
icons. Put fonts in a labelled frame.
(update_file): Removed.
(change_icons): Callback for icon combobox.
* srcbar.tcl (_load_src_images): Remove old target and
load images. Add reconfig parameter which reloads images.
Use global gdb_ImageDir.
(reconfig): New method.
* floatbar.tcl (create_buttons): Remove target image.
Use global gdb_ImageDir.
* toolbar.tcl (_load_images): Use global gdb_ImageDir.
Add reconfig parameter which reloads images.
(reconfig): Don't rebuild everything, just reload images.
(create_menu_items): Change "Fonts" preferences menu
item to "Global".
* prefs.tcl (pref_set_defaults): Save only basename in
gdb/ImageDir preference. Initialize global gdb_ImageDir.
(pref_read): Set gdb_ImageDir.
* memory.tcl (build_win): Use global gdb_ImageDir.
* manage.tcl (make_icon_window): Use global gdb_ImageDir.
* about.tcl (build_win): Use global gdb_ImageDir.
* images/icons.txt: New file; icon descriptions.
* images/vmake.gif: New file.
* images/vars.gif: New file.
* images/watch.gif: New file.
* images/bp.gif: New file.
* images/memory.gif: New file.
* images2/icons.txt: New file; icon descriptions.
* toolbar_pref.tcl: Removed.
* main.tcl (run_executable): If target is "exec" don't
show target dialog unless the run command fails.
Wed Apr 15 13:15:22 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* interface.tcl: (gdbtk_tcl_warning) changed to selectively
display warnings in the GUI.
(show_warning) new procedure. Displays warning dialogs.
Wed Apr 15 07:13:04 1998 Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (do_popup): Fix merge casualty -- revert to pre-3/22 version.
Don't allow tracepoint ranges to be set unless in asynch mode.
Mon Apr 13 16:00:06 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* warning.tcl: new file. Implements WarningDlg class, for warning
dialogs.
* tclIndex: regenerated
* Makefile: added new file warning.tcl
* manage.tcl: added new window warningdlg, for ignorable warnings.
* interface.tcl: (gdbtk_tcl_warning) new procedure. Creates a warning
dialog.
(gdbtk_tcl_ignorable_warning) new procedure. Creates a warning dialog.
The user can choose to not have this dialog pop up again during the
same debugging session.
Mon Apr 13 13:04:20 1998 Keith Seitz <keiths@onions.cygnus.com>
* stack.tcl (StackWin::constructor): Withdraw toplevel before calling
all busy hooks; then build the window, go idle and pop the window onto
the screen.
* main.tcl (set_target_name): Use a regexp to match target names.
Add "sds" as a target.
(run_executable): Use gdb_immediate to run executable.
Fri Apr 10 10:27:42 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* bp.tcl: changed default value of public var tracepoints to be 0.
Thu Apr 9 15:21:49 1998 Martin M. Hunt <hunt@cygnus.com>
* global_pref.tcl (destructor): Delete test fonts here instead of
in ok and cancel. This fixes bug when dialog was closed by
clicking on close gadget.
* src_pref.tcl (pick): When colors are changed, immediately
update the dialog.
Thu Apr 9 04:03:27 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl (build_win): Bind <Return> for cancel and help buttons.
Wed Apr 8 10:57:14 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tdump.tcl: (update): show stuff on window only if current
trace frame is not null.
* variables.tcl: (build_win): get the current output-radix
(getVariables): decide the format to display a var based on Radix
VariableWin class: added protected member Radix
(value): decide display based on output-radix
Wed Apr 8 06:17:42 1998 Keith Seitz <keiths@onions.cygnus.com>
* bp.tcl (get_actions): Open the trace dialog based on a tracepoint's
number.
* tracedlg.tcl (title): New method to title window based on mode.
(TraceDlg::constructor): After the interp is idle, title this window.
(build_win): Add support to simply pass a tracepoint number for editing.
Tue Apr 7 12:49:45 1998 Keith Seitz <keiths@onions.cygnus.com>
* variables.tcl (VariableWin): We should deiconify after withdrawing...
* tracedlg.tcl (gdb_edit_tracepoint): Make necessary gdb_cmd changes
to support new API.
(gdb_add_tracepoint): Make necessary gdb_cmd changes to support new
API.
* tdump.tcl (update): Make necessary gdb_cmd changes to support new
API.
(TdumpWin::constructor): We should deiconify after we withdraw...
Change idle callback to an update callback.
(TdumpWin::destructor): Change idle callback to update callback.
* srcbar.tcl (_open_file): Make necessary gdb_cmd changes to support new
API.
(create_buttons): Change all tracing commands to use gdb_immediate.
* main.tcl (set_target_name): Add simulator target.
* src.tcl (mode): When changing modes, clear the line to pc mappings.
(location): Do not set current_addr if we are not running and gdb_loc
thinks we're at 0x0.
Clear the text-window-line to pc mapping when appropriate.
Revert display_breaks change for SRC+ASM mode.
(bp): Make sure mapping of PC to src window line exists before
attempting to set breakpoints/tracepoints.
Fri Apr 3 13:57:42 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* src.tcl: (do_key): added actions for key bindings in trace mode.
(config_win): added key bindings for trace mode.
* srcbar.tcl: (_set_trace) changed balloon contents for tstart/
tstop button.
* toolbar.tcl: (create_menu_items): changed names of menu items
tstart and tstop to 'Begin Collection' and 'End Collection'.
Changed name of Preference menu item from 'GDB' to 'Fonts'.
Changed name of File menu item from 'Debugger Preferences' to
'Target Settings'.
Commented out Preference menu item 'Download'.
(create_buttons): tdump button, inserted text 'Td' in place of missing
icon.
Tue Mar 31 17:20:59 1998 Ian Lance Taylor <ian@cygnus.com>
* Makefile (TCL): Add ide.tcl.
* tclIndex: Rebuild.
Sun Mar 29 18:50:46 1998 Keith Seitz <keiths@onions.cygnus.com>
* tracedlg.tcl (build_win): Enable tracepoints at assembly addresses.
(add_action): Enable tracepoints at assembly addresses.
(ok): Enable tracepoints at assembly addresses.
(edit): Enable tracepoints at assembly addresses.
(gdb_add_tracepoint): Enable tracepoints at assembly addresses.
* srcbar.tcl (_open_file): If main () exists, show it.
* src.tcl (display_breaks): If we are displaying breaks in assembly,
clear the line and file specs.
(location): Use display_breaks to insert breaks and traces.
(bp): Rewrite. Actions are based on mode of the source window.
(bp_line): When setting a tracepoint in assembly, pass address
to set_tracepoint.
(set_tracepoint): Open trace dialog specifying either line or
address at which to set trace.
(tracepoint_range): Rewrite. Actions are based on the mode of the
source window. Now able to insert ranges of traces in any mode.
* actiondlg.tcl (ActionDlg::constructor): Enable widget via address
specification.
(ActionDlg::Line): Default to empty list.
(ActionDlg::Address): Add new memeber to enable assembly operation.
Sun Mar 29 21:21:37 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* bp.tcl: add tracepoint number to tracepoint window.
(build_win)(bp_add)(bp_select)(bp_modify)(bp_delete)
* manage.tcl: (manage_init) do not open windows not related to
current mode
* tdump.tcl: (reconfig) remove it
(config) add toplevel window, show window after it has been built.
(update) add calls to busy and idle hooks, add third argument to
gdb_cmd call
Sun Mar 29 15:01:03 1998 Keith Seitz <keiths@onions.cygnus.com>
* srcbar.tcl (_set_trace): Use gdb_immediate to execute the "tstop".
Call run_executable when requesting a tstart.
(_open_file): Convert all paths under cygwin32 to a posix-compliant
pathname. Add this path to the source search list.
* src.tcl (set_execution_status): Change stop messages to support
tracing.
(tracepoint_range): Clear the selection when we set a range of
tracepoints.
* main.tcl (set_target): Use gdb_immediate so that the console gets
output of target command.
(run_executable): Use gdb_immediate for run command.
Include trace support.
Sat Mar 28 15:50:01 1998 Keith Seitz <keiths@onions.cygnus.com>
* srcbar.tcl (create_menu_items): Put menu items in proper order.
(_open_file): Add exe file's directory to the default source
search path.
Sat Mar 28 14:29:08 1998 Keith Seitz <keiths@onions.cygnus.com>
* srcbar.tcl (GDBSrcBar: runstop trace): If running async'ly, set
the run/stop button by calling _set_trace. Otherwise use _set_runstop.
(create_menu_items): Add file command to open a new exe.
(_open_file): New method to handle requests to open a new exe.
* main.tcl (set_target): If this is the first time running,
then show the download prefs dialog.
Sat Mar 28 16:30:55 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tracedlg.tcl: (build_win) reinserted 'update idletasks' to
display Actions frame properly.
* actiondlg.tcl: (sort) moved "All Registers", "All Locals",
"All Arguments" to beginning of list.
* src.tcl: (line_is_executable) new method. Used in
tracepoint_range.
Sat Mar 28 10:58:04 1998 Keith Seitz <keiths@onions.cygnus.com>
* tracedlg.tcl (gdb_edit_tracepoint): Don't let gdb_cmd call busy and
idle hooks.
(gdb_add_tracepoint): Ditto.
* src.tcl (config_win): Change exit key binding from 'q' to 'x.'
(goto_func): That's "file tail", not "file split."
* srcbar.tcl (_set_stepi): Don't do anything if we're debugging
asynchronously.
Sat Mar 28 10:09:21 1998 Martin M. Hunt <hunt@cygnus.com>
* toolbar.tcl (create_menu_items): Change "Close Debugger"
menu item to "Exit".
Sat Mar 28 02:38:51 1998 Martin M. Hunt <hunt@cygnus.com>
* src_pref.tcl (build_win): Fix Save and Apply buttons.
Change "Save" to "OK". Use standard_button_box.
(save): New method, save and exit.
(apply): New method; save and don't exit.
(cancel): New method; cancel all changes.
* src.tcl (reconfig): Reconfigure colors, too.
* global_pref.tcl (Globalpref): Fix deiconify call.
(build_win): Use standard_button_box. Set default to OK.
Remove unused stuff. Cleanup display.
* Makefile: Removed toolbar_pref.tcl.
* tclIndex: Rebuilt.
* srcbar.tcl (create_buttons): Make toolbar always attached
to source window.
* toolbar.tcl (build_win): Always display toolbar and
menubar attached to source window.
* prefs.tcl (pref_set_defaults): Removed toolbar prefs.
* manage.tcl (manage_init): Remove hack to change preferences
names.
(manage_init): Remove toolbar and toolbar prefs code.
(manage_create): Remove toolbar code.
(manage_open): Remove toolbar code.
(manage_find): Remove toolbar code.
(manage_delete): Remove toolbar code.
(manage_restart): Remove toolbar code.
Fri Mar 27 19:52:53 1998 Keith Seitz <keiths@onions.cygnus.com>
* toolbar.tcl (create_menu_items): Do not disable preferences.
* src.tcl (reconfig): Rewrite to not destroy window.
Symbolic fonts are a blessing!
Pass the image handles for our breakdots to makeBreakDots.
(file): Move breakpoint/tracepoint insertion to a separate function...
(display_breaks): .... this one.
(location): Move the block which fills combo boxes to top in
case an error causes us to exit early.
(makeBreakDot): Accept an optional image handler so that it can be
configured instead of created.
* global_pref.tcl (build_win): Carry around a list of all changable
fonts in case more granularity is needed. (Windows cannot change
menu font...) Disable menu font for windows.
(ok): Check the list of changable fonts.
(cancel): Check the list of changable fonts.
(apply): Check the list of changable fonts.
* console.tcl (reconfig): New (empty) method to handle preference
changes.
Fri Mar 27 16:08:57 1998 Keith Seitz <keiths@onions.cygnus.com>
* global_pref.tcl (ok): Must use preferences for comparison. Don't
"manage restart" unless needed.
(cancel): Don't configure the font -- changing the preference will do
it automagically.
Fri Mar 27 14:21:02 1998 Keith Seitz <keiths@onions.cygnus.com>
* toolbar.tcl (create_menu_items): Use gdbtk_quit to initiate a quit.
* src.tcl (do_key): Use gdbtk_quit to initiate a quit.
* prefs.tcl (pref_save): Set a default value for WIN.
Don't "manage restart".
(pref_set_defaults): Register a quit hook to save preferences.
(pref_quit): Call pref_save to save all preferences when we quit.
* manage.tcl (manage): Add "quit".
(manage_init): Register a gdb_quit_hook.
(manage_delete): Instead of guessing when and what to ask to confirm
a quit, call gdbtk_quit.
(manage_quit): New procedure. This is called from the gdb_quit_hook to save
window active'ness and geometries by calling manage_save.
* interface.tcl: Define "gdb_quit_hook".
(gdbtk_quit): New procedure to call whenever a quit is requested.
* global_pref.tcl (ok): Do not save preferences here.
Fri Mar 27 12:21:07 1998 Keith Seitz <keiths@onions.cygnus.com>
* tracedlg.tcl (TraceDlg): Wait until idle to deiconify ourselves.
* global_pref.tcl (Globalpref): Withdraw window before creating and
deiconify it when idle.
(cancel): Let the window manager destroy us.
(ok): Let the window manager destroy us.
* target.tcl (GdbLoadPref::constructor): Withdraw window before creating
and deiconfiy it when idle.
* memory.tcl (MemWin::constructor): Withdraw window before going
busy.
* register.tcl (RegWin::constructor): Withdraw window before going
busy.
* src.tcl (SrcWin::constructor): Withdraw window before creating and
deiconify it when idle.
Fri Mar 27 10:52:30 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl: Fix entry for temotetcp.
* main.tcl (set_target_name): Build correct gdb_target_cmd.
Fri Mar 27 11:23:18 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* target.tcl: (build_win) added call to change_target to
get the correct entry widgets when the dialog is opened.
Fri Mar 27 01:43:41 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl: Add simulator and remotetcp targets to
target database. Change all the gdb/load/$target/foo
preferences to gdb/load/$target-foo because the prefs
code expects gdb/section/varname. The extra slash confuses
it.
(set_saved): Add saved_portname and saved_hostname for TCP.
(write_saved): Add saved_portname and saved_hostname for TCP.
(fill_rates): change states of hostname and portnum entry widgets.
(fill_targets): Add fake remotetcp entry in target list.
(change_baud): When switching between tcp and serial targets
pack or forget the appropriate widgets.
(build_win): Create hostname and port number entry widgets.
(change_target): Update hostname and portnum widgets.
* prefs.tcl (pref_save): Add 'load' as a section to be saved.
Set gdb/load/target to 'exec'.
* manage.tcl (_manage_null_handler): Deleted.
* download.tcl (download_it): Don't call IDE functions
unless GDTK_IDE is set.
* main.tcl (gdbtk_tcl_preloop): Get name of executable
if one was supplied on command line.
(set_target_name): Save target name as preference.
(run_executable): Call set_target.
Fri Mar 27 00:23:46 1998 Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (location): Catch error of getting location of main.
* prefs.tcl (pref_set_defaults): Add gdb/toolbar/active.
Add trace for global/fixed font to update src-font.
(pref_read): Add code to deal with global preferences.
(pref_save): Add code to deal with global preferences.
(pref_src-font_trace): Trace function which set src-font to global/fixed.
* global_pref.tcl (build_win): Relayout font selectors and add a selections
for menu and default fonts.
Rename Save to OK and Quit to Cancel, renaming methods, too.
(font_changed): Add arguments to facilitate multiple fonts.
(reconfig): Define as empty.
(ok): Rewrite to facilitate multiple fonts.
(cancel): Rewrite to facilitate multiple fonts.
(apply): Rewrite to facilitate multiple fonts.
* manage.tcl (manage_restart): Call gdbtk_idle to reset the toolbar after
it is recreated.
Thu Mar 26 23:49:26 1998 Martin M. Hunt <hunt@cygnus.com>
* tdump.tcl, tfind_args.tcl: New files.
Thu Mar 26 22:29:28 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tracedlg.tcl: (config) commented out grab. Made window non-modal.
(destructor) do not release grab.
(done) do not reinstall grab.
* toolbar.tcl: (create_buttons) changed buttons for the tracepoint
case to open tdump window, and tracepoint window.
(create_menu_items) change Run menu to do tstart, tstop for tracepoint
case. Changed View menu to show tracepoint window for tracepoint case.
Changed 'Control' menu to 'Trace' menu for tracepoint case, with
tfind commands.
* srcbar.tcl: (create_buttons) changed the buttons for the
tracepoint case to do tfind commands.
(_set_trace) new method. Toggles tstart/tstop button.
* src.tcl: (config) decide defatul action for left click on
source based on 'mode' preference.
(bp_line) ditto.
(config_win) modify pop upmenu on source window to display only
'set tracepoint'.
* prefs.tcl: (pref_set_defaults) added preference gdb/mode for
tracepoints or breakpoint display.
* manage.tcl: (manage_init) added tracepoint window, args windows
for tfind, tdump window.
(manage_open) use eval in call to manage_create.
* bp.tcl: (build_win) added PassCount to the display and modified
the menus for the tracepoint case to display actions.
(bp_add) display pass_count too in the tracepoint list.
(bp_select) changed indexes of menu entries to be entries names.
added field passcount to selection for tracepoints.
(bp_modify) added passcount for tracepoints.
(bp_delete) added passcount for tracepoints.
(get_actions) new method
Added new public member "tracepoints" to decide which kind of window
needs to be displayed.
* Makefile: added new files tfind_args.tcl and tdump.tcl.
* tclIndex: regenerated
Thu Mar 26 14:23:00 1998 Martin M. Hunt <hunt@cygnus.com>
* main.tcl (set_target_name): Make target dialog always
on top.
* target.tcl (build_win): Bind Return to save.
(GdbLoadPref): Denter dialog on screen.
Thu Mar 26 14:16:36 1998 Keith Seitz <keiths@onions.cygnus.com>
* memory.tcl (update_address): Catch errors to update_addr so that
we do not error and leave the GUI busy.
Thu Mar 26 13:51:58 1998 Martin M. Hunt <hunt@cygnus.com>
* toolbar.tcl (create_menu_items): Remove "Cygnus
Foundry Tour" and "Submit a PR" from the menu.
* src.tcl (file): Set title to GDB.
* manage.tcl (manage_init): Set About name.
* main.tcl (set_target): Set title to GDB.
* interface.tcl (gdbtk_tcl_query): Set title correctly.
* Makefile: Remove download_pref.tcl.
Thu Mar 26 11:33:02 1998 Keith Seitz <keiths@onions.cygnus.com>
* Makefile: Add target.tcl to list of sources.
* tclIndex: Rebuilt.
* target.tcl (GdbLoadPref): Trace changes to gdb_loaded.
(target_trace): New procedure. This is invoked by a write trace
to gdb_loaded.
* interface.tcl (gdbtk_busy): New procedure to run all busy hooks
(gdbtk_update): New procedure to run all update hooks
(gdbtk_idle): New procedure to run all idle hooks. Also runs the
no inferior hooks if no inferior has been created.
Rename old gdb_idle_hook to gdb_update_hook for clarity.
Change all references of run_hooks to use gdbtk_busy, gdbtk_idle, and
gdtk_update.
* download.tcl: Make busy/update/idle hook changes.
* main.tcl: Make busy/update/idle hook changes.
(set_exe): Clear gdb_loaded whenever a new exec file is selected.
* manage.tcl: Make busy/update/idle hook changes.
* mem_pref.tcl: Make busy/update/idle hook changes.
* memory.tcl: Make busy/update/idle hook changes.
* register.tcl: Make busy/update/idle hook changes.
* src.tcl: Make busy/update/idle hook changes.
* stack.tcl: Make busy/update/idle hook changes.
* variables.tcl: Make busy/update/idle hook changes.
Merged with Foundry 1.0:
Wed Mar 25 14:22:28 1998 Keith Seitz <keiths@onions.cygnus.com>
* register.tcl (reconfig): Call busy and idle hooks.
* memory.tcl (update_address): Call busy and idle hooks.
Wed Mar 25 11:38:49 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (location): Fix typo.
Tue Mar 24 21:03:01 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (location): If gdb_listfuncs returns an error, display
an error message that says the file was either not found or contained
no debugging information.
(location): When disassembling, put busy and idle calls before
and after. Set "NoRun" to indicate the busy hook should not
display the stop sign because the target isn't running, GDB may
just take a few seconds to do the disassembly.
(busy): Hack to support NoRun mode.
* srcbar.tcl (_set_runstop): Add another case to disable the
Run icon instead of changing it to a stop sign.
* main.tcl (set_exe): If the file has no debugging information,
display an error message and exit. This should only happen with
intentionally stripped files.
Tue Mar 24 17:04:36 1998 Keith Seitz <keiths@onions.cygnus.com>
* mem_pref.tcl (build_win): Keep track of all widgets that should be
disabled when busy.
(busy): New method which disables anything that could cause trouble.
(idle): New method which re-enables anything that "busy" disables.
(apply): Call busy and the busy hooks before doing update of memory
window. Then call idle and the idle callbacks when we are done.
Tue Mar 24 12:07:52 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (location): Filter out .s and .S files because
Foundry does not yet support assembly source debugging.
Tue Mar 24 08:50:46 1998 Keith Seitz <keiths@onions.cygnus.com>
* register.tcl (but3): Don't pop up the right-click menu if we are
running.
* download.tcl (download_it): Force an update so that all windows
are created and get their busy hooks called.
* console.tcl (invoke): Make sure we are not running.
(busy): New method.
(idle): New method.
Mon Mar 23 15:00:57 1998 Drew Moseley <dmoseley@cygnus.com>
* src.tcl: (location): Assume we are locating main() if the target is
not running and we can't figure out which function we are in.
* main.tcl (run_executable): Change to assembly mode when we try to
load a blank file. This usually means that source level debugging
was not enabled when this file was compiled.
Reverse the parameters to src method::location() method invocation so
they are in the correct order
Mon Mar 23 12:04:23 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (update): Comment out debug lines.
* main.tcl (set_target_name): If the target name changes,
force a new "file" command to be issued by setting
gdb_exe_changed.
Sat Mar 21 00:09:37 1998 Martin M. Hunt <hunt@cygnus.com>
* download.tcl (download_it): Remove call to run_idle_hooks.
* src.tcl (no_inferior): Call set_execution_status.
* bp.tcl (bp_modify, bp_delete): Change to take an entry
number.
(update): Sometimes "create" calls are for existing
breakpoints and should be "modified" calls. Detect this
and pass the entry number to bp_delete or bp_modify.
Fri Mar 20 22:50:55 1998 Tom Tromey <tromey@cygnus.com>
* console.tcl (insert): Remove all \r characters from string to be
inserted.
Fri Mar 20 01:55:14 1998 Keith Seitz <keiths@cygnus.com>
* watch.tcl (validateEntry): Fencepost for running.
* variables.tcl (VariableWin): Use "add_hook_before".
(idle_done): New gdb_idle_done_hook for this object.
(update): Don't call enable_ui here.
(enable_ui): Change cursor for this object.
(disable_ui): Ditto.
(no_inferior): Ditto.
* toolbar.tcl (GDBToolBar): Use "add_hook_before".
* stack.tcl (StackWin): Use "add_hook_before".
(StackWin): Encapsulate creation of this object with
busy and idle hooks so that the user gets some feedback and to
prevent other widgets from attempting to update.
(update): Add some sanity checking so that we do not update with
garbage in the window.
(idle_done): New gdb_idle_done_hook for this object.
(change_frame): Fencepost for running.
(busy): New gdb_busy_hook for this object.
(no_inferior): New gdb_no_inferior_hook for this object.
(cursor): New helper method to set the cursor of all subwindows.
* src.tcl (SrcWin): Use "add_hook_before".
(toggle_updates): Use "add_hook_before".
(stack): Encapsulate creation of the stack object with
busy and idle hooks so that the user gets some feedback and to
prevent other widgets from attempting to update.
(idle_done): New gdb_idle_done_hook for this object.
(set_execution_status): When Program is Terminated..., reset
gdb_running.
(config_win): Pull mouse pointer cursor assignments in text widget
out into a separate function.
(bind_src_tags): New method to set the cursor for the window's text
widget tags.
(disable_ui): Call bind_src_tags to change cursor to "watch".
(enable_ui): Ditto.
(no_inferior): Ditto.
(cursor): New helper method to set the cursor of all subwindows.
* register.tcl (RegWin): Encapsulate creation of this object with
busy and idle hooks so that the user gets some feedback and to
prevent other widgets from attempting to update.
Use "add_hook_before".
(reg_select_up): Fencepost for running.
(reg_select_down): Fencepost for running.
(reg_select_right): Fencepost for running.
(reg_select_left): Fencepost for running.
(reg_select): Fencepost for running.
(edit): Fencepost for running.
(idle_done): New gdb_idle_done_hook for this object.
(busy): New gdb_busy_hook for this object.
* memory.tcl (MemWin): Encapsulate creation of this object with
busy and idle hooks so that the user gets some feedback and to
prevent other widgets from attempting to update.
Use "add_hook_before".
(create_prefs): Fencepost for running.
(idle_done): New gdb_idle_done_hook for this object.
(edit): Fencepost for running.
(newsize): Fencepost for running.
(busy): New method to block UI while running inferior.
(do_popup): Fencepost for running.
(cursor): New method to change the cursor definition for this
object.
* manage.tcl (manage_init): Use "add_hook_before".
* main.tcl (run_executable): Use "run_idle_hooks".
* ide.tcl (gdbtk_ide_init): Don't create the source window here.
* interface.tcl: Define new hook "gdb_idle_done_hook" -- to be called
when the debugger does completely idle to allow input to objects
again.
(run_idle_hooks): New procedure to wrap the idle hooks.
(gdbtk_tcl_idle): Split the idle callbacks into two parts: one that
only updates widgets and one that tells widgets to accept input
again.
* download.tcl (Download): Use add_hook_before instead of add_hook.
(download_it): Use run_idle_hooks instead running the idle hooks
directly.
* bp.tcl (BpWin): Use add_hook_before instead of add_hook.
Wed Mar 18 18:59:00 1998 Sean Mahan <smahan@cygnus.com>
* download.tcl (download_hash): Added an 'update' so the
status bar would work on an MBX board.
Wed Mar 18 01:50:19 1998 Martin M. Hunt <hunt@cygnus.com>
* prefs.tcl (pref_set_defaults): Define gdb/src/tab_size
to default to a tab size of 4.
* src.tcl (setTabs): Set up tabs correctly.
* download.tcl (download_it): Set correct state after
user cancels download.
Tue Mar 17 12:30:23 1998 Tom Tromey <tromey@cygnus.com>
* console.tcl (throttle): New public variable.
(insert): Delete initial text when past the throttle limit.
Tue Mar 17 13:31:38 1998 Keith Seitz <keiths@onions.cygnus.com>
* ide.tcl (gdb_exit_check): Do not let gdb confirm the quit if we
are downloading.
Tue Mar 17 13:25:22 1998 Keith Seitz <keiths@onions.cygnus.com>
* console.tcl (insert): Force update of screen.
Mon Mar 16 10:22:00 1998 Sean Mahan <smahan@cygnus.com>
* toolbar.tcl (create_menu_items): Added 'Submit PR' to the
help menu. For PR15334
Sun Mar 15 15:01:27 1998 Tom Tromey <tromey@cygnus.com>
* interface.tcl (gdbtk_tcl_fputs): Don't call update.
* src.tcl (build_win): Changed capitalization on balloon help.
Fri Mar 13 10:01:48 1998 Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (mode): Add a horizontal scrollbar to the assembly pane
of SRC+ASM mode when necessary.
Fri Mar 13 00:47:59 1998 Martin M. Hunt <hunt@cygnus.com>
* main.tcl (run_executable): Don't force downloads for sim.
* download.tcl (download_it): Don't bother calling calling set_baud
for sim.
* manage.tcl (manage_delete): Deregister the window before deleting
it to prevent those annoying bgerror messages.
Thu Mar 12 15:28:22 1998 Keith Seitz <keiths@onions.cygnus.com>
* download.tcl (Download): Define a list of all sections.
(update_download): Loop through the list of sections, updating the
current section's progress and marking any previously loaded sections
as done, if needed.
(do_download_hooks): New procedure.
(download_hash): Use a timer to force update of GUI at regular
intervals -- GUI should not update 10,000 times a second.
Tue Mar 10 06:32:24 1998 Keith Seitz <keiths@onions.cygnus.com>
* interface.tcl (gdbtk_tcl_query): Allow caller to specify the default
button. If none is specified, it is set to 'yes'.
* manage.tcl (manage_delete): While inferior is running, gdb_cmd returns
immediately, so we need to manually ask the user if he wants to quit.
Tue Mar 10 10:52:09 1998 Martin M. Hunt <hunt@cygnus.com>
* download.tcl (download_it): Change where old breakpoints
are cleared.
(done): Set focus on "OK" or delete.
Tue Mar 10 05:23:42 1998 Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (do_key): New method to wrap all keypresses.
(mode): Use do_key method.
(config_win): Use do_key method.
Mon Mar 9 23:06:21 1998 Martin M. Hunt <hunt@cygnus.com>
* src.tcl (download_progress): Add an optional message
parameter to the function for use with error messages.
Don't set_status twice on cancel. Call update if
load fails.
* download.tcl (done): If 'msg' is set, it should be
displayed and download has failed. Update all source
windows.
(cancel): Don't delete window here. Let it get deleted
after call to method 'done'.
(download_it): If download failed, call done method
with error message. Force reissue of target command.
Handle set_target failures.
* main.tcl (set_target): Check result of target command
to see if the user cancelled the command.
(run_executable): Use gdb_program_has_run instead of
gdb_app_running, which was removed everywhere. Force
download when gdb_program_has_run. If user cancels download
before the download starts, preserve previous state.
Mon Mar 9 15:06:21 1998 Martin M. Hunt <hunt@cygnus.com>
* console.tcl (invoke): After gdb_immediate() finishes
check to see if the window is still there.
* main.tcl: Initialize gdbtk_state(console).
* interface.tcl: Remove some unused globals. Replace gdb_console
with gdbtk_state(console).
(gdbtk_tcl_readline_*): Don't set gdbtk_state(console) every
time. Let manage.tcl do it.
* manage.tcl (manage_create): Replace gdb_console with
gdbtk_state(console). Check for windows that were deleted,
but not actually gone yet.
(manage_delete): Replace gdb_console with gdbtk_state(console).
Mon Mar 9 09:08:11 1998 Keith Seitz <keiths@onions.cygnus.com>
* watch.tcl (build_win): Tweak layout of the entry and button,
switching to grid geometry manager.
Thu Mar 26 01:22:23 1998 Martin M. Hunt <hunt@cygnus.com>
* target.tcl: New file. Implements target dialog.
* srcbar.tcl (_set_run): Remove because it was no longer used.
* util.tcl (freeze): Only call idewindow_freeze when
using the IDE.
* prefs.tcl (pref_set_defaults): Set default tab size to 4.
* src.tcl (location): If gdb_listfuncs cannot find
functions, display error message.
(setTabs): Set real tabs according to gdb/src/tab_size.
* main.tcl (set_exe): Check to see if file was stripped.
Cannot debug without some symbols.
(set_target_name): If target changes, set gdb_exe_changed
so new "file" command will be sent. When not using IDE,
display target requester.
* manage.tcl: Set loadpref to GdbLoadPref.
Wed Mar 25 14:13:52 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* manage.tcl (manage_init) added tracedlg and actiondlg windows.
Wed Mar 25 14:08:51 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* interface.tcl (gdbtk_tcl_pre_add_symbol): New procedure.
(gdbtk_tcl_post_add_symbol): New procedure.
* src.tcl (set_execution_status): Use "set_status" to write to the
status bar, not "set Status".
Mon Mar 23 13:41:39 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* memory.tcl: Changes to support new faster gdb_get_mem().
(do_popup): Add "Go To" and Open New Window" to the popup
menu.
Sat Mar 21 21:18:06 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
Merged changes from Foundry (list follows in reverse chronological
order)
Sean Mahan <smahan@cygnus.com>
* download_pref.tcl (help): Added method to display context
sensitive help.
Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (bp_line): Don't insert breakpoints if we're running.
(disable_ui): Disable selections. Workaround for TkTextDisplay bug.
(enable_ui): Enable selections.
(no_inferior): Enable selections.
Tom Tromey <tromey@cygnus.com>
* toolbar.tcl (create_menu_items): Use gdb_immediate, not gdb_cmd,
so that output appears in console window.
* src.tcl (bp_line): Use gdb_immediate when running "continue".
(mode): Use gdb_immediate, not gdb_cmd, so that output appears in
console window.
(config_win): Likewise.
* srcbar.tcl (create_buttons): Use gdb_immediate, not gdb_cmd, so
that output appears in console window.
* console.tcl (lvarpush): Removed.
(_insertion): New method.
(_saved_insertion): New private variable.
(constructor): Don't let user use mouse to put cursor outside
command line.
* src.tcl (build_win): Use global/status font on status bar.
* interface.tcl (gdbtk_tcl_query): Moved vwait out of `if'
statement -- must vwait in all cases, not just in case when
question is actually asked.
Keith Seitz <keiths@onions.cygnus.com>
* variables.tcl (deleteTree): Reset Locals and ChangeList, too.
Martin M. Hunt <hunt@cygnus.com>
* toolbar.tcl (enable_ui): Don't always set stepi and nexti
buttons on.
Keith Seitz <keiths@onions.cygnus.com>
* toolbar.tcl (no_inferior): Instead of enabling/disabling the
individual menus on Windows, disable each menu's entries.
(disable_ui): Ditto.
(enable_ui): Ditto.
Keith Seitz <keiths@onions.cygnus.com>
* manage.tcl (manage_delete): Catch destruction of the src window when
downloading and ask user if this is what he intends.
(manage_init): Don't install idle, busy, and no_inferior hooks. Allow gdb
to exit whenever the user wants to.
* srcbar.tcl (cancel_download): download_cancel_ok is a global.
Martin M. Hunt <hunt@cygnus.com>
* ide.tcl (receive_file_changed): Minor fix when a new
executable is built when GDB is running.
Martin M. Hunt <hunt@cygnus.com>
* bp.tcl (bp_delete): If a selected breakpoint is deleted,
set "selected" to 0.
Keith Seitz <keiths@onions.cygnus.com>
* srcbar.tcl (cancel_download): New method to cancel downloads. Needed
to cancel download dialog-enabled downloads.
(_set_runstop): Call cancel_download.
* download.tcl (Download::constructor): Make sure to set the toolbar
properly so that the Stop/Cancel button cancels a download.
(download_it): Force the CANCEL to all download_progress_hook's.
* src.tcl (download_progress): Add special section identifier for
canceled downloads.
(SrcWin::destructor): Pass the state_hook's command to remove_hook.
Sean Mahan <smahan@cygnus.com>
* toolbar.tcl (create_menu_items): Help menu follows "Help Topics"
standard (PR 15082).
Tom Tromey <tromey@cygnus.com>
* interface.tcl (gdbtk_tcl_query): Consolidate Windows case; must
`vwait' even when question is already being asked.
Martin M. Hunt <hunt@cygnus.com>
* interface.tcl (gdbtk_tcl_query): Only use ide_messageBox
on Windows.
Martin M. Hunt <hunt@cygnus.com>
* register.tcl: Catch several gdb_register commands
so errors don't bother us.
* variables.tcl (destructor): Remove all hooks.
Martin M. Hunt <hunt@cygnus.com>
* download.tcl (done): Don't let seconds be zero.
* manage.tcl (manage_disable_all): Don't ever disable "."
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (run_executable): Removed delete_breakpoints
stuff.
* download.tcl (download_it): Removed delete_breakpoints
stuff. Clear any breakpoints at exit and main before
restarting. They get set again automatically if the
preferences say they should.
(Download): Don't call freeze on download window, because
it stops updating when we do.
(update): Renamed to update_download to avoid confusion.
* src.tcl (mode): When changing from SRC+ASM to another
mode, unset "awin".
(bp_line): On a "Continue to Here" don't try to
restore breakpoints that didn't exist before.
Tom Tromey <tromey@cygnus.com>
* interface.tcl (gdbtk_tcl_query): Set -parent on dialog.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (build_win): Set mode combobox width to 10.
(goto_func): If a function name is an unmangled one,
it is a C++ method so don't prepend filename when
setting location. This is a kludge, but we are limited
by the symtax the GDB command line parser will accept.
(location): When loading function combobox,
remember which names are unmangled. Change width of
function combobox dynamically to better accomodate
those long C++ names.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (bp_line): When doing a "continue to here",
first save states of all breakpoints then restore
when finished.
(config_win): Uncomment "Continue to Here" menu item.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (location): Use ide_cygwin_path on Windows
to change project root to the right format.
Drew Moseley <dmoseley@cygnus.com>
* main.tcl: (run_executable): Modified to call download_it
with the parameter indicating whether to delete breakpoints.
If GDB is loaded ($gdb_loaded == 1) and the app is running
($gdb_app_running == 1) then we don't delete the breakpoints.
All other situations will require deleting the breakpoints.
This allows us to redownload and run the same executable w/o
losing the breakpoint information.
* download.tcl: (download_it): Modified this routine to
take a boolean parameter indicating whether to delete
the breakpoints before downloading.
Sean Mahan <smahan@cygnus.com>
* toolbar.tcl (create_menu_items): Couldn't use 'helpdir'
variable so used Paths(prefix) and added help.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (set_state): Turn off debugging.
(location): Map windows pathnames into form GDB uses
internally.
(bp_line): Use gdb_set_bp to set breakpoints on
a specific line in a file.
Martin M. Hunt <hunt@cygnus.com>
* stack.tcl (update): Skip over any empty elements
in parsing the stack line to get the correct PC.
Keith Seitz <keiths@onions.cygnus.com>
* download.tcl (download_it): Run gdb_busy_hook's.
If anything fails, make sure that the no_inferior_hook's are run.
Note errors that occur during downloading, ignoring the
"cancelled download" message. If an error occurs, set the
global gdb_download_error to the error message so that it can
be shown to the user later. Don't run the idle hooks if nothing
* src.tcl (download_progress): Do not rely on the value of
"download_cancel_ok" -- it is cleared in download_it.
Reorder code to take advantage of gdb_loaded and gdb_download_error
to determine if a download was canceled, successful, or failed due
to an error. Truncate the "DOWNLOAD FINISHED:" message so that it
will fit into the status bar given the recent font changes.
(busy): If gdb_loaded, set the status bar to read "Program is running."
Otherwise, don't touch it.
(config_win): Comment out "Continue to here" right-click menu item
until it can properly preserve breakpoint state.
(no_inferior): Configure the toolbar to -runstop 0. All of these
toolbar references should be done via the busy hook by the SrcBar
class itself someday...
Sean Mahan <smahan@cygnus.com>
* toolbar.tcl (create_menu_items): Added ability to launch
the tour help file from the help menu.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl, ide.tcl: Disable some debugging messages.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (set_state): When loaded state changes, invalidate
current file.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (SrcWin): Change default title to "Foundry Debugger".
(build_win): Change name and function combobox heights to 0.
Set status bar font to src-font.
(name): Rewrite to use _files array. This array allows us
to map full pathnames with short names that are easily displayed.
(file): Call set_name to update name combobox.
(location): Call set_name to update name combobox. When setting
the function combobox, adjust height to a maximum of 10. CLear
filename combobox if there is no valid filename. When setting the
filename combobox, adjust height to a maximum of 10. Create
_files array mapping full pathnames to short names. For IDE, use
vmake/source-files and project-root to build full pathnames.
When changing mode, save current line. Don't mark current line
with PC_TAG if gdb_running is 0.
(set_name): New function. Update the name combobox, using
the short name from _files if available.
* bp.tcl (bp_modify, bp_add): Use short file name from
_files global array.
Keith Seitz <keiths@onions.cygnus.com>
* variables.tcl (VariableWin): Add idle, busy, and no inferior hooks.
(selectionChanged): Use Running fencepost.
(updateNow): Use Running fencepost.
(editEntry): Use Running fencepost.
(postMenu): Use Running fencepost.
(setDisplay): Use Running fencepost.
(open): Use Running fencepost.
(close): Use Running fencepost.
(enable_ui): Define new procedure to install fencepost.
(disable_ui): Define new procedure to remove fencepost.
(no_inferior): Define new procedure to remove fencepost and clear tree.
(Running): New protected data. This is used as a fencepost in this object.
* main.tcl: Run gdb_no_inferior_hook's when done initializing.
* src.tcl (disable_ui): Disable the combo boxes, too.
(enable_ui): Enable the combo boxes, too.
* download.tcl (download_it): Run gdb_no_inferior_hooks, too.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl: Move IDE help initialization to ide.tcl.
* ide.tcl (gdbtk_ide_init): Move help system
initialization here.
Sean Mahan <smahan@cygnus.com>
* main.tcl: Initialized help sub-system for the ide.
Tomy Hudson <thudson@thudson5.cygnus.com>
* prefs.tcl: Changed COM1 back to com1 per Martins request.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (file): Call gdb_loadfile to do most of the
work.
Tomy Hudson <thudson@thudson5.cygnus.com>
* prefs.tcl: Changed "com1" to "COM1"
<dmoseley@cygnus.com>
* main.tcl: (run_executable): Added code to test for app_running.
If the app has been started and the user requests a "run", then
we must redownload to ensure that the global initialized data is
handled properly.
* download.tcl: (download_it): See above note.
Sean Mahan <smahan@cygnus.com>
* toolbar.tcl (create_menu_items): changed "Tutorial" to "Cygnus
Foundry Tour" in the Help menu.
Tom Tromey <tromey@cygnus.com>
* memory.tcl (mem_del): "destroy forget" is invalid; use "destroy"
instead.
* interface.tcl (gdbtk_tcl_query): Only ask each question once.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_init): Initialize new global
_manage_enabled_flag to 1.
(manage_disable_all): Only disable if
_manage_enabled_flag is 1.
(manage_enable_all): Only enable if _manage_enabled_flag
is not 1.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_iconify): Check for toplevel
of "." before doing anything.
* main.tcl (set_target_name): Use "pref getd" in
case port is undefined.
Keith Seitz <keiths@onions.cygnus.com>
* toolbar.tcl (GDBToolBar::constructor): Add appropriate idle, busy, and
no-inferior hooks for this class.
(create_buttons): Add all buttons to two lists so we can disable or enable
them according to the inferior's run state.
(create_menu_items): Same with the menus.
* srcbar.tcl (create_buttons): Add all buttons to two lists so we can disable
or enable them according to the inferior's run state.
(create_menu_items): Same with the menus.
(_set_run): Don't do anything to disable UI elements: the idle, busy, and
no_inferior hooks will take care of it.
(_set_runstop): Don't do anything to disable UI elements: the idle, busy, and
no_inferior hooks will take care of it.
* manage.tcl (manage): Add two new manage protocols: enable_all and
disable_all.
(manage_disable_all): New procedure to disable window manager functions
such as window deletions.
(manage_enable_all): New procedure to undo any changes made by
manage_disable_all.
(_manage_set_property): New helper procedure for above.
(manage_init): Install this module's idle, busy, and no_inferior hooks.
* src.tcl (SrcWin::constructor): Add new no_inferior hook.
(disable_ui): New procedure to disable ui elements.
(enable_ui): New procedure to enable_ui elements.
(no_inferior): New procedure to reset GUI.
(SrcWin::Running): New protected variable. A fencepost for the above
hooks.
(do_popup): Use above fencepost.
(showBalloon): Use above fencepost.
* main.tcl: Define new hook " gdb_no_inferior_hook".
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (SrcWin): Immediately set title name
to "Debugger".
Martin M. Hunt <hunt@cygnus.com>
* download_pref.tcl (LoadPref): Make window transient.
Martin M. Hunt <hunt@cygnus.com>
* register.tcl (build_win): Set scrollbars to auto
on Unix.
* stack.tcl (build_win): Set scrollbars to auto
on Unix.
* memory.tcl (build_win): Restore proper resize
functioning on Unix.
* bp.tcl (build_win): Fix problem with merging Tom's
sizebox change. Fix Tom's change so scrollbars aren't
always on on Unix, at least.
* interface.tcl (gdbtk_pc_changed): Called from GDB when
the PC is changed with a "set $pc" command.
(gdb_show_command, gdb_args, gdb_stack_trace,
gdb_docstring,gdb_stack_depth, gdb_stack_frame): Removed.
Martin M. Hunt <hunt@cygnus.com>
* memory.tcl (destructor): Destroy memory prefs window
if one exists.
(create_prefs): Make prefs window transient.
* util.tcl (freeze): Make keep_raised an option.
Martin M. Hunt <hunt@cygnus.com>
* ide.tcl (receive_file_changed): Ignore object file
changes. On source file changes, put up a messagebox
warning the user. Change both messageboxes to be system
modal, which seems to just mean they will be on top.
Martin M. Hunt <hunt@cygnus.com>
* download.tcl (download_it): Reset download_cancel flag.
* src.tcl: Create "tagtype" as a protected variable
containing the current tag mode; PC, BROWSE, or STACK.
Change all functions to use it.
(mode): Fix problem with changing modes
while browsing stack functions.
(name): Add good filenames to the combobox history.
(SrcWin): Turn off automatic history in name combobox.
(file): If filename is not found, but is part of sources,
put it in combobox followed by "(not found)"
(location): Reorder and restructure this function to
be more robust when files cannot be found or mode changes
are required. When stack browsing, highlight PC if it is
in the displayed area, and fix the off-by-1 problem
with PCs saved on the stack.
(update): Use lassign and new tagtype variable.
(set_execution_status): Change message formats for MIXED
and SRC+ASM modes.
(mode): Update toolbar and mode display before calling
location. Use tagtype so tag mode is preserved.
* bp.tcl (bp_type): Deselect line before changing its
type.
Tom Tromey <tromey@cygnus.com>
* bp.tcl (build_win): Use built-in sizebox of tixScrolledWindow.
* watch.tcl (console): Set Sizebox to 0.
* memory.tcl (build_win): Use built-in sizebox of
tixScrolledWindow.
* stack.tcl (build_win): Use built-in sizebox of
tixScrolledWindow.
* locals.tcl (build_win): Don't create sizebox.
* variables.tcl (build_win): Use built-in sizebox of
tixScrolledWindow.
(Sizebox): New instance variable.
* console.tcl (console): Use built-in sizebox of
tixScrolledWindow.
* register.tcl (build_win): Use built-in sizebox of
tixScrolledWindow.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (set_target_name): Set port based on target
name.
(set_baud): Set baud rate based on target name.
* srcbar.tcl: Change shortcuts to use () instead of <>.
* download.tcl (download_it): Set download_verbose
based on target name.
* src.tcl (build_win): Set height to 0 for name and
function comboboxes.
(location): In IDE, use vmake/source-files property
to fill name combobox.
Keith Seitz <keiths@onions.cygnus.com>
* variables.tcl (build_win): Set the variable window's
default size to 40 chars.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (set_state): When loaded state changes,
set program_has_run state to 0.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (set_status): Rewrite to handle temporary
status messages.
(set_execution_status): New function. Put a message
about the current program status in the status bar.
(trace_help): New function. Trace on changing ballon
help messages. Write them in the status bar.
* main.tcl (set_target): Comment out changing cursor.
Martin M. Hunt <hunt@cygnus.com>
* variables.tcl (changeValue): Trim string before
comparing with "".
Keith Seitz <keiths@onions.cygnus.com>
* console.tcl (constructor): Set no wrap mode.
* src.tcl (SrcWin::name): Make sure we ask gdb where the source file
is before asking the source window to open it.
(SrcWin::file): Do not ask gdb where the file is -- someone else
already has. Set the file selector to the filename only once and
only if successful finding the file.
(SrcWin::location): Add flag idicating that a file load has failed.
Resolves recursive loop with SrcWin::mode and SrcWin::location.
Make sure the file and function selectors are filled only once.
(SrcWin::mode): Add error flag to indicate that a file load failed.
Resolves recursive loop with SrcWin::location.
Make sure we exit with the proper mode set on the source window.
(SrcWin::current_addr): Define a default value of 0x0.
* console.tcl (invoke): Use new gdb_immediate command instead of
gdb_cmd.
(insert): Add all errors to the end of the text widget.
Send errors to end of text widget, not insertion pt.
(einsert): Send errors to end of text widget, not insertion pt.
* interface.tcl (gdbtk_tcl_readline_begin): Insert message into
command window so that the user sees messages like "Enter commands,
one per line. Enter 'end' when finished."
* main.tcl: Initialize gdbtk_state(readline).
Tom Tromey <tromey@cygnus.com>
* manage.tcl (manage_open): Force focus onto toplevel.
* mem_pref.tcl (build_win): Don't put <Return> binding on
toplevel; instead put focus on OK button.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (set_target_name): Replace "com1" with
the port name we really want to use.
* bp.tcl (build_win): Use place manager for sizebox
so it doesn't go away when window is resized.
* stack.tcl (build_win): Fix stack window.
* memory.tcl: Back out previous changes.
* locals.tcl (build_win): Use place manager for sizebox
so it doesn't go away when window is resized.
Tom Tromey <tromey@cygnus.com>
* mem_pref.tcl (build_win): Make OK button default.
* ide.tcl (gdbtk_ide_init): Set gdb_pretty_name. Track changes to
target-pretty-name property.
* src.tcl (update_title): Display pretty name for target.
* main.tcl (set_target): Display pretty name for target.
(gdb_pretty_name): New global.
* ide.tcl (target_pretty_name_changed): New proc.
(receive_file_changed): Display pretty name for target.
* download.tcl (download_it): Display pretty name for target.
(console): Likewise.
Thomas Hudson <thudson@cygnus.com>
* bp.tcl (build_win): Added frame and sizebox to bottom.
Returned geometry management to previous packing style
and window layout.
* stack.tcl (build_win): ditto
* memory.tcl (build_win): ditto
* watch.tcl (build_win): ditto
* locals.tcl (build_win): ditto
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_iconify): Catch iconify command.
* download.tcl (download_it): If set_target fails,
set gdb_downloading to 0 and return.
* main.tcl (set_target): Handle target command timeouts.
Pop up messagebox. Set cursor to "watch". Set title
on source window. Return 0 on error.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_find): Fix to return a list of windows.
* console.tcl (Console): Fix sizebox so it doesn't create
a whole blank line and it doesn't mess up Unix.
* register.tcl (build_win): Change "Show" to "Display".
Tomy Hudson <thudson@cygnus.com>
* console.tcl (build_win) Added frame and ide_sizebox to
bottom of window.
* stack.tcl (build_win) Added frame and ide_sizebox to
bottom of window.
* watch.tcl (build_win) Added frame and ide_sizebox to
bottom of window.
* locals.tcl (build_win) Added frame and ide_sizebox to
bottom of window.
Tom Tromey <tromey@cygnus.com>
* memory.tcl (build_win): Updated -underline values.
Martin M. Hunt <hunt@cygnus.com>
* memory.tcl (init_addr_exp): New function. Set the
initial address expression to the location of .data
if it is defined. Otherwise use $pc.
Tom Tromey <tromey@cygnus.com>
* bp.tcl (build_win): Changed packing so content fills window.
Removed `g' and `a' frames. Changed gridding on labels.
(bp_add): Changed gridding on new entries.
* memory.tcl (build_win): Put spaces in front of all menu labels.
Martin M. Hunt <hunt@cygnus.com>
* download.tcl (download_it): Change error to messagebox.
Tom Tromey <tromey@cygnus.com>
* register.tcl (reg_display_list): Initialize to empty list.
(init_reg_display_vars): Don't unset reg_display_list; set it to
empty list.
(delete_from_display_list): Likewise.
Martin M. Hunt <hunt@cygnus.com>
* ide.tcl (ide_run_server, ide_do_run_server): Take
an optional argument to indicate if program should be
run or simply downloaded.
* console.tcl (Console): Enable scrollbars in both
directions.
* main.tcl: Moved keep_raised, sleep, and toggle_debug_mode
to util.tcl.
(set_exe): If exe changed, set gdb_target_changed
to force new target command to be sent.
(set_target_name): Check to see if gdb_target_changed.
(run_executable): If exe or target changed, set gdb_loaded to
0, forcing a new download. If download only, try to
display function main in source window.
* util.tcl: New file.
* hooks.tcl: Removed. Use version in libide.
* Makefile: Add util.tcl.
* download.tcl (Download): Call freeze to make modal window.
(_map): Deleted.
(download_it): Call set_baud, then set_exe then set_target.
* mem_pref.tcl (build_win): Set default number of bytes
to 128.
* memory.tcl (build_win): Enable horizontal scrollbar
when in resize mode. Anchor to top-left. Use "nb" to
count actual number of bytes displayed, instead of "numbytes"
which will be 0 when in resize mode.
(delete_prefs): Deleted.
* src.tcl (mode): Update mode combobox with new mode name.
(location): In SRC+ASM mode if we step into a function without
source code, unhighlight everything in the source pane and let
the assembly pane show our current location.
(build_win): Enable scrollbars in both directions.
(set_state): Call update_title.
(update_title): Don't set title if the target or exe has changed.
(trace_variable): Couldn't figure out what this did that
could be useful so delete it and everything that references it.
* watch.tcl: Add description and copyright.
* variables.tcl, interface.tcl, locals.tcl: Add copyright.
* prefs.tcl, register.tcl: Add copyright.
Tomy Hudson <thudson@cygnus.com>
* register.tcl (reg_select_): Modified reg_select_* movement
methods to use the register display list instead of
a straight index.
Tomy Hudson <thudson@cygnus.com>
* register.tcl (unedit): Changed input focus to $ScrolledWin.$Editing
in unedit. This allows arrow and tab key bindings to work
after an edit.
Tomy Hudson <thudson@cygnus.com>
* register.tcl (build_win): Added key bindings and support
for tab and arrow keys, including four new methods;
reg_select_up,reg_select_down, reg_select_left, reg_select_right
* register.tcl (build_win): Added spacing frame and ide_sizebox
to window. Changed geometry manager to grid.
Martin M. Hunt <hunt@cygnus.com>
* stack.tcl (update): Only insert entries that have
length. Break when matching entry in listbox is found.
* src.tcl (config_win): Fix control-v binding so
it doesn't paste on Windows. Cancel <Delete>
binding.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (build_win): Force focus from toplevel
down to text window.
(mode): Restructure code to be clearer. Set focus
when done.
Tomy Hudson <thudson@cygnus.com>
* src.tcl (mode): Modified key bindings for MIXED mode
to be the same as ASSEMBLY mode
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_init): set bp-save to 1.
* variables.tcl (changeValue): If new value is null,
cancel edit.
Tomy Hudson <thudson@cygnus.com>
* memory.tcl (do_popup): Added method do_popup. Changed binding of
button-3 to invoke popup menu.
Tomy Hudson <thudson@cygnus.com>
* src.tcl (do_popup): Removed check for space in variable name
that disabled popup menu items. Only check now is for "".
Tomy Hudson <thudson@cygnus.com>
* src.tcl (do_popup): Removed variable name from
popup menu items. Added check for sane variable in selection
to disable menu items when appropriate.
Martin M. Hunt <hunt@cygnus.com>
* bp.tcl (bp_delete): Destroy widgets in deleted
line.
* srcbar.tcl (_set_run): Enable View menu items
when download is finished.
* download_pref.tcl (LoadPref): Call loadprefs
with gdbrunning set to 1.
Tom Tromey <tromey@cygnus.com>
* ide.tcl (gdbtk_ide_init): Use property vmake/exelist, not
vmake-exelist.
Martin M. Hunt <hunt@cygnus.com>
* variables.tcl (build_menu_helper): Comment-out
Update menu.
(getVariables): Change variable name so it doesn't
get confused with window variables.
(postMenu): Comment-out Update entries.
(UnEdit): Unbind keys when unediting.
* memory.tcl (create_prefs): When prefs are already
open, raise and focus the window.
* bp.tcl (bp_type): Deselect current line when type changes.
Martin M. Hunt <hunt@cygnus.com>
* toolbar.tcl (create_menu_items): Call open_url for
web connections.
* src.tcl (name): When new file load fails, remove it
from combobox. When load succeeds, clear status message.
(location): Change how files are loaded into combobox.
Call new gdb_listfiles function.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_create): Give newly created windows
the focus on all platforms.
* mem_pref.tcl (destructor): Notify parent when exiting.
* srcbar.tcl (_set_run): Better state handling on
pulldowns and icons.
* src.tcl (build_win): Start with toolbar in right state.
* memory.tcl (MemWin): Withdraw window until finished.
(delete_prefs): New function.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl: For IDE, iconify all windows when source
window is iconified.
* mem_pref.tcl: Take out all the modal stuff.
Leave this window non-modal.
* download.tcl: Fix references to source window.
(Download): Make window modal and always on top.
* memory.tcl (destructor): Kill mem prefs window too.
* variables.tcl (changeValue): Clean up.
* register.tcl (acceptEdit): Change error messagebox.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (set_state): Disable items in breakpoint
popups.
(config_win): Change capitalization in popups.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl: Major rewrite. Simplify. Move IDE
functions to new file. Add state variables and
hooks. Add copyright.
* ide.tcl: New file. IDE functions.
* download.tcl (download_it): Use new state variables.
* src.tcl: Use new state variables.
(constructor): Add state hook.
(set_state): Hook to enable/disable menus and icons.
* srcbar.tcl (runstop): Renamed from "running"
(running): Public variable to control icons.
(_set_runstop): Change Running man to stop sign.
(_set_run): Enable/disable icons depending on debugger
state.
* manage.tcl (create_closed): Deleted function.
(manage_create): Remove visibility argumnet.
(manage_delete): Remove special case for debugger prefs.
* prefs.tcl (pref_set_defaults): Remove gdb/advanced.
* hooks.tcl: Add copyright.
* Makefile: Add ide.tcl.
Tom Tromey <tromey@cygnus.com>
* download_pref.tcl (LoadPref): Inherit from GdbLoadPref.
(constructor): Rewritten.
(build_win): Removed.
(change_baud): Removed.
(save): Removed.
(cancel): Removed.
(config): Removed.
(reconfig): Removed.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (target_name_changed): Append correct
port name to target name.
(gdbtk_ide_init): Don't initialize IDE preferences.
Append port name to target name.
* toolbar.tcl (create_menu_items): Add Debugger Preferences
to File menu.
* pref.tcl: Remove all ide preferences functions.
* prefs.tcl (pref_set_defaults): Define gdb/load/port.
* download_pref.tcl: Added serial port selection.
Martin M. Hunt <hunt@cygnus.com>
* register.tcl (acceptEdit): Remove leading spaces from
values.
* src.tcl (config_win): New tag bp_tag. Like break_tag
except used when a bp is set on that line. Bind new menu
to bp_tag.
(insertBreakTag): Accept tag type. Remove old tag.
(do_bp): When a breakpoint is set, use bp_tag.
Tom Tromey <tromey@cygnus.com>
* pref.tcl (pref_ide_proc): Withdraw the toplevel, not the
window.
Tom Tromey <tromey@cygnus.com>
* tclIndex: Rebuilt.
* mem_pref.tcl (build_win): Use standard_button_box.
(_map): New method.
(constructor): Run _map on <Map> event.
* pref.tcl (pref_ide_proc): Use idewindow_check_freeze.
(pref_modal_dialog): Use idewindow_freeze and idewindow_thaw.
* hooks.tcl: Removed.
* Makefile (TCL): Removed hooks.tcl.
Tom Tromey <tromey@cygnus.com>
* main.tcl (ide_run_server): Quote call to ide_do_run_server.
Tom Tromey <tromey@cygnus.com>
* download_pref.tcl (build_win): Make OK button default. Invoke
when Return pressed.
* download_pref.tcl (build_win): Don't allow pref window to
resize. Use standard_button_box to lay out buttons.
* pref.tcl (pref_ide_proc): Handle window freezing.
(pref_modal_dialog): Freeze and thaw window around the grab.
(build_win): Use standard_button_box to lay out buttons. Don't
allow pref window to resize.
Ian Lance Taylor <ian@cygnus.com>
* src.tcl (src_ide_proc): Download the file in an idle callback.
Execute the idewindow command even if the download was cancelled.
* library/main.tcl (ide_run_server): Do everything in an idle
callback.
(ide_do_run_server): New procedure.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl (bp_line): Use hasBP instead of validBPLine.
Allow type TC even if BP set.
(validBPLine): Renamed to hasBP.
Tom Tromey <tromey@cygnus.com>
* manage.tcl (manage_open): Special case "about" window when
running under IDE.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (set_target): Set the target again if the
executable has changed and executed a "file" command.
* memory.tcl (update_address): Accept numerical entries
and catch errors.
* download.tcl (Download): Cancel button should call
cancel method.
* main.tcl (run_executable): Fixed messageBox.
Tom Tromey <tromey@cygnus.com>
* floatbar.tcl (constructor): Added.
* srcbar.tcl (constructor): Added.
* toolbar.tcl (_ide_title): New instance variable.
(create_menu_items): Pass _ide_title to idewindmenu.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (toggle_debug_mode): Fix typo and print
debug message before disabling it.
Martin M. Hunt <hunt@cygnus.com>
* manage.tcl (manage_delete): Don't remove a window
from the active list until after it has already deleted
itself.
* toolbar.tcl (create_menu_items): Change Console shortcut
to Ctrl+N.
* src.tcl (config_win): Change Console shortcut to Ctrl+N.
Martin M. Hunt <hunt@cygnus.com>
* src.tcl: (do_bp): Catch errors.
(validBPLine): Valid lines have a "-" or an image.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (ide_run_server): Don't run executable if
download was cancelled. Reset cancelled flag.
(run_executable): Call download_it.
(download): Renamed download_it and moved to download.tcl.
(set_target): Don't set target if the name hasn't changed
from the last time.
* register.tcl (reg_select): Catch errors.
(delete_from_display_list): Enable menu item.
* src.tcl (build_win): Add progress bar for downloads.
(download_progress): New function. Callback to update
progress meter.
(src_ide_proc): Don't open src window if download
cancelled.
* toolbar.tcl (create_menu_items): Call download_it.
* srcbar.tcl (_set_run): New mode. Sets run button to stop
sign during downloads.
* prefs.tcl (pref_set_defaults): Define gdb/load/verbose.
* interface.tcl: Define new hook download_progress_hook.
* floatbar.tcl (create_buttons): Call download_it.
* download_pref.tcl: Add download dialog prefs.
* download.tcl (Download): Change back to old dialog
with each section listed seperately.
(download_hash): Use a hook.
(download_it): New function. Replaces old "download"
from main.tcl. Now deletes all breakpoints before
downloading and handles cancels correctly.
Martin M. Hunt <hunt@cygnus.com>
* main.tcl (download): Don't quote the executable name
with single quotes.
Tom Tromey <tromey@cygnus.com>
* src.tcl (src_ide_proc): Exit gdb when destroy request seen.
Ian Lance Taylor <ian@cygnus.com>
* main.tcl (gdbtk_ide_init): Use src_ide_proc for the source
window, rather than idewindow_proc. Remove extraneous line.
* src.tcl (src_ide_proc): New procedure, replacing open_src. Only
download if we are opening the source window.
(src_no_save): New procedure.
* main.tcl (gdbtk_ide_init): Initialize gdb_checking_for_exit.
Register gdb_exit_check as the exit check procedure.
(gdb_exit_check): New procedure.
* interface.tcl (gdbtk_tcl_query): If gdb_checking_for_exit, use a
system modal message box.
* src.tcl (build_win): Create a FocusIn binding to push focus down
from the top level.
* console.tcl: Change all control, alt, and unadorned character
bindings to use bind_plain_key.
* memory.tcl: Likewise.
* src.tcl: Likewise.
* variables.tcl: Likewise.
* src.tcl: Use bind_plain_key rather than explicitly ignoring Alt
bindings.
* src.tcl (print): Call idewindow_freeze and idewindow_thaw around
call to print menu.
* srcbar.tcl (create_menu_items): Likewise, around call to page
setup menu.
* main.tcl (gdbtk_ide_init): Use an underscore in generic window
name, to set the accelerator key.
(ide_run_server): Likewise.
* toolbar.tcl (create_buttons): Likewise.
Martin M. Hunt <hunt@cygnus.com>
* register.tcl (acceptEdit): If no value is entered,
set the cell to 0.
Ian Lance Taylor <ian@cygnus.com>
* src.tcl (config_win): Add ignored Alt bindings for all the
unmodified key bindings.
* download.tcl (constructor): Withdraw the window before doing
anything. Set the width of the label. Don't try to center the
window. Pass toplevels to wm transient. Run keep_raised after
500. Don't call update.
(done): Use after rather than a busy loop.
(destructor): Cancel the after if it is defined.
(after_id): New protected variable.
* main.tcl (download): If download is already running, don't do
anything. If .load0.load exists, delete it before calling manage
create.
* main.tcl (gdbtk_ide_init): Use pref_ide_proc rather than
idewindow_proc when registering the preference window.
* download_pref.tcl (save, cancel): Call pref_ide_finished.
* pref.tcl (save, cancel): Likewise.
(pref_ide_proc): New procedure.
(pref_no_save): New procedure.
(pref_modal_dialog): New procedure.
(pref_ide_finished): New procedure.
* tclIndex: Rebuild.
* main.tcl (gdbtk_ide_init): Initialize gdb_download_cancelled.
(run_executable): Put a trace on gdb_download_cancelled. Change
the dialog box message. If the user cancels the download, clear
gdb_run_pending and just return without running.
(ide_do_run): Remove the traces on gdb_download_cancelled. If the
user cancelled the download, just clear gdb_run_pending.
(target_name_changed): Clear gdb_download_cancelled. Call
set_exe_name.
(download): If the executable is not up to date, ask whether the
user is really really sure. If the user cancels the download
using the dialog button, set gdb_download_cancelled, and don't set
the breakpoints or gdb_download_complete.
(set_exe_name): Clear gdb_download_cancelled.
(receive_file_changed): Ask whether we should download the new
executable.
* src.tcl (open_src): Don't download the file if
gdb_download_cancelled is set.
* interface.tcl (gdbtk_tcl_query): Pass -modal task to
tk_messageBox.
* main.tcl (set_exe_name): Tell the src window to go back to
looking at main if the file changes.
* src.tcl (update): Catch errors when calling gdb_loc.
* main.tcl (gdbtk_ide_init): Handle file-created, file-changed,
file-removed, and file-deleted events rather than process-ended
events.
(set_exe_name): Call gdb_clear_file even if the file does not
exist. Likewise for setting gdb_download_complete to zero.
(receive_file_changed): Rename from receive_process_ended. Only
check the executable mtime if the tail of the file name matches
the executable name.
Ian Lance Taylor <ian@cygnus.com>
* srcbar.tcl (create_menu_items): Change ``Print Setup...'' to
``Page Setup...''. Pass -parent to ide_winprint page_setup.
* src.tcl (print): Pass -parent to send_printer.
Ian Lance Taylor <ian@cygnus.com>
* main.tcl: Move initialization code to end of file, after all
procedures have been defined.
(gdbtk_ide_init): New procedure to handle IDE initialization.
(gdbtk_tcl_preloop): Don't do anything if using the IDE.
(ide_run_server): Error if file does not exist. Use
idewindow_activate_by_name, rather than manage open. Do
everything after idle.
(run_executable): Clean up a bit. Consistently use ide_do_run.
(target_name_changed): Rename from target_name. Rename parameter
num to propset.
(download): Error if the file does not exist. Call set_exe_name.
Don't set gdb_download_mtime. Don't check whether gdb_run_pending
is 2.
(exe_name_changed): Rename from exe_name.
(set_exe_name): Set gdb_exe_mtime. Quote filename passed to
gdb_cmd.
(receive_process_ended): Don't check the data argument. Check
gdb_exe_set rather than gdb_download_complete. Check
gdb_exe_mtime rather than gdb_download_mtime.
* src.tcl (open_src): Set the location to main as well as
downloading the file. Don't set gdb_run_pending to 2.
Tue Feb 10 17:50:37 1998 Keith Seitz <keiths@onions.cygnus.com>
* bp.tcl (build_win): Do not set the disabled foreground for menus. Insert
all tracepoints, too.
(bp_add): Handle tracepoints.
(bp_type): Handle tracepoints.
(update): Handle tracepoints.
(bp_all): Do tracepoints, too.
(Index_to_bptype): New protected variable to index type of break (breakpoint
or tracepoint) against index in window.
(bp_select): Disable/Enable menu items based on type.
(bp_able): Handle tracepoints.
* src.tcl (do_bp): Handle disabled tracepoints.
* actiondlg.tcl (change_other): Handle memranges and use info address to
validate entries.
* tracedlg.tcl (edit): Handle memranges when formatting data for
action dialog.
Mon Jan 26 11:44:39 1998 Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (fill_files): Don't check for file's existance -- let
SrcWin::name do that.
* actiondlg.tcl (change): Add everything that is specified, not
just the things about which we know.
Sun Jan 25 01:01:32 1998 Martin M. Hunt <hunt@cygnus.com>
* stack.tcl (update): Only insert entries that have
length. Break when matching entry in listbox is found.
* src.tcl (fill_files): Don't call lsort. New listfiles
command sorts for us.
* variables.tcl (changeValue): If new value is null,
cancel edit.
(build_menu_helper): Comment-out Update menu.
(getVariables): Change variable name so it doesn't
get confused with window variables.
(postMenu): Comment-out Update entries.
(UnEdit): Unbind keys when unediting.
Thu Jan 22 10:38:19 1998 Keith Seitz <keiths@cygnus.com>
* toolbar.tcl (create_menu_items): Disable preferences.
* prefs.tcl (pref_set_defaults): Attach the toolbar to the source window
by deafult.
* src.tcl (SrcWin::build_win): Turn off history for the file selector.
(SrcWin::name): Use SOURCEWIN_set_status to upate status.
Make sure we ask gdb where the source file is before asking
the source window to open it.
(SrcWin::file): Do not ask gdb where the file is -- someone else already has.
Set the file selector to the filename only once and only if
successful finding the file.
(SrcWin::fill_files): Sort the files before inserting into file selector.
(SrcWin::location): Add flag idicating that a file load has failed. Resolves
recursive loop with SrcWin::mode and SrcWin::location.
Make sure the file and function selectors are filled only once.
Use SOURCEWIN_set_status and SOURCEWIN_reset_status as appropriate.
(SrcWin::set_status): Add verbatim flag to allow a generic message to be
displayed.
(SrcWin::mode): Add error flag to indicate that a file load failed. Resolves
recursive loop with SrcWin::location.
Make sure we exit with the proper mode set on the source window.
(SrcWin::reset_status): New procedure.
(SrcWin::current_addr): Define a default value of 0x0.
(SrcWin::Status): New protected variable.
(SrcWin::bp_line): Check if breakpoint set in assembly-mode, too.
(SOURCEWIN_set_status): New procedure to temporarily set the status bar.
(SOURCEWIN_reset_status): New procedure which is called after the status bar
should be reset.
(SOURCEWIN_reinit): New procedure to reinitialize the source window. (To be
called when new symbol files are added and like).
* interface.tcl (gdbtk_tcl_query): Properly set the name of the
query dialog.
(gdbtk_tcl_pre_add_symbol): Hook called from gdbtk.c to inform user that
we are reading symbols.
(gdbtk_tcl_post_add_symbol): Hook called from gdbtk.c to inform user that
are finished reading symbols.
* src.tcl (SOURCEWIN_reinit): New procedure which updates the source window with
a default file, fills the file selectors, etc.
(SOURCEWIN_set_status): New procedure which can be used to set the status bar
on the source window.
(set_status): Add flag for setting the status as-is.
* main.tcl: Call SOURCEWIN_reinit to setup the source window on startup.
Fri Jan 16 09:11:30 1998 Keith Seitz <keiths@onions.cygnus.com>
* src.tcl (SOURCEWIN_set_status): New procedure to allow anyone to set the
status bar text at the bottom of the source window.
(fill_files): Use a little more full-proof method (if slower) for eliminating
duplicates int the files combobox.
* interface.tcl (gdbtk_tcl_pre_add_symbol): New procedure called prior to
a symbol file is loaded.
(gdbtk_tcl_post_add_symbol): New procedure called after a symbol file is
loaded.
Thu Jan 15 12:41:27 1998 Keith Seitz <keiths@onions.cygnus.com>
* console.tcl (invoke): Use new gdb_immediate command instead of gdb_cmd.
Wed Dec 31 16:50:26 1998 Keith Seitz (keiths@onions.cygnus.com)
* actiondlg.tcl (change): handle '$' in register names.