Commit Graph

96 Commits

Author SHA1 Message Date
Stephane Carrez 8cee930b67 * tuiIO.c (tui_putc): New function to print one character.
(printable_part): New function from readline/complete.c.
	(PUTX): New macro, likewise.
	(print_filename): New function, likewise.
	(get_y_or_n): New function, likewise and adapted for TUI.
	(tui_rl_display_match_list): New function from readline/complete.c
	and writes on TUI command window.
	(tui_setup_io): Install or remove the readline hook
	rl_completion_display_matches_hook so that completion is written
	directly in TUI command window instead of in the TUI pipe.
	(tui_initialize_io): Use #ifdef TUI_USE_PIPE_FOR_READLINE for the
	TUI redirection pipe.
	(tui_getc): Likewise for call to tui_readline_output.
	(tui_readline_output): Likewise for function.
	* tui.c (tui_rl_startup_hook): Always take care of gdb prompt.
2002-09-03 20:47:48 +00:00
Stephane Carrez 770c90cdb5 * tuiWin.c (_newHeightOk): Fix compilation warnings. 2002-09-02 19:34:18 +00:00
Stephane Carrez f020bed670 * tuiWin.c (_tuiAllWindowsInfo): Don't crash if the window
is not displayed.
2002-09-01 17:23:59 +00:00
Stephane Carrez 27229e9991 * tui-out.c (tui_out_new): Clear start_of_line.
* tuiSource.c (tuiVerticalSourceScroll): Use print_source_lines
	to update the current source line.
2002-09-01 16:12:52 +00:00
Stephane Carrez cda8ab4048 * tui-hooks.c (tui_detach_hook): New hook to know when a process dies.
(tui_install_hooks): Install it.
	(tui_remove_hooks): Remove it.
2002-09-01 12:49:32 +00:00
Stephane Carrez cb50eddded * tuiData.h (FILE_PREFIX): Don't define.
(blankStr, locationStr, breakStr): Don't declare.
	(breakLocationStr, nullStr, historyLimit, setHistoryLimitTo): Likewise.
	(displayableWinContentOf, displayableWinContentAt): Likewise.
	(winElementHeight, winByName, freeAllWindows): Likewise.

	* tuiData.c (blankStr, locationStr, breakStr): Remove.
	(breakLocationStr, nullStr, historyLimit, setHistoryLimitTo): Remove.
	(displayableWinContentOf, displayableWinContentAt): Remove.
	(winElementHeight, winByName, freeAllWindows): Remove.
2002-09-01 10:49:00 +00:00
Stephane Carrez 5026540224 * tuiStack.c (tui_make_status_line): New function to create the
status line.
	(tuiShowLocatorContent): Use it instead of displayableWinContentAt.
	* tuiData.h (PROC_PREFIX): Use "In:" to reduce length of prefix.
	(PC_PREFIX): Use upper case.
	(SINGLE_KEY, MIN_LINE_WIDTH, MIN_PROC_WIDTH): Define.
	(MAX_TARGET_WIDTH, MAX_PID_WIDTH): Define.
2002-09-01 10:20:48 +00:00
Stephane Carrez 6999695c60 * tuiSourceWin.h (tuiUpdateAllExecInfos): Don't declare.
(tuiClearAllExecInfosContent): Likewise.
	(tuiEraseAllExecInfosContent): Ditto.
	(tuiUpdateSourceWindowsFromLocator): Ditto.
	* tuiSourceWin.c (tuiUpdateAllExecInfos): Remove.
	* tui.h (tui_vCheckDataValues): Don't declare.
	(tui_vStartNewLines, tui_vAllSetHasBreakAt): Likewise.
	(tui_vUpdateLocatorFilename, tui_vUpdateSourceWindowsWithAddr): Ditto.
	(tui_vShowFrameInfo): Ditto.
2002-08-31 12:25:29 +00:00
Stephane Carrez e09d2eba9e 2002-08-31 Stephane Carrez <stcarrez@nerim.fr>
* tui.c (tui_commands): Table of single key commands.
	(tui_rl_command_key): New function to execute gdb command.
	(tui_rl_command_mode): New function to temporarily leave SingleKey.
	(tui_rl_next_keymap): New function to enter/leave the SingleKey mode.
	(tui_rl_startup_hook): New function to avoid prompt display by
	readline functions.
	(tui_set_key_mode): New function to set the key mode and install
	the readline keymap.
	(tui_initialize_readline): Create TUI SingleKey readline map.
	(tui_enable): Install rl_startup_hook.
	(tui_disable): Remove it.
	* tui.h (enum tui_key_mode): Declare.
	(tui_set_key_mode, tui_current_key_mode): Declare.
	* tuiIO.c (tui_redisplay_readline): Don't display the prompt in
	SingleKey mode.
	* tuiIO.h (tui_redisplay_readline): Declare.
2002-08-31 12:02:14 +00:00
Stephane Carrez 00b90ae2d1 * tuiSourceWin.c (tuiSetIsExecPointAt): Redraw the previous and
current line.
2002-08-30 21:49:49 +00:00
Stephane Carrez 98427f3550 * tuiSource.c (tuiSetSourceContent): Remove old breakpoint code.
(_hasBreak): Remove.
	(tuiShowSource): Fix comment indentation.
	(tuiSourceIsDisplayed): Likewise.
	(tuiVerticalSourceScroll): Likewise.
2002-08-30 20:23:34 +00:00
Stephane Carrez 00b2bad465 * tuiSourceWin.h (tui_update_all_breakpoint_info): Declare.
(tui_update_breakpoint_info): Declare.
	(tuiSetHasBreakAt, tuiAllSetHasBreakAt): Remove.

	* tuiSourceWin.c (tuiUpdateSourceWindowAsIs): Update breakpoint
	information using tui_update_breakpoint_info.
	(tui_update_all_breakpoint_info): New function to refresh all
	execution windows.
	(tui_update_breakpoint_info): New function to recompute the status
	of exec info window from breakpoints.
	(tuiSetHasBreakAt, tuiAllSetHasBreakAt): Remove.
	(tuiSetExecInfoContent): Use the exec info flags computed by
	tui_update_breakpoint_info to display a short status about breakpoints.

	* tuiData.h (TuiExecInfoContent): New for exec info string.
	(TuiWhichElement): Use it.
	(TUI_BP_ENABLED, TUI_BP_DISABLED, TUI_BP_HIT): New defines.
	(TUI_BP_CONDITIONAL, TUI_BP_HARDWARE): New defines.
	(TUI_BP_HIT_POS, TUI_BP_BREAK_POS, TUI_EXEC_POS): Likewise.
	(TUI_EXECINFO_SIZE): Likewise.
	* tuiData.c (initContentElement): Clear exec info string.

	* tui-hooks.c (get_breakpoint): Remove.
	(tui_event_create_breakpoint): Call tui_update_all_breakpoint_info.
	(tui_event_delete_breakpoint): Likewise.
	(tui_event_modify_breakpoint): Likewise.
2002-08-30 20:07:05 +00:00
Stephane Carrez 77cad3ba61 * tui.c (tuiGetLowDisassemblyAddress): Moved from here.
* tuiDisassem.c (tuiGetLowDisassemblyAddress): To here, and use
	tui_find_disassembly_address to find the starting address of
	disassemble window.
2002-08-28 20:33:27 +00:00
Stephane Carrez aec2f747a8 * tuiDisassem.c (tui_disassemble): New function to disassemble
several lines in a buffer.
	(tui_find_disassembly_address): New function to search backward
	or forward a disassembly line.
	(tuiSetDisassemContent): Use tui_disassemble to obtain the real
	content and format it in the window.
	(tuiShowDisassemAndUpdateSource): Remove unused locals.
	(tuiVerticalDisassemScroll): Use tui_find_disassembly_address to
	obtain the address to disassemble for the scrolling.
	* tuiDisassem.h (tuiGetBeginAsmAddress): Update.
	* tuiSourceWin.c (tuiUpdateSourceWindowAsIs): Don't pass symtab.
