diff options
Diffstat (limited to 'Stars45/Menu.cpp')
-rw-r--r-- | Stars45/Menu.cpp | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/Stars45/Menu.cpp b/Stars45/Menu.cpp deleted file mode 100644 index 35f5715..0000000 --- a/Stars45/Menu.cpp +++ /dev/null @@ -1,141 +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 -*/ - -#include "Menu.h" - -// +--------------------------------------------------------------------+ - -void -Menu::AddItem(Text label, DWORD value, bool enabled) -{ - MenuItem* item = new MenuItem(label, value, enabled); - - if (item) { - item->menu = this; - items.append(item); - } -} - -void -Menu::AddItem(MenuItem* item) -{ - if (item->submenu) - item->submenu->SetParent(this); - item->menu = this; - items.append(item); -} - -void -Menu::AddMenu(Text label, Menu* menu, DWORD value) -{ - MenuItem* item = new MenuItem(label, value); - - if (item) { - item->menu = this; - item->submenu = menu; - menu->parent = this; - - items.append(item); - } -} - -MenuItem* -Menu::GetItem(int index) -{ - if (index >= 0 && index < items.size()) - return items[index]; - - return 0; -} - -void -Menu::SetItem(int index, MenuItem* item) -{ - if (item && index >= 0 && index < items.size()) - items[index] = item; -} - -int -Menu::NumItems() const -{ - return items.size(); -} - -void -Menu::ClearItems() -{ - items.destroy(); -} - - -// +--------------------------------------------------------------------+ - -MenuItem::MenuItem(Text label, DWORD value, bool e) -: text(label), data(value), enabled(e), submenu(0), selected(0) -{ } - -MenuItem::~MenuItem() -{ } - -// +--------------------------------------------------------------------+ - -Menu* -MenuHistory::GetCurrent() -{ - int n = history.size(); - - if (n) - return history[n-1]; - - return 0; -} - -Menu* -MenuHistory::GetLevel(int n) -{ - if (n >= 0 && n < history.size()) - return history[n]; - - return 0; -} - -Menu* -MenuHistory::Find(const char* title) -{ - for (int i = 0; i < history.size(); i++) - if (history[i]->GetTitle() == title) - return history[i]; - - return 0; -} - -void -MenuHistory::Pop() -{ - int n = history.size(); - - if (n) - history.removeIndex(n-1); -} - -void -MenuHistory::Push(Menu* menu) -{ - history.append(menu); -} - -void -MenuHistory::Clear() -{ - history.clear(); -} |