1 1.1 christos /* General window behavior. 2 1.1 christos 3 1.1.1.8 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.9 christos #ifndef GDB_TUI_TUI_WINGENERAL_H 23 1.1.1.9 christos #define GDB_TUI_TUI_WINGENERAL_H 24 1.1.1.5 christos 25 1.1.1.5 christos #include "gdb_curses.h" 26 1.1 christos 27 1.1 christos struct tui_win_info; 28 1.1 christos 29 1.1 christos extern void tui_unhighlight_win (struct tui_win_info *); 30 1.1 christos extern void tui_highlight_win (struct tui_win_info *); 31 1.1.1.6 christos 32 1.1.1.9 christos /* An RAII class that calls doupdate on destruction (really the 33 1.1.1.9 christos destruction of the outermost instance). This is used to prevent 34 1.1.1.9 christos flickering -- window implementations should only call wnoutrefresh, 35 1.1.1.9 christos and any time rendering is needed, an object of this type should be 36 1.1.1.9 christos instantiated. */ 37 1.1.1.6 christos 38 1.1.1.9 christos class tui_batch_rendering 39 1.1.1.6 christos { 40 1.1.1.6 christos public: 41 1.1.1.6 christos 42 1.1.1.9 christos tui_batch_rendering (); 43 1.1.1.9 christos ~tui_batch_rendering (); 44 1.1.1.6 christos 45 1.1.1.9 christos DISABLE_COPY_AND_ASSIGN (tui_batch_rendering); 46 1.1.1.6 christos 47 1.1.1.6 christos private: 48 1.1.1.6 christos 49 1.1.1.6 christos /* Save the state of the suppression global. */ 50 1.1.1.6 christos bool m_saved_suppress; 51 1.1.1.6 christos }; 52 1.1.1.6 christos 53 1.1.1.9 christos #endif /* GDB_TUI_TUI_WINGENERAL_H */ 54