diff options
author | Andrei Karas <akaras@inbox.ru> | 2011-09-15 00:50:47 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2011-09-15 00:50:47 +0300 |
commit | 255b1c29f47ef3b1e7a9b058c56ef72bfa10c5e3 (patch) | |
tree | 1849456d254f60d20b60e54e51df4f354106aa1a /src/gui | |
parent | b6dae23ca33ee0032260080819a59ec6363f72f6 (diff) | |
download | manaplus-255b1c29f47ef3b1e7a9b058c56ef72bfa10c5e3.tar.gz manaplus-255b1c29f47ef3b1e7a9b058c56ef72bfa10c5e3.tar.bz2 manaplus-255b1c29f47ef3b1e7a9b058c56ef72bfa10c5e3.tar.xz manaplus-255b1c29f47ef3b1e7a9b058c56ef72bfa10c5e3.zip |
Add buttons Themes, Video, Perfomance in select server screen.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/setup.cpp | 22 | ||||
-rw-r--r-- | src/gui/setup.h | 2 | ||||
-rw-r--r-- | src/gui/widgets/tabbedarea.cpp | 13 | ||||
-rw-r--r-- | src/gui/widgets/tabbedarea.h | 2 |
4 files changed, 39 insertions, 0 deletions
diff --git a/src/gui/setup.cpp b/src/gui/setup.cpp index 33f379743..ae7a3109c 100644 --- a/src/gui/setup.cpp +++ b/src/gui/setup.cpp @@ -198,4 +198,26 @@ void Setup::doCancel() for_each(mTabs.begin(), mTabs.end(), std::mem_fun(&SetupTab::cancel)); } +void Setup::activateTab(const std::string &name) +{ + std::string tmp = gettext(name.c_str()); + mPanel->setSelectedTab(tmp); +/* + for (std::list<SetupTab*>::const_iterator it = mTabs.begin(); + it != mTabs.end(); ++it) + { + if (*it) + { + SetupTab *tab = *it; + logger->log("check tab: " + tab->getName()); + if (tab->getName() == tmp) + { + mPanel->setSelectedTab(name); + return; + } + } + } +*/ +} + Setup *setupWindow; diff --git a/src/gui/setup.h b/src/gui/setup.h index cdaf7db99..b499da4ee 100644 --- a/src/gui/setup.h +++ b/src/gui/setup.h @@ -73,6 +73,8 @@ class Setup : public Window, public gcn::ActionListener void doCancel(); + void activateTab(const std::string &name); + private: std::list<SetupTab*> mTabs; std::list<Window*> mWindowsToReset; diff --git a/src/gui/widgets/tabbedarea.cpp b/src/gui/widgets/tabbedarea.cpp index 940dad12a..47b02c925 100644 --- a/src/gui/widgets/tabbedarea.cpp +++ b/src/gui/widgets/tabbedarea.cpp @@ -241,6 +241,19 @@ void TabbedArea::setSelectedTab(gcn::Tab *tab) widgetResized(NULL); } +void TabbedArea::setSelectedTab(const std::string &name) +{ + for (TabContainer::const_iterator itr = mTabs.begin(), + itr_end = mTabs.end(); itr != itr_end; ++itr) + { + if ((*itr).first && (*itr).first->getCaption() == name) + { + setSelectedTab((*itr).first); + return; + } + } +} + void TabbedArea::widgetResized(const gcn::Event &event A_UNUSED) { int width = getWidth() - 2 * getFrameSize() diff --git a/src/gui/widgets/tabbedarea.h b/src/gui/widgets/tabbedarea.h index a91b4c199..3ad113b4c 100644 --- a/src/gui/widgets/tabbedarea.h +++ b/src/gui/widgets/tabbedarea.h @@ -122,6 +122,8 @@ class TabbedArea : public gcn::TabbedArea, public gcn::WidgetListener void setSelectedTab(gcn::Tab *tab); + void setSelectedTab(const std::string &name); + void widgetResized(const gcn::Event &event); /* |