Debug widgets.
Added dialog backgrounds. svn-id: r33011
This commit is contained in:
parent
e64711378e
commit
db932dce89
3 changed files with 23 additions and 17 deletions
|
@ -50,6 +50,10 @@ bool ThemeRenderer::loadDefaultXML() {
|
|||
"<drawstep func = 'fill' fill = 'gradient' gradient_start = '214, 113, 8' gradient_end = '240, 200, 25' />"
|
||||
"</drawdata>"
|
||||
|
||||
"<drawdata id = 'default_bg' cache = false>"
|
||||
"<drawstep func = 'roundedsq' radius = 12 stroke = 8 fg_color = '0, 0, 0' fill = 'gradient' gradient_start = '255, 231, 140' gradient_end = '255, 243, 206' shadow = 3 size = 'auto' />"
|
||||
"</drawdata>"
|
||||
|
||||
"<drawdata id = 'button_idle' cache = false>"
|
||||
"<text vertical_align = 'center' horizontal_align = 'center' color = '255, 255, 255' />"
|
||||
"<drawstep func = 'roundedsq' radius = '8' stroke = 0 fill = 'gradient' gradient_start = '206, 121, 99' gradient_end = '173, 40, 8' size = 'auto' shadow = 3 />"
|
||||
|
|
|
@ -305,7 +305,7 @@ void ThemeRenderer::drawButton(const Common::Rect &r, const Common::String &str,
|
|||
drawDDText(dd, r, str);
|
||||
|
||||
addDirtyRect(r);
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("BTN", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawLineSeparator(const Common::Rect &r, WidgetStateInfo state) {
|
||||
|
@ -315,7 +315,7 @@ void ThemeRenderer::drawLineSeparator(const Common::Rect &r, WidgetStateInfo sta
|
|||
drawDD(kDDSeparator, r);
|
||||
addDirtyRect(r);
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Separator", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawCheckbox(const Common::Rect &r, const Common::String &str, bool checked, WidgetStateInfo state) {
|
||||
|
@ -336,7 +336,7 @@ void ThemeRenderer::drawCheckbox(const Common::Rect &r, const Common::String &st
|
|||
drawDDText(checked ? kDDCheckboxEnabled : kDDCheckboxDisabled, r2, str);
|
||||
|
||||
addDirtyRect(r);
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Checkbox", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawSlider(const Common::Rect &r, int width, WidgetStateInfo state) {
|
||||
|
@ -351,68 +351,70 @@ void ThemeRenderer::drawSlider(const Common::Rect &r, int width, WidgetStateInfo
|
|||
drawDD(kDDSliderFull, r2);
|
||||
|
||||
addDirtyRect(r);
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Slider", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawScrollbar(const Common::Rect &r, int sliderY, int sliderHeight, ScrollbarState sb_state, WidgetStateInfo state) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("SCB", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawDialogBackground(const Common::Rect &r, uint16 hints, WidgetStateInfo state) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
if (hints & THEME_HINT_MAIN_DIALOG)
|
||||
if (hints & THEME_HINT_MAIN_DIALOG) {
|
||||
drawDD(kDDMainDialogBackground, r);
|
||||
else if (hints & THEME_HINT_SPECIAL_COLOR)
|
||||
} else if (hints & THEME_HINT_SPECIAL_COLOR) {
|
||||
drawDD(kDDSpecialColorBackground, r);
|
||||
else if (hints & THEME_HINT_PLAIN_COLOR)
|
||||
} else if (hints & THEME_HINT_PLAIN_COLOR) {
|
||||
drawDD(kDDPlainColorBackground, r);
|
||||
else
|
||||
} else {
|
||||
drawDD(kDDDefaultBackground, r);
|
||||
}
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Background", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawCaret(const Common::Rect &r, bool erase, WidgetStateInfo state) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Caret", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawPopUpWidget(const Common::Rect &r, const Common::String &sel, int deltax, WidgetStateInfo state, TextAlign align) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Popup Widget", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawSurface(const Common::Rect &r, const Graphics::Surface &surface, WidgetStateInfo state, int alpha, bool themeTrans) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Surface", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawWidgetBackground(const Common::Rect &r, uint16 hints, WidgetBackground background, WidgetStateInfo state) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Widget Background", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::drawTab(const Common::Rect &r, int tabHeight, int tabWidth, const Common::Array<Common::String> &tabs, int active, uint16 hints, int titleVPad, WidgetStateInfo state) {
|
||||
if (!ready())
|
||||
return;
|
||||
|
||||
debugWidgetPosition(r);
|
||||
debugWidgetPosition("Tab widget", r);
|
||||
}
|
||||
|
||||
void ThemeRenderer::debugWidgetPosition(const Common::Rect &r) {
|
||||
void ThemeRenderer::debugWidgetPosition(const char *name, const Common::Rect &r) {
|
||||
_font->drawString(_screen, name, r.left, r.top, r.width(), 0xFFFF, Graphics::kTextAlignLeft, 0, true);
|
||||
_screen->hLine(r.left, r.top, r.right, 0xFFFF);
|
||||
_screen->hLine(r.left, r.bottom, r.right, 0xFFFF);
|
||||
_screen->vLine(r.left, r.top, r.bottom, 0xFFFF);
|
||||
|
|
|
@ -239,7 +239,7 @@ protected:
|
|||
|
||||
inline void drawDD(DrawData type, const Common::Rect &r);
|
||||
inline void drawDDText(DrawData type, const Common::Rect &r, const Common::String &text);
|
||||
inline void debugWidgetPosition(const Common::Rect &r);
|
||||
inline void debugWidgetPosition(const char *name, const Common::Rect &r);
|
||||
|
||||
// TODO
|
||||
void restoreBackground(Common::Rect r, bool special = false) {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue