50 int,
int,
int,
int,
int);
73 #define LAYOUT_USAGE "Usage: layout prev | next | <layout_name> \n" 81 if (layout != cur_layout)
135 int regs_populate = FALSE;
143 new_layout = layout_type;
147 if (new_layout != cur_layout)
359 const char *text,
const char *word)
361 static const char *layout_names [] =
362 {
"src",
"asm",
"split",
"regs",
"next",
"prev", NULL };
376 Change the layout of windows.\n\ 377 Usage: layout prev | next | <layout_name> \n\ 379 src : Displays source and command windows.\n\ 380 asm : Displays disassembly and command windows.\n\ 381 split : Displays source, disassembly and command windows.\n\ 382 regs : Displays register window. If existing layout\n\ 383 is source/command or assembly/command, the \n\ 384 register window is displayed. If the\n\ 385 source/assembly/command (split) is displayed, \n\ 386 the register window is displayed with \n\ 387 the window that has current logical focus.\n"));
404 if (layout_name != (
char *) NULL)
411 for (i = 0; i < copy.size (); i++)
412 copy[i] = toupper (copy[i]);
413 const char *buf_ptr = copy.c_str ();
416 if (strlen (buf_ptr) <= 1 && *buf_ptr ==
'S')
418 warning (
_(
"Ambiguous command input."));
474 TUI_SRC_WIN->detail.source_info.start_line_or_addr.u.line_no,
482 addr =
TUI_DISASM_WIN->detail.source_info.start_line_or_addr.u.addr;
545 int height,
int origin_y)
556 (*win_info_ptr)->can_highlight = FALSE;
564 int height,
int origin_y)
576 int height,
int origin_y)
586 int height,
int origin_y)
622 int cmd_height, src_height, asm_height;
640 TUI_SRC_WIN->detail.source_info.execution_info->width,
651 TUI_SRC_WIN->detail.source_info.has_locator = FALSE;;
668 (src_height + asm_height) - 1,
678 (src_height + asm_height) - 1);
698 TUI_SRC_WIN->detail.source_info.has_locator = FALSE;
734 int src_height, data_height;
739 data_height = total_height / 2;
740 src_height = total_height - data_height;
801 int origin_x,
int origin_y)
828 int origin_x,
int origin_y,
833 if (opaque_win_info == NULL)
845 if (opaque_win_info != NULL)
851 ((
struct tui_win_info *) opaque_win_info)->can_highlight = FALSE;
853 ((
struct tui_win_info *) opaque_win_info)->can_highlight = TRUE;
857 return opaque_win_info;
890 execution_info->
width,
905 int src_height, cmd_height;
919 if ((*win_info_ptr) == NULL)
943 (*win_info_ptr)->detail.source_info.has_locator = TRUE;
945 (*win_info_ptr)->generic.type,
947 (*win_info_ptr)->generic.width,
948 (*win_info_ptr)->detail.source_info.execution_info->width,
956 (*win_info_ptr)->can_highlight = TRUE;
960 if ((*win_info_ptr) != NULL)
962 (*win_info_ptr)->detail.source_info.has_locator = TRUE;
void tui_clear_source_windows_detail(void)
void tui_make_all_invisible(void)
void tui_get_begin_asm_address(struct gdbarch **gdbarch_p, CORE_ADDR *addr_p)
struct tui_win_info * tui_win_list[MAX_MAJOR_WINDOWS]
int tui_term_height(void)
void tui_make_invisible(struct tui_gen_win_info *win_info)
void warning(const char *fmt,...)
struct symtab_and_line get_current_source_symtab_and_line(void)
int tui_default_win_height(enum tui_win_type type, enum tui_layout_type layout)
void complete_on_enum(completion_tracker &tracker, const char *const *enumlist, const char *text, const char *word)
void tui_add_to_source_windows(struct tui_win_info *win_info)
struct tui_gen_win_info * tui_alloc_generic_win_info(void)
static void show_source_or_disasm_and_command(enum tui_layout_type)
static void init_gen_win_info(struct tui_gen_win_info *, enum tui_win_type, int, int, int, int)
static void make_disasm_window(struct tui_win_info **, int, int)
static enum tui_layout_type next_layout(void)
void tui_set_win_focus_to(struct tui_win_info *win_info)
static void make_data_window(struct tui_win_info **, int, int)
enum tui_status tui_set_layout(enum tui_layout_type layout_type)
static enum tui_layout_type prev_layout(void)
void _initialize_tui_layout(void)
void tui_make_window(struct tui_gen_win_info *win_info, int box_it)
void tui_show_registers(struct reggroup *group)
struct tui_gen_win_info generic
struct tui_source_info source_info
static void show_source_disasm_command(void)
void tui_show_source_content(struct tui_win_info *win_info)
static void * init_and_make_win(void *, enum tui_win_type, int, int, int, int, int)
void set_cmd_completer(struct cmd_list_element *cmd, completer_ftype *completer)
struct tui_win_info * tui_win_with_focus(void)
struct tui_gen_win_info * tui_locator_win_info_ptr(void)
static void make_source_or_disasm_window(struct tui_win_info **, enum tui_win_type, int, int)
static void show_layout(enum tui_layout_type)
static void show_source_command(void)
struct gdbarch * get_current_arch(void)
static void layout_completer(struct cmd_list_element *ignore, completion_tracker &tracker, const char *text, const char *word)
static void make_source_window(struct tui_win_info **, int, int)
mach_port_t mach_port_t name mach_port_t mach_port_t name kern_return_t int status
static void make_command_window(struct tui_win_info **, int, int)
static void show_data(enum tui_layout_type)
static void extract_display_start_addr(struct gdbarch **, CORE_ADDR *)
struct tui_layout_def * tui_layout_def(void)
void tui_set_current_layout_to(enum tui_layout_type new_layout)
void tui_free_all_source_wins_content(void)
void tui_clear_source_windows(void)
void tui_add_win_to_layout(enum tui_win_type type)
int find_line_pc(struct symtab *symtab, int line, CORE_ADDR *pc)
void tui_show_locator_content(void)
void tui_make_visible(struct tui_gen_win_info *win_info)
struct tui_win_info * tui_alloc_win_info(enum tui_win_type type)
static void tui_layout_command(const char *, int)
union tui_win_info::@182 detail
struct tui_gen_win_info * tui_disassem_exec_info_win_ptr(void)
struct tui_gen_win_info * execution_info
void tui_update_source_windows_with_addr(struct gdbarch *gdbarch, CORE_ADDR addr)
enum tui_status tui_set_layout_by_name(const char *layout_name)
static struct tui_win_info * win_with_focus
void tui_refresh_all(struct tui_win_info **list)
static int ignore(struct target_ops *ops, struct gdbarch *gdbarch, struct bp_target_info *bp_tgt)
void tui_display_all_data(void)
void tui_refresh_win(struct tui_gen_win_info *win_info)
struct tui_gen_win_info * tui_source_exec_info_win_ptr(void)
int tui_win_is_auxillary(enum tui_win_type win_type)
struct cmd_list_element * add_com(const char *name, enum command_class theclass, cmd_const_cfunc_ftype *fun, const char *doc)
enum tui_win_type display_mode
static struct tui_layout_def layout_def
static void show_disasm_command(void)
int subset_compare(const char *string_to_compare, const char *template_string)
enum tui_layout_type tui_current_layout(void)
int tui_default_win_viewport_height(enum tui_win_type type, enum tui_layout_type layout)