diff options
Diffstat (limited to 'src/gui/widgets')
-rw-r--r-- | src/gui/widgets/tabbedarea.cpp | 10 | ||||
-rw-r--r-- | src/gui/widgets/tabbedarea.h | 4 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/gui/widgets/tabbedarea.cpp b/src/gui/widgets/tabbedarea.cpp index 70e098cd3..da6c89d1a 100644 --- a/src/gui/widgets/tabbedarea.cpp +++ b/src/gui/widgets/tabbedarea.cpp @@ -236,6 +236,16 @@ bool TabbedArea::isTabSelected(const unsigned int index) const return mSelectedTab == mTabs[index].first; } +bool TabbedArea::isTabPresent(const Tab *const tab) const +{ + FOR_EACH (TabContainer::const_iterator, it, mTabs) + { + if ((*it).first == tab || (*it).second == tab) + return true; + } + return false; +} + bool TabbedArea::isTabSelected(const Tab *const tab) const { return mSelectedTab == tab; diff --git a/src/gui/widgets/tabbedarea.h b/src/gui/widgets/tabbedarea.h index 37950e204..eaac7a6d5 100644 --- a/src/gui/widgets/tabbedarea.h +++ b/src/gui/widgets/tabbedarea.h @@ -104,6 +104,8 @@ class TabbedArea final : public Widget2, bool isTabSelected(const Tab *const tab) const A_WARN_UNUSED; + bool isTabPresent(const Tab *const tab) const A_WARN_UNUSED; + /** * Overload the remove tab function as it's broken in guichan 0.8. */ @@ -206,7 +208,7 @@ class TabbedArea final : public Widget2, gcn::Container* mTabContainer; gcn::Container* mWidgetContainer; std::vector<Tab*> mTabsToDelete; - std::vector<std::pair<Tab*, gcn::Widget*> > mTabs; + TabContainer mTabs; /** * The overall width of all tab. |