diff options
author | Vicent Marti | 2008-07-19 15:49:08 +0000 |
---|---|---|
committer | Vicent Marti | 2008-07-19 15:49:08 +0000 |
commit | b5081a02ec1d72e14ced116246545e1210b8b86f (patch) | |
tree | 99e3a8cffd8eeadf07230ae1d0ae229db77a0ab6 /gui/ThemeRenderer.cpp | |
parent | cf3832fccefc00bcac4bc4d355568a66479fc926 (diff) | |
download | scummvm-rg350-b5081a02ec1d72e14ced116246545e1210b8b86f.tar.gz scummvm-rg350-b5081a02ec1d72e14ced116246545e1210b8b86f.tar.bz2 scummvm-rg350-b5081a02ec1d72e14ced116246545e1210b8b86f.zip |
Changed drawdata names to a struct.
Fixed text drawing.
svn-id: r33112
Diffstat (limited to 'gui/ThemeRenderer.cpp')
-rw-r--r-- | gui/ThemeRenderer.cpp | 56 |
1 files changed, 29 insertions, 27 deletions
diff --git a/gui/ThemeRenderer.cpp b/gui/ThemeRenderer.cpp index 10736a033f..abc05e63ab 100644 --- a/gui/ThemeRenderer.cpp +++ b/gui/ThemeRenderer.cpp @@ -39,41 +39,42 @@ namespace GUI { using namespace Graphics; -const char *ThemeRenderer::kDrawDataStrings[] = { - "mainmenu_bg", - "special_bg", - "plain_bg", - "default_bg", - - "widget_default", - "widget_small", - "widget_textedit", - "widget_slider", +const ThemeRenderer::DrawDataInfo ThemeRenderer::kDrawData[] = { + {kDDMainDialogBackground, "mainmenu_bg", true}, + {kDDSpecialColorBackground, "special_bg", true}, + {kDDPlainColorBackground, "plain_bg", true}, + {kDDDefaultBackground, "default_bg", true}, - "button_idle", - "button_hover", - "button_disabled", + {kDDWidgetBackgroundDefault, "widget_default", true}, + {kDDWidgetBackgroundSmall, "widget_small", true}, + {kDDWidgetBackgroundEditText, "widget_textedit", true}, + {kDDWidgetBackgroundSlider, "widget_slider", true}, - "slider_full", - "slider_empty", + {kDDButtonIdle, "button_idle", true}, + {kDDButtonHover, "button_hover", false}, + {kDDButtonDisabled, "button_disabled", true}, - "checkbox_enabled", - "checkbox_disabled", + {kDDSliderFull,"slider_full", false}, + {kDDSliderEmpty, "slider_empty", true}, - "tab_active", - "tab_inactive", + {kDDCheckboxEnabled, "checkbox_enabled", false}, + {kDDCheckboxDisabled, "checkbox_disabled", true}, - "scrollbar_base", - "scrollbar_handle", + {kDDTabActive, "tab_active", false}, + {kDDTabInactive, "tab_inactive", true}, - "popup_idle", - "popup_hover", - - "caret", - "separator", - "default_text" + {kDDScrollbarBase, "scrollbar_base", true}, + {kDDScrollbarHandle, "scrollbar_handle", false}, + + {kDDPopUpIdle, "popup_idle", true}, + {kDDPopUpHover, "popup_hover", false}, + + {kDDCaret, "caret", false}, + {kDDSeparator, "separator", true}, + {kDDDefaultText, "default_text", false} }; + ThemeRenderer::ThemeRenderer(Common::String themeName, GraphicsMode mode) : _vectorRenderer(0), _system(0), _graphicsMode(kGfxDisabled), _screen(0), _backBuffer(0), _bytesPerPixel(0), _initOk(false), @@ -523,6 +524,7 @@ void ThemeRenderer::drawText(const Common::Rect &r, const Common::String &str, W if (!_initOk) return; + restoreBackground(r); getFont(font)->drawString(_screen, str, r.left, r.top, r.width(), getTextColor(state), convertAligment(align), deltax, useEllipsis); addDirtyRect(r); } |