diff options
author | Aki <please@ignore.pl> | 2022-04-01 21:23:39 +0200 |
---|---|---|
committer | Aki <please@ignore.pl> | 2022-04-01 21:23:39 +0200 |
commit | 3c487c5cd69c53d6fea948643c0a76df03516605 (patch) | |
tree | 72730c7b8b26a5ef8fc9a987ec4c16129efd5aac /Stars45/Menu.h | |
parent | 8f353abd0bfe18baddd8a8250ab7c4f2d1c83a6e (diff) | |
download | starshatter-3c487c5cd69c53d6fea948643c0a76df03516605.zip starshatter-3c487c5cd69c53d6fea948643c0a76df03516605.tar.gz starshatter-3c487c5cd69c53d6fea948643c0a76df03516605.tar.bz2 |
Moved Stars45 to StarsEx
Diffstat (limited to 'Stars45/Menu.h')
-rw-r--r-- | Stars45/Menu.h | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/Stars45/Menu.h b/Stars45/Menu.h deleted file mode 100644 index b74099f..0000000 --- a/Stars45/Menu.h +++ /dev/null @@ -1,123 +0,0 @@ -/* Starshatter: The Open Source Project - Copyright (c) 2021-2022, Starshatter: The Open Source Project Contributors - Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors - Copyright (c) 1997-2006, Destroyer Studios LLC. - - AUTHOR: John DiCamillo - - - OVERVIEW - ======== - Simple menu hierarchy class -*/ - -#ifndef Menu_h -#define Menu_h - -#include "Types.h" -#include "List.h" -#include "Text.h" - -// +-------------------------------------------------------------------+ - -class Menu; -class MenuItem; -class MenuHistory; - -// +-------------------------------------------------------------------+ - -class Menu -{ -public: - static const char* TYPENAME() { return "Menu"; } - - Menu() { } - Menu(Text t) : title(t) { } - virtual ~Menu() { items.destroy(); } - - virtual Text GetTitle() const { return title; } - virtual void SetTitle(Text t) { title = t; } - virtual Menu* GetParent() const { return parent; } - virtual void SetParent(Menu* p) { parent = p; } - - virtual void AddItem(Text label, DWORD value=0, bool enabled=true); - virtual void AddItem(MenuItem* item); - virtual void AddMenu(Text label, Menu* menu, DWORD value=0); - virtual MenuItem* GetItem(int index); - virtual void SetItem(int index, MenuItem* item); - virtual int NumItems() const; - virtual void ClearItems(); - - ListIter<MenuItem> GetItems() { return items; } - -protected: - Text title; - List<MenuItem> items; - Menu* parent; - - friend class MenuItem; -}; - -// +-------------------------------------------------------------------+ - -class MenuItem -{ -public: - static const char* TYPENAME() { return "MenuItem"; } - - MenuItem(Text label, DWORD value=0, bool enabled=true); - virtual ~MenuItem(); - - virtual Text GetText() const { return text; } - virtual void SetText(Text t) { text = t; } - - virtual DWORD GetData() const { return data; } - virtual void SetData(DWORD d) { data = d; } - - virtual int GetEnabled() const { return enabled; } - virtual void SetEnabled(int e) { enabled = e; } - - virtual int GetSelected() const { return selected; } - virtual void SetSelected(int s) { selected = s; } - - virtual Menu* GetMenu() const { return menu; } - virtual void SetMenu(Menu* m) { menu = m; } - - virtual Menu* GetSubmenu() const { return submenu; } - virtual void SetSubmenu(Menu* s) { submenu = s; } - -protected: - Text text; - DWORD data; - int enabled; - int selected; - - Menu* menu; - Menu* submenu; - - friend class Menu; -}; - -// +-------------------------------------------------------------------+ - -class MenuHistory -{ -public: - static const char* TYPENAME() { return "MenuHistory"; } - - MenuHistory() { } - virtual ~MenuHistory() { history.clear(); } - - virtual Menu* GetCurrent(); - virtual Menu* GetLevel(int n); - virtual Menu* Find(const char* title); - virtual void Pop(); - virtual void Push(Menu* menu); - virtual void Clear(); - -private: - List<Menu> history; -}; - -#endif // Menu_h - |