diff --git a/gui/TabWidget.cpp b/gui/TabWidget.cpp
index 691eebf0339..275e3613b57 100644
--- a/gui/TabWidget.cpp
+++ b/gui/TabWidget.cpp
@@ -37,12 +37,12 @@ enum {
};
TabWidget::TabWidget(GuiObject *boss, int x, int y, int w, int h)
- : Widget(boss, x, y, w, h) {
+ : Widget(boss, x, y, w, h), _bodyBackgroundType(GUI::ThemeEngine::kDialogBackgroundDefault) {
init();
}
TabWidget::TabWidget(GuiObject *boss, const String &name)
- : Widget(boss, name) {
+ : Widget(boss, name), _bodyBackgroundType(GUI::ThemeEngine::kDialogBackgroundDefault) {
init();
}
@@ -56,7 +56,12 @@ void TabWidget::init() {
_tabHeight = g_gui.xmlEval()->getVar("Globals.TabWidget.Tab.Height");
_titleVPad = g_gui.xmlEval()->getVar("Globals.TabWidget.Tab.Padding.Top");
- _butRP = g_gui.xmlEval()->getVar("Globals.TabWidget.navButtonPadding.Right", 0);
+ _bodyTP = g_gui.xmlEval()->getVar("Globals.TabWidget.Body.Padding.Top");
+ _bodyBP = g_gui.xmlEval()->getVar("Globals.TabWidget.Body.Padding.Bottom");
+ _bodyLP = g_gui.xmlEval()->getVar("Globals.TabWidget.Body.Padding.Left");
+ _bodyRP = g_gui.xmlEval()->getVar("Globals.TabWidget.Body.Padding.Right");
+
+ _butRP = g_gui.xmlEval()->getVar("Globals.TabWidget.NavButtonPadding.Right", 0);
_butTP = g_gui.xmlEval()->getVar("Globals.TabWidget.NavButton.Padding.Top", 0);
_butW = g_gui.xmlEval()->getVar("Globals.TabWidget.NavButton.Width", 10);
_butH = g_gui.xmlEval()->getVar("Globals.TabWidget.NavButton.Height", 10);
@@ -279,11 +284,14 @@ void TabWidget::drawWidget() {
for (int i = _firstVisibleTab; i < (int)_tabs.size(); ++i) {
tabs.push_back(_tabs[i].title);
}
+ g_gui.theme()->drawDialogBackground(Common::Rect(_x + _bodyLP, _y + _bodyTP, _x+_w-_bodyRP, _y+_h-_bodyBP), _bodyBackgroundType);
+
g_gui.theme()->drawTab(Common::Rect(_x, _y, _x+_w, _y+_h), _tabHeight, _tabWidth, tabs, _activeTab - _firstVisibleTab, 0, _titleVPad);
}
void TabWidget::draw() {
Widget::draw();
+
if (_tabWidth * _tabs.size() > _w) {
_navLeft->draw();
_navRight->draw();
diff --git a/gui/TabWidget.h b/gui/TabWidget.h
index 81544c2de74..e7b8733d8fb 100644
--- a/gui/TabWidget.h
+++ b/gui/TabWidget.h
@@ -46,6 +46,9 @@ protected:
int _tabWidth;
int _tabHeight;
+ int _bodyRP, _bodyTP, _bodyLP, _bodyBP;
+ ThemeEngine::DialogBackground _bodyBackgroundType;
+
int _titleVPad;
int _butRP, _butTP, _butW, _butH;
diff --git a/gui/themes/default.inc b/gui/themes/default.inc
index 636e7f4ff05..17294703f43 100644
--- a/gui/themes/default.inc
+++ b/gui/themes/default.inc
@@ -469,6 +469,9 @@
"size='75,27' "
"padding='0,0,8,0' "
"/> "
+" "
" "
+" "
"
+
+
+
+
+
+