diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 09:00:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 09:00:29 +0000 |
commit | 52e25213825024b8bb446eb26b03bedc9d5c2103 (patch) | |
tree | da70bf44b2423f6f8e9a070c063fed79d190b489 /ScreenManager.h | |
parent | Initial commit. (diff) | |
download | htop-upstream.tar.xz htop-upstream.zip |
Adding upstream version 3.2.2.upstream/3.2.2upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | ScreenManager.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/ScreenManager.h b/ScreenManager.h new file mode 100644 index 0000000..d08a941 --- /dev/null +++ b/ScreenManager.h @@ -0,0 +1,49 @@ +#ifndef HEADER_ScreenManager +#define HEADER_ScreenManager +/* +htop - ScreenManager.h +(C) 2004-2011 Hisham H. Muhammad +Released under the GNU GPLv2+, see the COPYING file +in the source distribution for its full text. +*/ + +#include <stdbool.h> + +#include "Action.h" +#include "Header.h" +#include "Panel.h" +#include "Settings.h" +#include "Vector.h" + + +typedef struct ScreenManager_ { + int x1; + int y1; + int x2; + int y2; + Vector* panels; + const char* name; + int panelCount; + Header* header; + const Settings* settings; + State* state; + bool allowFocusChange; +} ScreenManager; + +ScreenManager* ScreenManager_new(Header* header, const Settings* settings, State* state, bool owner); + +void ScreenManager_delete(ScreenManager* this); + +int ScreenManager_size(const ScreenManager* this); + +void ScreenManager_add(ScreenManager* this, Panel* item, int size); + +void ScreenManager_insert(ScreenManager* this, Panel* item, int size, int idx); + +Panel* ScreenManager_remove(ScreenManager* this, int idx); + +void ScreenManager_resize(ScreenManager* this); + +void ScreenManager_run(ScreenManager* this, Panel** lastFocus, int* lastKey, const char* name); + +#endif |