diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2021-08-31 15:38:52 +1000 |
---|---|---|
committer | Nathan Scott <nathans@redhat.com> | 2021-12-07 17:04:49 +1100 |
commit | 72ba20fa5f077bab4286dd78f9944df15de3b3b4 (patch) | |
tree | 0c4fb4e63b80b3a20d5f50bdac6bed9fe2bee607 /ScreensPanel.h | |
parent | ff4f44b22ae8d6522ee22599174a6cdd41bc0314 (diff) |
Introduce screen tabs
This is a forward port (by nathans) of Hisham's original code.
Diffstat (limited to 'ScreensPanel.h')
-rw-r--r-- | ScreensPanel.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/ScreensPanel.h b/ScreensPanel.h new file mode 100644 index 00000000..52c5fff3 --- /dev/null +++ b/ScreensPanel.h @@ -0,0 +1,49 @@ +#ifndef HEADER_ScreensPanel +#define HEADER_ScreensPanel +/* +htop - ScreensPanel.h +(C) 2004-2011 Hisham H. Muhammad +Released under the GNU GPL, see the COPYING file +in the source distribution for its full text. +*/ + +#include "Panel.h" +#include "ScreenManager.h" +#include "ColumnsPanel.h" +#include "Settings.h" +#include "ListItem.h" + +#ifndef SCREEN_NAME_LEN +#define SCREEN_NAME_LEN 20 +#endif + +typedef struct ScreensPanel_ { + Panel super; + + ScreenManager* scr; + Settings* settings; + ColumnsPanel* columns; + char buffer[SCREEN_NAME_LEN + 1]; + char* saved; + int cursor; + bool moving; + bool renaming; +} ScreensPanel; + +typedef struct ScreenListItem_ { + ListItem super; + ScreenSettings* ss; +} ScreenListItem; + + +extern ObjectClass ScreenListItem_class; + +ScreenListItem* ScreenListItem_new(const char* value, ScreenSettings* ss); + +extern PanelClass ScreensPanel_class; + +ScreensPanel* ScreensPanel_new(Settings* settings); + +void ScreensPanel_update(Panel* super); + +#endif |