2002-08-27 21:59:49 +00:00
Stephane Carrez ec6f88920b * tuiIO.c (CTRL_CHAR): Redefine and use readline 4.3 definition. 2002-08-27 20:58:27 +00:00
Stephane Carrez 1533ce99dd Fix PR gdb/393:
* tui.c (tui_disable): Update gdb's knowledge of its terminal
	using target_terminal_save_ours.
	(tui_enable): Likewise.
2002-08-26 19:35:37 +00:00
Stephane Carrez 6ba6ffa237 * tui.c (tui_rl_switch_mode): Renames tui_switch_mode.
(tui_rl_change_windows): Renames tui_change_windows.
	(tui_rl_delete_other_windows): Renames tui_delete_other_windows.
	(tui_initialize_readline): Update.
2002-08-25 21:44:41 +00:00
Stephane Carrez f8b6fe0970 * tuiDisassem.c (tuiSetDisassemContent): Use breakpoint_here_p.
(_hasBreak): Remove.
2002-08-25 19:54:56 +00:00
Stephane Carrez 0510ab860e * tuiDisassem.c (tuiGetBeginAsmAddress): Use lookup_minimal_symbol
to find symbol address.
2002-08-25 19:39:45 +00:00
Stephane Carrez 1f393769d4 * tuiSourceWin.c (tui_display_main): Rename from tuiDisplayMainFunction
and use tuiGetBeginAsmAddress.
	* tuiSourceWin.h (tui_display_main): Declare.
	* tui.h (tuiDisplayMainFunction): Remove.
	* tui-hooks.c (tui_new_objfile_hook): Update.
2002-08-25 19:19:50 +00:00
Stephane Carrez 74e70df6b6 * tuiSource.h (m_tuiShowSourceAsIs): Remove macro.
(tuiShowSourceAsIs): Don't declare.
2002-08-25 18:58:58 +00:00
Stephane Carrez 90949d06a3 * tui-hooks.c (tui_selected_frame_level_changed_hook): Always update
the frame position.
2002-08-25 18:42:32 +00:00
Stephane Carrez 7d6dd1e97d * tuiStack.c (tuiSetLocatorContent): Remove.
(tuiUpdateLocatorInfoFromFrame): Remove.
	(tui_set_locator_info): Allocate the content buffer if necessary.
	(tui_set_locator_filename): Call tui_set_locator_info directly.
	(tuiShowFrameInfo): Likewise and use find_pc_line instead of
	find_pc_symtab.
2002-08-25 17:13:29 +00:00
Stephane Carrez 2e17b76385 * tuiSourceWin.c (tuiDisplayMainFunction): Update to use
tuiUpdateLocatorFilename.
	* tuiStack.c (tuiSetLocatorInfo): Make it static.
	(tuiSetLocatorContent): Likewise.
	(tuiUpdateLocatorInfoFromFrame): Likewise.
	(tuiSwitchFilename): Remove.
	(tui_set_locator_filename): New function
	(tui_set_locator_info): Rename from tuiSetLocatorInfo to GNU-ify;
	use tui_set_locator_filename to record the filename.
	(tuiUpdateLocatorFilename): Likewise.
	(tuiUpdateLocatorInfoFromFrame): Update.
	(tuiSetLocatorContent): Likewise.
	* tuiStack.h (tuiClearLocatorContent): Don't declare.
	(tuiSetLocatorInfo, tuiSetLocatorContent): Likewise.
	(tuiUpdateLocatorInfoFromFrame, tuiSwitchFilename): Likewise.
2002-08-25 13:13:20 +00:00
Stephane Carrez bc6b7f04ca * tuiSourceWin.c (tuiSetHasBreakAt): Use filename for breakpoint
comparison; cleanup.
	* tuiSource.c (tuiSetSourceContent): Set window title and filename.
	* tuiGeneralWin.c (boxWin): Print optional title on top of window.
	* tuiData.h (TuiSourceInfo): Add filename member.
	(TuiGenWinInfo): Add title member.
	* tuiData.c (initGenericPart): Clear title.
	(freeWindow): Free title and filename; remove unused locals.
	(initWinInfo): Clear filename.
	(tuiDelWindow): Free it; remove unused locals.
2002-08-25 11:00:46 +00:00
Stephane Carrez d059f789de * tuiStack.h (tuiGetLocatorFilename): Don't declare.
(tuiUpdateLocatorDisplay): Likewise.
	* tuiStack.c (tuiGetLocatorFilename): Remove.
	(tuiShowFrameInfo): Use tuiSetLocatorContent and tuiShowLocatorContent
	instead of tuiUpdateLocatorDisplay.
	(tuiUpdateLocatorDisplay): Remove.
2002-08-25 10:04:08 +00:00
Stephane Carrez 3a42771a8e * tuiStack.h (tuiClearLocatorDisplay): Don't declare.
* tuiStack.c (tuiClearLocatorDisplay): Remove.
	(tuiShowLocatorContent): Use wclrtoeol to clear end of status line.
	(tuiUpdateLocatorDisplay): Don't call tuiClearLocatorDisplay.
2002-08-25 09:53:27 +00:00
Stephane Carrez 5564c76952 * tuiStack.c (tui_get_function_from_frame): Rename from
_getFuncNameFromFrame; use print_address_symbolic to get symbolic
	name of address.
	(tuiUpdateLocatorInfoFromFrame): Update.
2002-08-25 09:40:32 +00:00
Stephane Carrez bc77de56b6 * tuiRegs.c (tuiDisplayRegistersFrom): Remove unused locals.
(_tuiRegisterFormat, _tuiSetSpecialRegsContent): Likewise.
	(_tuiSetGeneralAndSpecialRegsContent): Likewise.
	(_tuiSetFloatRegsContent): Likewise.
	(_tuiRegisterName): Return a const char*.
	* tuiData.h (_TuiDataElement): Use const char* for name.
2002-08-25 09:12:36 +00:00
Stephane Carrez 335fc5a319 * tuiSourceWin.h (tuiEraseAllSourceContent): Don't declare.
(tuiShowAllExecInfosContent): Likewise.
	* tuiSourceWin.c (tuiEraseAllSourceContent): Remove.
	(tuiShowAllExecInfosContent): Remove.
	(tuiAllocSourceBuffer): Remove unused locals.
2002-08-25 08:44:44 +00:00
Stephane Carrez 7563e053c3 * tuiStack.c (tui_update_command): Rename _tuiUpdateLocation_command
to follow other gdb's command names; use execute_command; cleanup.
	(_initialize_tuiStack): Update.
2002-08-25 08:22:58 +00:00
Stephane Carrez b7a60de68b * tuiWin.h (tui_update_gdb_sizes): Declare. 2002-08-25 07:56:01 +00:00
Stephane Carrez 297d160777 * tui.c (strcat_to_buf): Use const char* for source item.
(tui_enable): Update the windows if there is a selected frame.
	* tui.h (strcat_to_buf): Update prototype.
	(strcat_to_buf_with_fmt): Remove.
2002-08-24 17:04:33 +00:00
Stephane Carrez 3e752b0491 * tuiWin.c (tui_update_gdb_sizes): New function to tell gdb what
is the size of command window.
	(tuiResizeAll): Call it instead of init_page_info.
	* tui.c (tui_enable): Call it to resize to TUI command window.
	(tui_disable): Likewise for plain screen.
2002-08-24 16:43:08 +00:00
Stephane Carrez c7037be10d * tui.c (tui_enable): Use tuiSetLayout instead of showLayout and
use tuiShowFrameInfo instead of tuiSetLocatorContent.
	* tuiLayout.h (showLayout): Remove.
	* tuiLayout.c (_showSourceOrDisassemAndCommand): Remove unused locals.
	(_showSourceDisassemCommand): Likewise.
	(showLayout): Make it static.
	(lastLayout): Remove.
2002-08-24 15:25:25 +00:00
Stephane Carrez bc712bbf17 * tuiSourceWin.c (tui_show_source_line): New function.
(tuiShowSourceContent): Call it and avoid clearing the window before
	redrawing it.
	(tuiClearAllSourceWinsContent): Remove.
	* tuiSourceWin.h (tuiClearAllSourceWinsContent): Don't declare.
	* tuiWin.h (tuiClearWinFocus, tuiClearWinFocusFrom): Don't declare.
	* tuiWin.c (tuiClearWinFocus, tuiClearWinFocusFrom): Remove.
	(tuiRefreshAll): Don't clear the window.
	(_makeVisibleWithNewHeight): Don't clear locator line.
	(tuiResizeAll): Remove unused locals.
	(_tuiAdjustWinHeights): Likewise.
	(_makeInvisibleAndSetNewHeight): Likewise.
	(_newHeightOk): Likewise.
	* tuiLayout.c (showLayout): Don't clear source windows.
	(tuiSetLayout): Don't clear the window.
	(_initAndMakeWin): Likewise for status line.
	* tuiGeneralWin.c (makeVisible): Don't clear or refresh the window.
	(makeWindow): Likewise.
	(tuiClearWin): Remove.
	* tuiGeneralWin.h (tuiClearWin): Don't declare.
2002-08-24 12:28:33 +00:00
Stephane Carrez e9ae5755d3 * tuiSourceWin.c (tuiSrcWinIsDisplayed): Remove.
(tuiAsmWinIsDisplayed): Remove.
	(tuiShowAllSourceWinsContent): Remove.
	(tuiUpdateOnEnd): Remove.
	* tuiGeneralWin.c (scrollWinForward): Remove.
	(scrollWinBackward): Remove.
	(_winResize): Don't declare.
	* tui.h (tuiUpdateOnEnd): Don't declare.
	(vcatch_errors, va_catch_errors): Likewise.
	* tuiSourceWin.h (tuiUpdateOnEnd): Likewise.
	(tuiShowAllSourceWinsContent): Likewise.
	* tuiGeneralWin.h (scrollWinForward): Likewise.
	(scrollWinBackward): Likewise.
2002-08-24 10:15:54 +00:00
Stephane Carrez ad0fd2c861 * tuiRegs.c (_tuiRegisterFormat): Use gdbarch_print_registers_info. 2002-08-24 09:43:30 +00:00
Daniel Jacobowitz 6d7fbb5a8b Fix PR gdb/655
* tui.c: Disable <termio.h> include.
2002-08-18 23:20:47 +00:00
Andrew Cagney 349c5d5f6c * defs.h (XMALLOC): Define.
* gdb-events.sh (XMALLOC): Delete macro.
* gdb-events.c, gdb-events.h: Regenerate.
* gdbarch.sh (XMALLOC): Delete macro.
* gdbarch.c: Regenerate.
* serial.c (XMALLOC): Delete macro.
* ui-file.c (XMALLOC): Ditto.
* ser-unix.h (XMALLOC): Ditto.
* sh-tdep.c (XMALLOC): Ditto.
* ui-out.c (XMALLOC): Ditto.
* utils.c (XMALLOC): Ditto.
* i386-tdep.c (XMALLOC): Ditto.
* gdb-events.c (XMALLOC): Ditto.
* d10v-tdep.c (XMALLOC): Ditto.
* cli-out.c (XMALLOC): Ditto.

* cli-out.c, d10v-tdep.c, gdb-events.c: Update copyright.
* gdb-events.sh, i386-tdep.c, ser-unix.h, serial.c: Ditto.
* ui-file.c, ui-out.c: Ditto.
2002-03-19 02:51:09 +00:00
Andrew Cagney f33c6cbfe5 Add FIXME explaining include problem. 2002-03-01 06:19:28 +00:00
Andrew Cagney e00d1dc8a5 s/NO_FUNCTION/NULL/ 2002-02-02 00:56:37 +00:00
Andrew Cagney fd0407d670 Add explicit #include of "value.h". 2001-10-21 17:19:38 +00:00
Tom Tromey 7cacb6a3a7 * tuiLayout.h (tui_set_layout): Don't declare.
* tui.h (tui_vAddWinToLayout): Don't declare.
	(tui_vSetLayoutTo): Likewise.
	(tui_set_layout): Declare.
2001-09-28 17:39:09 +00:00
Eli Zaretskii b5de0fa741 The following changes avoid polluting global namespace with the
`enable' and `disable' identifiers, because some platforms define
	in their system headers symbols with global scope that go by those
	names.

	* breakpoint.h (enum enable_state): Rename from `enum enable'.
	Also rename all the enum members to have the "bp_" prefix.
	(struct breakpoint): Rename the `enable' member to `enable_state'.
	(enum bpdisp): Rename all members to have the "disp_" prefix.

	* breakpoint.c: All users of `enum enable' and `enum bpdisp'
	changed.
	(args_for_catchpoint_enable): Rename the `enable' member to
	`enable_p'.  All users changed.

	* tracepoint.h (enum enable): Remove.
	(struct tracepoint): The member `enabled' is now `int enabled_p'.

	* tracepoint.c: All users of the `enabled' member changed.

	* printcmd.c (struct display): The `status' member is now an int.

	* memattr.h (struct mem_region): Rename the `status' member to
	`enabled_p'.
	(enum enable): Remove.

	* memattr.c: Change all users of the `status' member of struct
	mem_region to use `enabled_p' instead.

	* infcmd.c (run_stack_dummy): Use disp_del instead of del.

	* go32-nat.c: Remove the kludgey work-around for conflicts between
	<dos.h> and "breakpoint.h".
	* tui/tuiSourceWin.c: Use disp_del instead of del.

	* tui/tuiSource.c: Use disp_del instead of del.

	* tui/tuiDisassem.c: Use disp_del instead of del.
2001-08-02 11:58:29 +00:00
Stephane Carrez 799a074014 * tui.c (tui_enable): Remove call to terminal_save_ours().
(tui_disable): Likewise.
2001-07-31 19:00:50 +00:00
Stephane Carrez c968487932 * tuiWin.c (_initialize_tuiWin): Use specific tui prefix for
set/show configuration variables.
	(show_tui_cmd): New function.
	(set_tui_cmd): New function.
2001-07-28 19:30:54 +00:00
Stephane Carrez 2611b1a5bd * tui-hooks.c: New file, gdb hooks for tui.
* tui-out.c: New file, image copied from cli-out.c.
	(tui_field_int): Identify "line" fields and keep track of them.
	(tui_field_string): Likewise for "file".
	(tui_out_new): Use flags = 0 to avoid printing the sources.
2001-07-24 20:40:39 +00:00
Stephane Carrez 114bf287e2 Missed changelog entries for previous 2 commits 2001-07-24 20:39:34 +00:00
Stephane Carrez 9d876a16bb * tuiIO.c (tui_initialize_io): Install tui_cont_sig signal handler
if SIGCONT is defined.
	(tui_cont_sig): New function when SIGCONT is defined.
	(tui_setup_io): Save tty setting to restore by SIGCONT.
2001-07-21 22:35:40 +00:00