diff options
-rw-r--r-- | gui/TabWidget.cpp | 55 | ||||
-rw-r--r-- | gui/TabWidget.h | 4 | ||||
-rw-r--r-- | gui/ThemeClassic.cpp | 15 | ||||
-rw-r--r-- | gui/ThemeNew.cpp | 104 | ||||
-rw-r--r-- | gui/theme.h | 27 | ||||
-rw-r--r-- | gui/themes/modern.ini | 17 | ||||
-rw-r--r-- | gui/themes/modern.zip | bin | 41087 -> 41239 bytes |
7 files changed, 139 insertions, 83 deletions
diff --git a/gui/TabWidget.cpp b/gui/TabWidget.cpp index 16f4786c38..98772985fa 100644 --- a/gui/TabWidget.cpp +++ b/gui/TabWidget.cpp @@ -26,16 +26,6 @@ #include "gui/newgui.h" namespace GUI { - -enum { - kTabHeight = 16, - kBigTabHeight = 21, - - kTabLeftOffset = 4, - kTabSpacing = 2, - kTabPadding = 3 -}; - TabWidget::TabWidget(GuiObject *boss, int x, int y, int w, int h) : Widget(boss, x, y, w, h) { init(); @@ -47,17 +37,16 @@ TabWidget::TabWidget(GuiObject *boss, const String &name) } void TabWidget::init() { + _tabOffset = 0; // TODO + _tabSpacing = g_gui.theme()->getTabSpacing(); + _tabPadding = g_gui.theme()->getTabPadding(); + _flags = WIDGET_ENABLED; _type = kTabWidget; _activeTab = -1; _tabWidth = 40; - - if (g_gui.getWidgetSize() == kBigWidgetSize) { - _tabHeight = kBigTabHeight; - } else { - _tabHeight = kTabHeight; - } + _tabHeight = g_gui.theme()->getTabHeight(); } TabWidget::~TabWidget() { @@ -81,14 +70,7 @@ int TabWidget::addTab(const String &title) { _tabs.push_back(newTab); int numTabs = _tabs.size(); - - // Determine the new tab width - int newWidth = g_gui.getStringWidth(title) + 2 * kTabPadding; - if (_tabWidth < newWidth) - _tabWidth = newWidth; - int maxWidth = (_w - kTabLeftOffset) / numTabs - kTabLeftOffset; - if (_tabWidth > maxWidth) - _tabWidth = maxWidth; + _tabWidth = _w / numTabs; // Activate the new tab setActiveTab(numTabs - 1); @@ -116,9 +98,8 @@ void TabWidget::handleMouseDown(int x, int y, int button, int clickCount) { // Determine which tab was clicked int tabID = -1; - x -= kTabLeftOffset; - if (x >= 0 && x % (_tabWidth + kTabSpacing) < _tabWidth) { - tabID = x / (_tabWidth + kTabSpacing); + if (x >= 0 && x % (_tabWidth + _tabSpacing) < _tabWidth) { + tabID = x / (_tabWidth + _tabSpacing); if (tabID >= (int)_tabs.size()) tabID = -1; } @@ -147,23 +128,15 @@ void TabWidget::handleScreenChanged() { } } - if (g_gui.getWidgetSize() == kBigWidgetSize) { - _tabHeight = kBigTabHeight; - } else { - _tabHeight = kTabHeight; - } - + _tabHeight = g_gui.theme()->getTabHeight(); _tabWidth = 40; - for (uint i = 0; i < _tabs.size(); ++i) { - int newWidth = g_gui.getStringWidth(_tabs[i].title) + 2 * kTabPadding; - if (_tabWidth < newWidth) - _tabWidth = newWidth; - } + _tabOffset = 0; // TODO + _tabSpacing = g_gui.theme()->getTabSpacing(); + _tabPadding = g_gui.theme()->getTabPadding(); - int maxWidth = (_w - kTabLeftOffset) / _tabs.size() - kTabLeftOffset; - if (_tabWidth > maxWidth) - _tabWidth = maxWidth; + if (_tabs.size()) + _tabWidth = _w / _tabs.size(); } void TabWidget::drawWidget(bool hilite) { diff --git a/gui/TabWidget.h b/gui/TabWidget.h index b3a7a6b873..d6e158364e 100644 --- a/gui/TabWidget.h +++ b/gui/TabWidget.h @@ -41,6 +41,10 @@ protected: int _tabWidth; int _tabHeight; + int _tabOffset; + int _tabSpacing; + int _tabPadding; + public: TabWidget(GuiObject *boss, int x, int y, int w, int h); TabWidget(GuiObject *boss, const String &name); diff --git a/gui/ThemeClassic.cpp b/gui/ThemeClassic.cpp index b1ebba917a..f56eec08fe 100644 --- a/gui/ThemeClassic.cpp +++ b/gui/ThemeClassic.cpp @@ -138,6 +138,21 @@ void ThemeClassic::resetDrawArea() { } } +int ThemeClassic::getTabHeight() const { + if (_screen.w >= 400 && _screen.h >= 300) { + return 21; + } else { + return 16; + } +} + +int ThemeClassic::getTabSpacing() const { + return 2; +} +int ThemeClassic::getTabPadding() const { + return 3; +} + void ThemeClassic::drawDialogBackground(const Common::Rect &r, uint16 hints, State state) { if (!_initOk) return; diff --git a/gui/ThemeNew.cpp b/gui/ThemeNew.cpp index ad85705655..ef73508ba4 100644 --- a/gui/ThemeNew.cpp +++ b/gui/ThemeNew.cpp @@ -43,7 +43,7 @@ #define kShadowTr4 128 #define kShadowTr5 192 -#define THEME_VERSION 15 +#define THEME_VERSION 16 using Graphics::Surface; @@ -573,34 +573,55 @@ void ThemeNew::drawTab(const Common::Rect &r, int tabHeight, int tabWidth, const return; restoreBackground(r); - int tabXOffset = surface(kWidgetSmallBkgdCorner)->w; + + // whole tab background + drawRectMasked(r, surface(kTabBkgdCorner), surface(kTabBkgdTop), surface(kTabBkgdLeft), surface(kTabBkgd), + /*(state == kStateDisabled) ? -30 : */256, _colors[kTabBackgroundStart], _colors[kTabBackgroundEnd], + _gradientFactors[kTabFactor]); - OverlayColor tabEnd = calcGradient(_colors[kTabBackgroundStart], _colors[kTabBackgroundEnd], tabHeight, r.height(), _gradientFactors[kTabFactor]); + OverlayColor tabEnd = calcGradient(_colors[kTabActiveStart], _colors[kTabActiveEnd], tabHeight, r.height(), _gradientFactors[kTabFactor]); + + const int tabOffset = 1; + + // tab shadows + for (int i = 0; i < (int)tabs.size(); ++i) { + Common::Rect tabRect(r.left + i * (tabWidth + tabOffset), r.top, r.left + i * (tabWidth + tabOffset) + tabWidth, r.top + tabHeight); + drawShadow(tabRect, surface(kTabBkgdCorner), surface(kTabBkgdTop), surface(kTabBkgdLeft), surface(kTabBkgd), + kShadowSmall, true); + } + // inactive tabs for (int i = 0; i < (int)tabs.size(); ++i) { if (i == active) continue; - Common::Rect tabRect(r.left + tabXOffset + i * tabWidth, r.top, r.left + tabXOffset + i * tabWidth + tabWidth, r.top + tabHeight); + Common::Rect tabRect(r.left + i * (tabWidth + tabOffset), r.top, r.left + i * (tabWidth + tabOffset) + tabWidth, r.top + tabHeight); drawRectMasked(tabRect, surface(kTabBkgdCorner), surface(kTabBkgdTop), surface(kTabBkgdLeft), surface(kTabBkgd), - 128, _colors[kTabBackgroundStart], tabEnd, _gradientFactors[kTabFactor], true); + 256, _colors[kTabInactiveStart], _colors[kTabInactiveEnd], _gradientFactors[kTabFactor], true); getFont()->drawString(&_screen, tabs[i], tabRect.left, tabRect.top+2, tabRect.width(), getColor(kStateEnabled), Graphics::kTextAlignCenter, 0, true); } - Common::Rect widgetBackground = Common::Rect(r.left, r.top + tabHeight, r.right, r.bottom); - drawRectMasked(widgetBackground, surface(kWidgetSmallBkgdCorner), surface(kWidgetSmallBkgdTop), surface(kWidgetSmallBkgdLeft), surface(kWidgetSmallBkgd), - (state == kStateDisabled) ? -30 : 256, tabEnd, _colors[kTabBackgroundEnd], - _gradientFactors[kTabFactor]); + // area shadow + Common::Rect widgetBackground = Common::Rect(r.left, r.top + tabHeight, r.right, r.bottom - 2); + drawShadow(widgetBackground, surface(kTabBkgdCorner), surface(kTabBkgdTop), surface(kTabBkgdLeft), surface(kTabBkgd), + kShadowSmall, false, true); + + // area itself + widgetBackground = Common::Rect(r.left, r.top + tabHeight, r.right, r.bottom); + drawRectMasked(widgetBackground, surface(kTabBkgdCorner), surface(kTabBkgdTop), surface(kTabBkgdLeft), surface(kTabBkgd), + /*(state == kStateDisabled) ? -30 : */256, tabEnd, _colors[kTabActiveEnd], + _gradientFactors[kTabFactor], false, true); addDirtyRect(widgetBackground, true); - Common::Rect tabRect(r.left + tabXOffset + active * tabWidth, r.top, r.left + tabXOffset + active * tabWidth + tabWidth, r.top + tabHeight + 1); + // active tab + Common::Rect tabRect(r.left + active * (tabWidth + tabOffset), r.top, r.left + active * (tabWidth + tabOffset) + tabWidth, r.top + tabHeight + 1); drawRectMasked(tabRect, surface(kTabBkgdCorner), surface(kTabBkgdTop), surface(kTabBkgdLeft), surface(kTabBkgd), - 256, _colors[kTabBackgroundStart], tabEnd, _gradientFactors[kTabFactor], true); + 256, _colors[kTabActiveStart], tabEnd, _gradientFactors[kTabFactor], true); getFont()->drawString(&_screen, tabs[active], tabRect.left, tabRect.top+2, tabRect.width(), getColor(kStateHighlight), Graphics::kTextAlignCenter, 0, true); - addDirtyRect(r); + addDirtyRect(Common::Rect(r.left, r.top-2, r.right, r.bottom)); } void ThemeNew::drawScrollbar(const Common::Rect &r, int sliderY, int sliderHeight, ScrollbarState scrollState, State state) { @@ -727,6 +748,22 @@ void ThemeNew::drawLineSeparator(const Common::Rect &r, State state) { addDirtyRect(r); } +int ThemeNew::getTabHeight() const { + // TODO let the user specify those + if (_screen.w >= 400 && _screen.h >= 300) { + return 25; + } else { + return 16; + } +} + +int ThemeNew::getTabSpacing() const { + return 0; +} +int ThemeNew::getTabPadding() const { + return 3; +} + #pragma mark - intern drawing void ThemeNew::restoreBackground(Common::Rect r, bool special) { @@ -796,7 +833,7 @@ void ThemeNew::drawRect(const Common::Rect &r, const Surface *corner, const Surf void ThemeNew::drawRectMasked(const Common::Rect &r, const Graphics::Surface *corner, const Graphics::Surface *top, const Graphics::Surface *left, const Graphics::Surface *fill, int alpha, - OverlayColor start, OverlayColor end, uint factor, bool skipLastRow) { + OverlayColor start, OverlayColor end, uint factor, bool skipLastRow, bool skipTopRow) { int drawWidth = MIN(corner->w, MIN(top->w, MIN(left->w, fill->w))); int drawHeight = MIN(corner->h, MIN(top->h, MIN(left->h, fill->h))); int partsH = r.height() / drawHeight; @@ -846,7 +883,7 @@ void ThemeNew::drawRectMasked(const Common::Rect &r, const Graphics::Surface *co // draw the right surface if (!i || i == partsW - 1) { - if (!y || (y == partsH - 1 && !skipLastRow)) { + if ((!y && !skipTopRow) || (y == partsH - 1 && !skipLastRow)) { drawSurfaceMasked(Common::Rect(xPos, yPos, xPos+usedWidth, yPos+usedHeight), corner, upDown, (i == partsW - 1), alpha, startCol, endCol); } else { drawSurfaceMasked(Common::Rect(xPos, yPos, xPos+usedWidth, yPos+usedHeight), left, upDown, (i == partsW - 1), alpha, startCol, endCol); @@ -890,7 +927,7 @@ Common::Rect ThemeNew::shadowRect(const Common::Rect &r, uint32 shadowStyle) { } void ThemeNew::drawShadow(const Common::Rect &r, const Graphics::Surface *corner, const Graphics::Surface *top, - const Graphics::Surface *left, const Graphics::Surface *fill, uint32 shadowStyle, bool skipLastRow) { + const Graphics::Surface *left, const Graphics::Surface *fill, uint32 shadowStyle, bool skipLastRow, bool skipTopRow) { switch (shadowStyle) { case kShadowFull: { Common::Rect r2(r.left-1, r.top-1, r.right + 4, r.bottom + 4); @@ -898,10 +935,10 @@ void ThemeNew::drawShadow(const Common::Rect &r, const Graphics::Surface *corner Common::Rect r4(r.left, r.top+1, r.right + 2, r.bottom + 2); Common::Rect r5(r.left, r.top, r.right + 1, r.bottom + 1); - drawShadowRect(r2, r, corner, top, left, fill, kShadowTr0, skipLastRow); - drawShadowRect(r3, r, corner, top, left, fill, kShadowTr1, skipLastRow); - drawShadowRect(r4, r, corner, top, left, fill, kShadowTr2, skipLastRow); - drawShadowRect(r5, r, corner, top, left, fill, kShadowTr3, skipLastRow); + drawShadowRect(r2, r, corner, top, left, fill, kShadowTr0, skipLastRow, skipTopRow); + drawShadowRect(r3, r, corner, top, left, fill, kShadowTr1, skipLastRow, skipTopRow); + drawShadowRect(r4, r, corner, top, left, fill, kShadowTr2, skipLastRow, skipTopRow); + drawShadowRect(r5, r, corner, top, left, fill, kShadowTr3, skipLastRow, skipTopRow); //drawShadowRect(r5, r, corner, top, left, fill, kShadowTr35, skipLastRow); } break; @@ -909,24 +946,24 @@ void ThemeNew::drawShadow(const Common::Rect &r, const Graphics::Surface *corner Common::Rect r3(r.left - _shadowLeftWidth/2, r.top - _shadowTopHeight/2, r.right + _shadowRightWidth/2, r.bottom + _shadowBottomHeight/2); Common::Rect r4(r.left - _shadowLeftWidth/2 + 1, r.top - _shadowTopHeight/2 + 1, r.right + _shadowRightWidth/2-1, r.bottom + _shadowBottomHeight/2-1); - drawShadowRect(r3, r, corner, top, left, fill, kShadowTr1, skipLastRow); - drawShadowRect(r4, r, corner, top, left, fill, kShadowTr2, skipLastRow); + drawShadowRect(r3, r, corner, top, left, fill, kShadowTr1, skipLastRow, skipTopRow); + drawShadowRect(r4, r, corner, top, left, fill, kShadowTr2, skipLastRow, skipTopRow); } break; case kShadowButton: { Common::Rect r2(r.left-1, r.top - 1, r.right, r.bottom); Common::Rect r4(r.left, r.top, r.right + 1, r.bottom + 1); - drawShadowRect(r2, r, corner, top, left, fill, -kShadowTr35-256, skipLastRow); - drawShadowRect(r4, r, corner, top, left, fill, kShadowTr4, skipLastRow); + drawShadowRect(r2, r, corner, top, left, fill, -kShadowTr35-256, skipLastRow, skipTopRow); + drawShadowRect(r4, r, corner, top, left, fill, kShadowTr4, skipLastRow, skipTopRow); } break; case kShadowEmboss: { Common::Rect r2(r.left - 1, r.top - 1, r.right, r.bottom); Common::Rect r4(r.left + 1, r.top + 1, r.right + 1, r.bottom + 1); - drawShadowRect(r2, r, corner, top, left, fill, kShadowTr5, skipLastRow); - drawShadowRect(r4, r, corner, top, left, fill, kShadowTr1, skipLastRow); + drawShadowRect(r2, r, corner, top, left, fill, kShadowTr5, skipLastRow, skipTopRow); + drawShadowRect(r4, r, corner, top, left, fill, kShadowTr1, skipLastRow, skipTopRow); } break; case kShadowPopUp: { @@ -935,10 +972,10 @@ void ThemeNew::drawShadow(const Common::Rect &r, const Graphics::Surface *corner Common::Rect r3(r.left - 1, r.top-1, r.right, r.bottom); Common::Rect r4(r.left, r.top, r.right + 1, r.bottom + 1); - drawShadowRect(r2, r, corner, top, left, fill, kShadowTr1, skipLastRow); - drawShadowRect(r25, r, corner, top, left, fill, kShadowTr2, skipLastRow); - drawShadowRect(r4, r, corner, top, left, fill, kShadowTr3, skipLastRow); - drawShadowRect(r3, r, corner, top, left, fill, -kShadowTr35-256, skipLastRow); + drawShadowRect(r2, r, corner, top, left, fill, kShadowTr1, skipLastRow, skipTopRow); + drawShadowRect(r25, r, corner, top, left, fill, kShadowTr2, skipLastRow, skipTopRow); + drawShadowRect(r4, r, corner, top, left, fill, kShadowTr3, skipLastRow, skipTopRow); + drawShadowRect(r3, r, corner, top, left, fill, -kShadowTr35-256, skipLastRow, skipTopRow); } break; default: @@ -948,7 +985,7 @@ void ThemeNew::drawShadow(const Common::Rect &r, const Graphics::Surface *corner void ThemeNew::drawShadowRect(const Common::Rect &r, const Common::Rect &area, const Graphics::Surface *corner, const Graphics::Surface *top, const Graphics::Surface *left, const Graphics::Surface *fill, - int alpha, bool skipLastRow) { + int alpha, bool skipLastRow, bool skipTopRow) { int drawWidth = MIN(corner->w, MIN(top->w, MIN(left->w, fill->w))); int drawHeight = MIN(corner->h, MIN(top->h, MIN(left->h, fill->h))); int partsH = r.height() / drawHeight; @@ -1008,7 +1045,7 @@ void ThemeNew::drawShadowRect(const Common::Rect &r, const Common::Rect &area, c // draw the right surface if (!i || i == partsW - 1) { - if (!y || (y == partsH - 1 && !skipLastRow)) { + if ((!y && !skipTopRow) || (y == partsH - 1 && !skipLastRow)) { drawSurfaceMasked(Common::Rect(xPos, yPos, xPos+usedWidth, yPos+usedHeight), corner, upDown, (i == partsW - 1), alpha, startCol, endCol); } else { drawSurfaceMasked(Common::Rect(xPos, yPos, xPos+usedWidth, yPos+usedHeight), left, upDown, (i == partsW - 1), alpha, startCol, endCol); @@ -1187,6 +1224,11 @@ void ThemeNew::setupColors() { getColorFromConfig("tab_background_start", _colors[kTabBackgroundStart]); getColorFromConfig("tab_background_end", _colors[kTabBackgroundEnd]); + getColorFromConfig("tab_active_start", _colors[kTabActiveStart]); + getColorFromConfig("tab_active_end", _colors[kTabActiveEnd]); + getColorFromConfig("tab_inactive_start", _colors[kTabInactiveStart]); + getColorFromConfig("tab_inactive_end", _colors[kTabInactiveEnd]); + getColorFromConfig("scrollbar_background_start", _colors[kScrollbarBackgroundStart]); getColorFromConfig("scrollbar_background_end", _colors[kScrollbarBackgroundEnd]); getColorFromConfig("scrollbar_button_start", _colors[kScrollbarButtonStart]); diff --git a/gui/theme.h b/gui/theme.h index cbe7eaf663..137abafb72 100644 --- a/gui/theme.h +++ b/gui/theme.h @@ -160,6 +160,10 @@ public: virtual void restoreBackground(Common::Rect r, bool special = false) = 0; virtual bool addDirtyRect(Common::Rect r, bool save = false, bool special = false) = 0; + virtual int getTabHeight() const = 0; + virtual int getTabSpacing() const = 0; + virtual int getTabPadding() const = 0; + Graphics::TextAlignment convertAligment(TextAlign align) const { switch (align) { case kTextAlignLeft: @@ -236,7 +240,6 @@ public: void resetDrawArea(); - typedef Common::String String; const Graphics::Font *getFont(FontStyle font) const { return _font; } @@ -261,6 +264,10 @@ public: void restoreBackground(Common::Rect r, bool special = false); bool addDirtyRect(Common::Rect r, bool save = false, bool special = false); + int getTabHeight() const; + int getTabSpacing() const; + int getTabPadding() const; + private: void box(int x, int y, int width, int height, OverlayColor colorA, OverlayColor colorB, bool skipLastRow = false); void box(int x, int y, int width, int height); @@ -340,13 +347,17 @@ public: void restoreBackground(Common::Rect r, bool special = false); bool addDirtyRect(Common::Rect r, bool backup = false, bool special = false); + int getTabHeight() const; + int getTabSpacing() const; + int getTabPadding() const; + private: void colorFade(const Common::Rect &r, OverlayColor start, OverlayColor end, uint factor = 1); void drawRect(const Common::Rect &r, const Graphics::Surface *corner, const Graphics::Surface *top, const Graphics::Surface *left, const Graphics::Surface *fill, int alpha, bool skipLastRow = false); void drawRectMasked(const Common::Rect &r, const Graphics::Surface *corner, const Graphics::Surface *top, const Graphics::Surface *left, const Graphics::Surface *fill, int alpha, - OverlayColor start, OverlayColor end, uint factor = 1, bool skipLastRow = false); + OverlayColor start, OverlayColor end, uint factor = 1, bool skipLastRow = false, bool skipTopRow = false); void drawSurface(const Common::Rect &r, const Graphics::Surface *surf, bool upDown, bool leftRight, int alpha); void drawSurfaceMasked(const Common::Rect &r, const Graphics::Surface *surf, bool upDown, bool leftRight, int alpha, OverlayColor start, OverlayColor end, uint factor = 1); @@ -361,10 +372,11 @@ private: Common::Rect shadowRect(const Common::Rect &r, uint32 shadowStyle); void drawShadow(const Common::Rect &r, const Graphics::Surface *corner, const Graphics::Surface *top, - const Graphics::Surface *left, const Graphics::Surface *fill, uint32 shadowStyle, bool skipLastRow = false); + const Graphics::Surface *left, const Graphics::Surface *fill, uint32 shadowStyle, bool skipLastRow = false, + bool skipTopRow = false); void drawShadowRect(const Common::Rect &r, const Common::Rect &area, const Graphics::Surface *corner, const Graphics::Surface *top, const Graphics::Surface *left, const Graphics::Surface *fill, - int alpha, bool skipLastRow = false); + int alpha, bool skipLastRow = false, bool skipTopRow = false); int _shadowLeftWidth, _shadowRightWidth; int _shadowTopHeight, _shadowBottomHeight; @@ -465,7 +477,7 @@ public: kEditTextBkgd = 47, kGUICursor = 48, - + kImageHandlesMax }; @@ -554,6 +566,11 @@ private: kEditTextBackgroundStart = 44, kEditTextBackgroundEnd = 45, + kTabActiveStart = 46, + kTabActiveEnd = 47, + kTabInactiveStart = 48, + kTabInactiveEnd = 49, + kColorHandlesMax }; diff --git a/gui/themes/modern.ini b/gui/themes/modern.ini index 711a5c0857..4531fb3605 100644 --- a/gui/themes/modern.ini +++ b/gui/themes/modern.ini @@ -1,7 +1,7 @@ # $URL$ # $Id$ [theme] -version=15 +version=16 [pixmaps] pix_dialog_corner="dialog_bkgd_corner.bmp" @@ -24,10 +24,10 @@ pix_checkbox_checked="checkbox_checked.bmp" pix_widget_arrow="widget_arrow.bmp" -pix_tab_corner="widget_small_bkgd_corner.bmp" -pix_tab_top="widget_small_bkgd_top.bmp" -pix_tab_left="widget_small_bkgd_left.bmp" -pix_tab_bkgd="widget_small_bkgd.bmp" +pix_tab_corner="tab_bkgd_corner.bmp" +pix_tab_top="button_bkgd_top.bmp" +pix_tab_left="button_bkgd_left.bmp" +pix_tab_bkgd="button_bkgd.bmp" pix_slider_bkgd_corner="button_bkgd_corner.bmp" pix_slider_bkgd_top="button_bkgd_top.bmp" @@ -105,7 +105,12 @@ slider_highlight_start=255 210 200 slider_highlight_end=200 70 50 tab_background_start=246 224 139 -tab_background_end=251 241 206 +tab_background_end=249 238 190 + +tab_active_start=246 224 139 +tab_active_end=249 238 190 +tab_inactive_start=246 224 139 +tab_inactive_end=246 224 139 scrollbar_background_start=247 228 166 scrollbar_background_end=247 228 166 diff --git a/gui/themes/modern.zip b/gui/themes/modern.zip Binary files differindex 628dbc545e..9344f9b1cc 100644 --- a/gui/themes/modern.zip +++ b/gui/themes/modern.zip |