1 1.1 christos /* TUI status line. 2 1.1 christos 3 1.1 christos Copyright (C) 1998-2024 Free Software Foundation, Inc. 4 1.1 christos 5 1.1 christos Contributed by Hewlett-Packard Company. 6 1.1 christos 7 1.1 christos This file is part of GDB. 8 1.1 christos 9 1.1 christos This program is free software; you can redistribute it and/or modify 10 1.1 christos it under the terms of the GNU General Public License as published by 11 1.1 christos the Free Software Foundation; either version 3 of the License, or 12 1.1 christos (at your option) any later version. 13 1.1 christos 14 1.1 christos This program is distributed in the hope that it will be useful, 15 1.1 christos but WITHOUT ANY WARRANTY; without even the implied warranty of 16 1.1 christos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 1.1 christos GNU General Public License for more details. 18 1.1 christos 19 1.1 christos You should have received a copy of the GNU General Public License 20 1.1 christos along with this program. If not, see <http://www.gnu.org/licenses/>. */ 21 1.1 christos 22 1.1.1.2 christos #ifndef GDB_TUI_TUI_STATUS_H 23 1.1.1.2 christos #define GDB_TUI_TUI_STATUS_H 24 1.1 christos 25 1.1 christos #include "tui/tui-data.h" 26 1.1 christos 27 1.1 christos class frame_info_ptr; 28 1.1 christos 29 1.1 christos /* Locator window class. */ 30 1.1 christos 31 1.1 christos struct tui_status_window 32 1.1 christos : public tui_nofocus_window, tui_noscroll_window, tui_oneline_window, 33 1.1 christos tui_nobox_window 34 1.1 christos { 35 1.1 christos tui_status_window () = default; 36 1.1 christos 37 1.1 christos const char *name () const override 38 1.1 christos { 39 1.1 christos return STATUS_NAME; 40 1.1 christos } 41 1.1 christos 42 1.1 christos void rerender () override; 43 1.1 christos 44 1.1 christos private: 45 1.1 christos 46 1.1 christos /* Create the status line to display as much information as we can 47 1.1 christos on this single line: target name, process number, current 48 1.1 christos function, current line, current PC, SingleKey mode. */ 49 1.1 christos 50 1.1 christos std::string make_status_line () const; 51 1.1 christos }; 52 1.1 christos 53 1.1.1.2 christos /* Return the instance of the status window. */ 54 1.1.1.2 christos 55 1.1.1.2 christos inline tui_status_window * 56 1.1.1.2 christos tui_status_win () 57 1.1.1.2 christos { 58 1.1.1.2 christos return dynamic_cast<tui_status_window *> (tui_win_list[STATUS_WIN]); 59 1.1.1.2 christos } 60 1.1.1.2 christos 61 1.1 christos extern void tui_show_status_content (void); 62 1.1 christos extern void tui_show_frame_info (const frame_info_ptr &); 63 1.1 christos 64 1.1.1.2 christos #endif /* GDB_TUI_TUI_STATUS_H */ 65