aboutsummaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorVicent Marti2008-07-12 01:59:33 +0000
committerVicent Marti2008-07-12 01:59:33 +0000
commitdb932dce89eac7664eb9fc654f87ba89576da66f (patch)
treea52c4c3bc856b1835ebdc8881b4117a5a0f4f6ea /gui
parente64711378eb19dc6474249bc83033087edd4d7d7 (diff)
downloadscummvm-rg350-db932dce89eac7664eb9fc654f87ba89576da66f.tar.gz
scummvm-rg350-db932dce89eac7664eb9fc654f87ba89576da66f.tar.bz2
scummvm-rg350-db932dce89eac7664eb9fc654f87ba89576da66f.zip
Debug widgets.
Added dialog backgrounds. svn-id: r33011
Diffstat (limited to 'gui')
-rw-r--r--gui/ThemeDefaultXML.cpp4
-rw-r--r--gui/ThemeRenderer.cpp34
-rw-r--r--gui/ThemeRenderer.h2
3 files changed, 23 insertions, 17 deletions
diff --git a/gui/ThemeDefaultXML.cpp b/gui/ThemeDefaultXML.cpp
index 95b425e700..9227514a66 100644
--- a/gui/ThemeDefaultXML.cpp
+++ b/gui/ThemeDefaultXML.cpp
@@ -49,6 +49,10 @@ bool ThemeRenderer::loadDefaultXML() {
"<drawdata id = 'mainmenu_bg' cache = false>"
"<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' />"
diff --git a/gui/ThemeRenderer.cpp b/gui/ThemeRenderer.cpp
index ff3a63b8b8..1587a356e4 100644
--- a/gui/ThemeRenderer.cpp
+++ b/gui/ThemeRenderer.cpp
@@ -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);
diff --git a/gui/ThemeRenderer.h b/gui/ThemeRenderer.h
index 0e7f651904..6e9866d653 100644
--- a/gui/ThemeRenderer.h
+++ b/gui/ThemeRenderer.h
@@ -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) {}