GDB (API)
/home/stan/gdb/src/gdb/tui/tui-winsource.h
Go to the documentation of this file.
00001 /* TUI display source/assembly window.
00002 
00003    Copyright (C) 1998-2013 Free Software Foundation, Inc.
00004 
00005    Contributed by Hewlett-Packard Company.
00006 
00007    This file is part of GDB.
00008 
00009    This program is free software; you can redistribute it and/or modify
00010    it under the terms of the GNU General Public License as published by
00011    the Free Software Foundation; either version 3 of the License, or
00012    (at your option) any later version.
00013 
00014    This program is distributed in the hope that it will be useful,
00015    but WITHOUT ANY WARRANTY; without even the implied warranty of
00016    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017    GNU General Public License for more details.
00018 
00019    You should have received a copy of the GNU General Public License
00020    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
00021 
00022 #ifndef TUI_SOURCEWIN_H
00023 #define TUI_SOURCEWIN_H
00024 
00025 #include "tui/tui-data.h"
00026 
00027 struct tui_win_info;
00028 
00029 /* Update the execution windows to show the active breakpoints.  This
00030    is called whenever a breakpoint is inserted, removed or has its
00031    state changed.  */
00032 extern void tui_update_all_breakpoint_info (void);
00033 
00034 /* Scan the source window and the breakpoints to update the hasBreak
00035    information for each line.  Returns 1 if something changed and the
00036    execution window must be refreshed.  */
00037 extern int tui_update_breakpoint_info (struct tui_win_info *win,
00038                                        int current_only);
00039 
00040 /* Function to display the "main" routine.  */
00041 extern void tui_display_main (void);
00042 extern void tui_update_source_window (struct tui_win_info *, 
00043                                       struct gdbarch *, struct symtab *,
00044                                       struct tui_line_or_address, 
00045                                       int);
00046 extern void tui_update_source_window_as_is (struct tui_win_info *,
00047                                             struct gdbarch *, struct symtab *,
00048                                             struct tui_line_or_address, 
00049                                             int);
00050 extern void tui_update_source_windows_with_addr (struct gdbarch *, CORE_ADDR);
00051 extern void tui_update_source_windows_with_line (struct symtab *, 
00052                                                  int);
00053 extern void tui_clear_source_content (struct tui_win_info *, int);
00054 extern void tui_erase_source_content (struct tui_win_info *, int);
00055 extern void tui_show_source_content (struct tui_win_info *);
00056 extern void tui_horizontal_source_scroll (struct tui_win_info *,
00057                                           enum tui_scroll_direction, 
00058                                           int);
00059 extern enum tui_status tui_set_exec_info_content (struct tui_win_info *);
00060 extern void tui_show_exec_info_content (struct tui_win_info *);
00061 extern void tui_erase_exec_info_content (struct tui_win_info *);
00062 extern void tui_clear_exec_info_content (struct tui_win_info *);
00063 extern void tui_update_exec_info (struct tui_win_info *);
00064 
00065 extern void tui_set_is_exec_point_at (struct tui_line_or_address,
00066                                       struct tui_win_info *);
00067 extern enum tui_status tui_alloc_source_buffer (struct tui_win_info *);
00068 extern int tui_line_is_displayed (int, 
00069                                   struct tui_win_info *, 
00070                                   int);
00071 extern int tui_addr_is_displayed (CORE_ADDR, 
00072                                   struct tui_win_info *, 
00073                                   int);
00074 
00075 
00076 /* Constant definitions. */
00077 #define SCROLL_THRESHOLD 2      /* Threshold for lazy scroll.  */
00078 
00079 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines