diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:58:07 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:58:07 +0000 |
commit | 10eea2ab1bae2a8ec159d81c0446fd8061b33e2b (patch) | |
tree | e8270dd60ec096bee8157dbadf029e15ed584592 /ScreenManager.h | |
parent | Initial commit. (diff) | |
download | htop-10eea2ab1bae2a8ec159d81c0446fd8061b33e2b.tar.xz htop-10eea2ab1bae2a8ec159d81c0446fd8061b33e2b.zip |
Adding upstream version 3.3.0.upstream/3.3.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'ScreenManager.h')
-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..37821bb --- /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 "Machine.h" +#include "Panel.h" +#include "Vector.h" + + +typedef struct ScreenManager_ { + int x1; + int y1; + int x2; + int y2; + Vector* panels; + const char* name; + int panelCount; + Header* header; + Machine* host; + State* state; + bool allowFocusChange; +} ScreenManager; + +ScreenManager* ScreenManager_new(Header* header, Machine* host, 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 |