diff options
Diffstat (limited to 'src/gui/widgets')
-rw-r--r-- | src/gui/widgets/tabbedarea.cpp | 15 | ||||
-rw-r--r-- | src/gui/widgets/tabbedarea.h | 4 |
2 files changed, 16 insertions, 3 deletions
diff --git a/src/gui/widgets/tabbedarea.cpp b/src/gui/widgets/tabbedarea.cpp index de88a3e50..3a9ded199 100644 --- a/src/gui/widgets/tabbedarea.cpp +++ b/src/gui/widgets/tabbedarea.cpp @@ -51,7 +51,8 @@ TabbedArea::TabbedArea(const Widget2 *const widget) : mEnableScrollButtons(false), mRightMargin(0), mFollowDownScroll(false), - mBlockSwitching(true) + mBlockSwitching(true), + mResizeHeight(true) { setFocusable(true); addKeyListener(this); @@ -478,8 +479,16 @@ void TabbedArea::adjustSize() const int frame2 = 2 * wFrameSize; w->setPosition(wFrameSize, wFrameSize); - w->setSize(mWidgetContainer->getWidth() - frame2, - mWidgetContainer->getHeight() - frame2); + if (mResizeHeight) + { + w->setSize(mWidgetContainer->getWidth() - frame2, + mWidgetContainer->getHeight() - frame2); + } + else + { + w->setSize(mWidgetContainer->getWidth() - frame2, + w->getHeight()); + } } } diff --git a/src/gui/widgets/tabbedarea.h b/src/gui/widgets/tabbedarea.h index 3301ad2a8..114d549ff 100644 --- a/src/gui/widgets/tabbedarea.h +++ b/src/gui/widgets/tabbedarea.h @@ -182,6 +182,9 @@ class TabbedArea final : public Widget2, void death(const gcn::Event &event); + void setResizeHeight(bool b) + { mResizeHeight = b; } + private: typedef std::vector <std::pair<Tab*, gcn::Widget*> > TabContainer; @@ -237,6 +240,7 @@ class TabbedArea final : public Widget2, int mRightMargin; bool mFollowDownScroll; bool mBlockSwitching; + bool mResizeHeight; }; #endif // GUI_WIDGETS_TABBEDAREA_H |