summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2009-08-23 12:13:25 -0600
committerJared Adams <jaxad0127@gmail.com>2009-08-23 12:13:25 -0600
commitb20931ca66c1c760bfe21a5a6c070c54ae3eb2a0 (patch)
tree74add3e5abe7ea18bd2184e2adf6854730bfab09 /src
parent6a418ab3e8ce4dfbac0378e57087e84a862b875f (diff)
downloadmana-b20931ca66c1c760bfe21a5a6c070c54ae3eb2a0.tar.gz
mana-b20931ca66c1c760bfe21a5a6c070c54ae3eb2a0.tar.bz2
mana-b20931ca66c1c760bfe21a5a6c070c54ae3eb2a0.tar.xz
mana-b20931ca66c1c760bfe21a5a6c070c54ae3eb2a0.zip
Fix some layout issues with TabbedAreas
Diffstat (limited to 'src')
-rw-r--r--src/gui/widgets/tabbedarea.cpp14
-rw-r--r--src/gui/widgets/tabbedarea.h3
2 files changed, 12 insertions, 5 deletions
diff --git a/src/gui/widgets/tabbedarea.cpp b/src/gui/widgets/tabbedarea.cpp
index 13bb884b..dd2e62dd 100644
--- a/src/gui/widgets/tabbedarea.cpp
+++ b/src/gui/widgets/tabbedarea.cpp
@@ -28,6 +28,8 @@ TabbedArea::TabbedArea() : gcn::TabbedArea()
{
mWidgetContainer->setOpaque(false);
addWidgetListener(this);
+
+ widgetResized(NULL);
}
int TabbedArea::getNumberOfTabs() const
@@ -161,14 +163,20 @@ void TabbedArea::setSelectedTab(gcn::Tab *tab)
if (newTab)
newTab->setCurrent();
+
+ widgetResized(NULL);
}
void TabbedArea::widgetResized(const gcn::Event &event)
{
- int width = getWidth() - 2 * getFrameSize();
- int height = getHeight() - 2 * getFrameSize() - mTabContainer->getHeight();
+ int width = getWidth() - 2 * getFrameSize()
+ - 2 * mWidgetContainer->getFrameSize();
+ int height = getHeight() - 2 * getFrameSize() - mWidgetContainer->getY()
+ - 2 * mWidgetContainer->getFrameSize();
mWidgetContainer->setSize(width, height);
+
gcn::Widget *w = getCurrentWidget();
if (w)
- w->setSize(width, height);
+ w->setSize(width,
+ height);
}
diff --git a/src/gui/widgets/tabbedarea.h b/src/gui/widgets/tabbedarea.h
index a64d855f..7944b5d5 100644
--- a/src/gui/widgets/tabbedarea.h
+++ b/src/gui/widgets/tabbedarea.h
@@ -101,8 +101,7 @@ class TabbedArea : public gcn::TabbedArea, public gcn::WidgetListener
int getContainerHeight() const
{ return mWidgetContainer->getHeight(); }
- void setSelectedTab(unsigned int index)
- { gcn::TabbedArea::setSelectedTab(index); }
+ using gcn::TabbedArea::setSelectedTab;
void setSelectedTab(gcn::Tab *tab);