Commit Graph

12 Commits

Author SHA1 Message Date
Stu Grossman cb3313c147 * gdbtk.tcl (reg_config_menu create_registers_window
recompute_reg_display_list):  Use array instead of individual vars
	for register display list.
	* (recompute_reg_display_list update_registers):  Fix bug with not
	displaying all registers.
1994-12-13 01:04:38 +00:00
Stu Grossman 746d1df4a9 * gdbtk.c: New tcl commands: gdb_fetch_registers,
gdb_changed_register_list, and gdb_regnames.
	* gdbtk.tcl:  Use monochrome color model for now.
	* (delete_breakpoint_tag create_file_win):  Add breakdot support.
	* (create_file_win create_asm_win update_listing build_framework
	create_source_window create_command_window):  Re-org window
	creation to give all windows consistent look and feel.
	* (update_listing update_asm):  Change pc pointer to '->'.
	* (registers_command reg_config_menu create_registers_window
	populate_reg_window update_registers):  Revamp register window.
	Allow selection of registers to be displayed.  Highlight changed
	registers.
1994-12-12 20:50:08 +00:00
Stu Grossman 04576ab6cc * gdbtk.tcl (build_framework): Fix bug with setting window titles. 1994-11-28 18:20:21 +00:00
Stu Grossman c981300c38 * gdbtk.tcl (build_framework): Add "Report bug" to help menu. 1994-11-28 18:01:31 +00:00
Stu Grossman 006e71e956 * gdbtk.tcl: Re-arrange windows using new, consistent layout. Clean
up lots of code and centralize framework initialization.
1994-11-28 17:23:13 +00:00
Stu Grossman cd2df226a7 * Makefile.in: Use $(objdir)/tcl and $(objdir)/tk if they are
available.
	* configure.in (ENABLE_CLIBS):  Use $(TCL) and $(TK) instead of
	-ltcl and -ltk.
	* gdbtk.c:  Get rid of lots of unnecessary #includes.
	* (gdbtk_init):  Use ConnectionNumber macro instead of referencing
	Display structure directly.
	* gdbtk.tcl:  Change exit button to quit button (makes shebs
	happy).
1994-11-02 00:50:12 +00:00
Stu Grossman 479f0f18d4 * defs.h, infrun.c (wait_for_inferior), top.c: Call
target_wait_hook to allow GUI to handle blocking for inferior.  Call
	call_command_hook in execute_command to provide means for wrapping
	commands with GUI state change updates.
	* gdbtk.c (gdb_cmd):  Force GUI into idle mode when errors occur.
	* (gdb_stop):  New tcl command to stop the target process.
	* (x_event, gdbtk_wait):  Allow GUI to interrupt gdb out of target
	waits.
	* (gdbtk_call_command):  Wrapper around command processing to
	alert GUI of target state changes.
	* (gdbtk_init):  Get the fd of X server for doing async
	notification of X events (via x_event).  Setup new hooks.
	* gdbtk.tcl:  Add scrollbars to assembly and command windows.
	* Change window foreground & background colors.
	* Create margin tag for breakpoints in source and assembly windows.
	* Add new routines to be invoked when target state changes to/from
	idle.
	* Add start of expression window.
	* Change bindings of mouse button 1 in assembly and source window
	to just set or clear breakpoints when in the margin tag.
	* Change shape of register window to be more vertical to better
	reflect it's contents.
	* Add stop button.
	* Cleanup some code around command window bindings.

	* infrun.c (wait_for_inferior):  Make sure
	through_sigtramp_breakpoint is non-null before deleting.
1994-10-21 00:59:20 +00:00
Stu Grossman a5cffdc44a * gdbtk.tcl: Let ^U delete lines in the command window. 1994-09-18 00:07:56 +00:00
Stu Grossman 637b166117 * defs.h (QUIT): Call interactive_hook to allow GUI to interrupt.
Also, add decl for symtab_to_filename.
	* gdbtk.c:  Replace calls to full_filename with symtab_to_filename.
	* gdbtk.tcl:  New routine pc_to_line replaces in line code.  New
	routine decr replaces in line code.
	* (create_file_win):  Use catch to handle open failures more
	elegantly.  Also, create special window to display file open
	failure message.  Move opening of file prior to creation of text
	widget.
	* (create_asm_win):  Add PC as argument.  We now base disassembly
	on PC instead of function name, since function names can be
	ambiguous (usually seen with shared libs).  Also, use catch to
	simplify code where we don't care about failures.
	* source.c (symtab_to_filename):  New.  Returns the file
	associated with a symtab.
	* top.c:  Define interactive_hook.  Called during QUIT to animate
	the GUI.
1994-09-16 22:57:37 +00:00
Stu Grossman 335129a977 * gdbtk.tcl: Add ref counts to breakpoint tags.
* Put quotes around function name in disassemble command to better
	handle assembler names containing `.'.
	* Make pclist element 0 be filler to avoid off-by-one problem with
	line numbers.
	* Set names of top-level windows.
	* Add register display window.
	* Add PC to label of assembly window.
1994-09-14 08:02:51 +00:00
Stu Grossman 8532893d17 * gdbtk.c (gdbtk_flush gdbtk_fputs): Buffer up output to make
disassembly more efficient.
	* (breakpoint_notify):  Include pc in gdbtk_tcl_breakpoint
	callback.
	* (gdb_loc):  Include pc in return value.  Also, return function
	name if arg was specified.
	* (gdb_cmd_stub):  Call gdb_flush to drain internal GDB buffers
	after command completes.
	* (gdbtk_init):  Improve error handling.

	* gdbtk.tcl:  Add lots of comments.  Clean up code.
	* (gdbtk_tcl_fputs):  Make output window redirectable.
	* Add assembly window, and breapoint support.
	* Make button 1 in margin toggle breakpoints.
	* Use stippling to indicate breakpoint disabling.
1994-09-13 16:24:01 +00:00
Stu Grossman 754e5da26e * Makefile.in (INSTALLED_LIBS, CLIBS, DEPFILES): Add support for
--enable-xxx configure option by adding ENABLE_{CLIBS DEPFILES}
	where appropriate.

	* General hackery to support alternate user-interface.
	* breakpoint.c (mention, delete_breakpoint, enable_breakpoint,
	disable_breakpoint):  Call hooks for alternate user-interface.
	* defs.h:  Add declarations for alternate user-interface hooks.
	* main.c (main):  Add --nw (and --nowindows) options to disable
	the GUI.
	* (near call to command_loop):  Call command_loop_hook if set.
	* (fputs_unfiltered):  Call fputs_unfiltered_hook if set.
	* stack.c:  Call print_frame_info_listing_hook if set.
	* top.c (gdb_init):  Initialize targets.c and utils.c prior to
	other files to make sure that calls to error and warning will
	work.  Call init_ui_hook after everything else.
	* utils.c (query):  Call query_hook if set.
	* (gdb_flush):  Call flush_hook if set.
	* Change _initialize_utils to initialize_utils cuz we don't use
	automatic initialization of utils.c anymore.

	* Support for TK GUI.
	* Makefile.in:  Add rule for gdbtk.o.
	* configure.in:  Add support for --enable-gdbtk.
	* gdbtk.c:  New file.  Contains support routines for TK interface.
	* gdbtk.tcl:  New file.  Implements GUI policy.

	* remote.c:  Get rid of #ifdef DONT_USE_REMOTE.  It's no longer
	necessary.
1994-07-28 22:07:02 +00:00