[Scummvm-cvs-logs] SF.net SVN: scummvm:[33651] scummvm/branches/gsoc2008-gui/gui

Tanoku at users.sourceforge.net Tanoku at users.sourceforge.net
Wed Aug 6 01:58:46 CEST 2008


Revision: 33651
          http://scummvm.svn.sourceforge.net/scummvm/?rev=33651&view=rev
Author:   Tanoku
Date:     2008-08-05 23:58:45 +0000 (Tue, 05 Aug 2008)

Log Message:
-----------
Options menu layout parsing, featuring the brand new FATPOPUPS.

Modified Paths:
--------------
    scummvm/branches/gsoc2008-gui/gui/ThemeEval.cpp
    scummvm/branches/gsoc2008-gui/gui/ThemeEval.h
    scummvm/branches/gsoc2008-gui/gui/ThemeParser.cpp
    scummvm/branches/gsoc2008-gui/gui/ThemeParser.h
    scummvm/branches/gsoc2008-gui/gui/ThemeRenderer.cpp
    scummvm/branches/gsoc2008-gui/gui/dialog.cpp
    scummvm/branches/gsoc2008-gui/gui/newgui.cpp
    scummvm/branches/gsoc2008-gui/gui/object.h
    scummvm/branches/gsoc2008-gui/gui/options.cpp
    scummvm/branches/gsoc2008-gui/gui/themes/default.inc
    scummvm/branches/gsoc2008-gui/gui/themes/modern.stx

Modified: scummvm/branches/gsoc2008-gui/gui/ThemeEval.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/ThemeEval.cpp	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/ThemeEval.cpp	2008-08-05 23:58:45 UTC (rev 33651)
@@ -157,15 +157,26 @@
 	_curLayout.top()->addChild(widget);
 }
 
-void ThemeEval::addDialog(const Common::String &name) {
+void ThemeEval::addDialog(const Common::String &name, const Common::String &overlays) {
 	ThemeLayout *layout = new ThemeLayoutMain();
 	_layouts[name] = layout;
+
+	int16 x, y;
+	uint16 w, h;
 	
-	layout->setX(0);
-	layout->setY(0);
-	layout->setWidth(g_system->getOverlayWidth());
-	layout->setHeight(g_system->getOverlayHeight());
+	if (overlays == "screen" || overlays.empty()) {
+		x = y = 0;
+		w = g_system->getOverlayWidth();
+		h = g_system->getOverlayHeight();
+	} else if (!getWidgetData(overlays, x, y, w, h)) {
+		error("Error when loading dialog position for '%s'", overlays.c_str());
+	}
 	
+	layout->setX(x);
+	layout->setY(y);
+	layout->setWidth(w);
+	layout->setHeight(h);
+
 	layout->setPadding(
 		getVar("Globals.Padding.Left", 0),
 		getVar("Globals.Padding.Right", 0),

Modified: scummvm/branches/gsoc2008-gui/gui/ThemeEval.h
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/ThemeEval.h	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/ThemeEval.h	2008-08-05 23:58:45 UTC (rev 33651)
@@ -146,6 +146,13 @@
 	virtual const char *getName() { return _name.c_str(); }
 	
 	virtual bool getWidgetData(const Common::String &name, int16 &x, int16 &y, uint16 &w, uint16 &h);
+
+	virtual bool getDialogData(int16 &x, int16 &y, uint16 &w, uint16 &h) {
+		assert(getLayoutType() == kLayoutMain);
+		x = _x; y = _y;
+		w = _w; h = _h;
+		return true;
+	}
 	
 protected:
 	int16 _x, _y, _w, _h;
@@ -246,7 +253,7 @@
 	
 	bool hasVar(const Common::String &name) { return _vars.contains(name); }
 	
-	void addDialog(const Common::String &name);
+	void addDialog(const Common::String &name, const Common::String &overlays);
 	void addLayout(ThemeLayout::LayoutType type, bool reverse, bool center = false);
 	void addWidget(const Common::String &name, int w, int h);
 	void addSpacing(int size);
@@ -261,10 +268,17 @@
 	bool getWidgetData(const Common::String &widget, int16 &x, int16 &y, uint16 &w, uint16 &h) {
 		Common::StringTokenizer tokenizer(widget, ".");
 		Common::String dialogName = "Dialog." + tokenizer.nextToken();
+
+		if (dialogName == "Dialog.Dialog")
+			dialogName = "Dialog." + tokenizer.nextToken();
+
 		Common::String widgetName = tokenizer.nextToken();
 		
 		if (!_layouts.contains(dialogName)) 
 			return false;
+
+		if (widgetName.empty())
+			return _layouts[dialogName]->getDialogData(x, y, w, h);
 			
 		return _layouts[dialogName]->getWidgetData(widgetName, x, y, w, h);
 	}
@@ -279,7 +293,8 @@
 	}
 
 	void debugDraw(Graphics::Surface *screen, const Graphics::Font *font) {
-		_layouts["Dialog.Launcher"]->debugDraw(screen, font);
+		_layouts["Dialog.GlobalOptions"]->debugDraw(screen, font);
+		_layouts["Dialog.GlobalOptions_Graphics"]->debugDraw(screen, font);
 	}
 	
 private:

Modified: scummvm/branches/gsoc2008-gui/gui/ThemeParser.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/ThemeParser.cpp	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/ThemeParser.cpp	2008-08-05 23:58:45 UTC (rev 33651)
@@ -493,7 +493,7 @@
 
 bool ThemeParser::parserCallback_dialog(ParserNode *node) {
 	Common::String var = "Dialog." + node->values["name"];
-	_theme->themeEval()->addDialog(var);
+	_theme->themeEval()->addDialog(var, node->values["overlays"]);
 		
 	return true;
 }

Modified: scummvm/branches/gsoc2008-gui/gui/ThemeParser.h
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/ThemeParser.h	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/ThemeParser.h	2008-08-05 23:58:45 UTC (rev 33651)
@@ -435,6 +435,7 @@
 			
 			XML_KEY(dialog)
 				XML_PROP(name, true)
+				XML_PROP(overlays, true)
 				XML_KEY(layout)
 					XML_PROP(type, true)
 					XML_PROP(center, false)

Modified: scummvm/branches/gsoc2008-gui/gui/ThemeRenderer.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/ThemeRenderer.cpp	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/ThemeRenderer.cpp	2008-08-05 23:58:45 UTC (rev 33651)
@@ -695,9 +695,9 @@
 		
 	renderDirtyScreen();
 
-//	_vectorRenderer->fillSurface();
-//	themeEval()->debugDraw(_screen, _font);
-//	_vectorRenderer->copyWholeFrame(_system);
+// 	_vectorRenderer->fillSurface();
+ //	themeEval()->debugDraw(_screen, _font);
+ //	_vectorRenderer->copyWholeFrame(_system);
 }
 
 void ThemeRenderer::renderDirtyScreen() {

Modified: scummvm/branches/gsoc2008-gui/gui/dialog.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/dialog.cpp	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/dialog.cpp	2008-08-05 23:58:45 UTC (rev 33651)
@@ -150,7 +150,7 @@
 	// Draw all children
 	Widget *w = _firstWidget;
 	while (w) {
-		w->draw();
+		if (w->_debugVisible) w->draw();
 		w = w->_next;
 	}
 }

Modified: scummvm/branches/gsoc2008-gui/gui/newgui.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/newgui.cpp	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/newgui.cpp	2008-08-05 23:58:45 UTC (rev 33651)
@@ -58,8 +58,20 @@
 
 void GuiObject::reflowLayout() {
 	if (!_name.empty()) {
-		if (!g_gui.xmlEval()->getWidgetData(_name, _x, _y, _w, _h))
-			error("Could not load widget position for '%s'", _name.c_str());
+		if (!g_gui.xmlEval()->getWidgetData(_name, _x, _y, _w, _h)) {
+			warning("Could not load widget position for '%s'", _name.c_str());
+			
+//			if ((_x = g_gui.evaluator()->getVar(_name + ".x")) == EVAL_UNDEF_VAR)
+//				error("Undefined variable %s.x", _name.c_str());
+//			if ((_y = g_gui.evaluator()->getVar(_name + ".y")) == EVAL_UNDEF_VAR)
+//				error("Undefined variable %s.y", _name.c_str());
+//			_w = g_gui.evaluator()->getVar(_name + ".w");
+//			_h = g_gui.evaluator()->getVar(_name + ".h");
+			_w = _x = _y = _h = 32;
+			_debugVisible = false;
+		}
+		
+		_debugVisible = true;
 
 		if (_x < 0)
 			error("Widget <%s> has x < 0: %d", _name.c_str(), _x);

Modified: scummvm/branches/gsoc2008-gui/gui/object.h
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/object.h	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/object.h	2008-08-05 23:58:45 UTC (rev 33651)
@@ -78,8 +78,11 @@
 	virtual uint16	getWidth() const	{ return _w; }
 	virtual uint16	getHeight() const	{ return _h; }
 
+//	Tanoku-TODO: fix this back
 	virtual bool	isVisible() const = 0;
+	bool _debugVisible;
 
+
 	virtual void	draw() = 0;
 
 	virtual void	reflowLayout();

Modified: scummvm/branches/gsoc2008-gui/gui/options.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/options.cpp	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/options.cpp	2008-08-05 23:58:45 UTC (rev 33651)
@@ -659,27 +659,27 @@
 
 
 GlobalOptionsDialog::GlobalOptionsDialog()
-	: OptionsDialog(Common::ConfigManager::kApplicationDomain, "globaloptions") {
+	: OptionsDialog(Common::ConfigManager::kApplicationDomain, "GlobalOptions") {
 
 	// The tab widget
-	TabWidget *tab = new TabWidget(this, "globaloptions_tabwidget");
+	TabWidget *tab = new TabWidget(this, "GlobalOptions.TabWidget");
 	tab->setHints(THEME_HINT_FIRST_DRAW | THEME_HINT_SAVE_BACKGROUND);
 
 	//
 	// 1) The graphics tab
 	//
 	tab->addTab("Graphics");
-	addGraphicControls(tab, "globaloptions_");
+	addGraphicControls(tab, "GlobalOptions_Graphics.");
 
 	//
 	// 2) The audio tab
 	//
 	tab->addTab("Audio");
-	addAudioControls(tab, "globaloptions_");
-	addSubtitleControls(tab, "globaloptions_");
+	addAudioControls(tab, "GlobalOptions.");
+	addSubtitleControls(tab, "GlobalOptions_Audio.");
 
 	tab->addTab("Volume");
-	addVolumeControls(tab, "globaloptions_");
+	addVolumeControls(tab, "GlobalOptions_Volume.");
 
 	// TODO: cd drive setting
 
@@ -687,7 +687,7 @@
 	// 3) The MIDI tab
 	//
 	tab->addTab("MIDI");
-	addMIDIControls(tab, "globaloptions_");
+	addMIDIControls(tab, "GlobalOptions_MIDI.");
 
 	//
 	// 4) The miscellaneous tab
@@ -699,33 +699,33 @@
 	// truncated in the small version of the GUI.
 
 	// Save game path
-	new ButtonWidget(tab, "globaloptions_savebutton", "Save Path: ", kChooseSaveDirCmd, 0);
-	_savePath = new StaticTextWidget(tab, "globaloptions_savepath", "/foo/bar");
+	new ButtonWidget(tab, "GlobalOptions_Paths.SaveButton", "Save Path: ", kChooseSaveDirCmd, 0);
+	_savePath = new StaticTextWidget(tab, "GlobalOptions_Paths.SavePath", "/foo/bar");
 
-	new ButtonWidget(tab, "globaloptions_themebutton", "Theme Path:", kChooseThemeDirCmd, 0);
-	_themePath = new StaticTextWidget(tab, "globaloptions_themepath", "None");
+	new ButtonWidget(tab, "GlobalOptions_Paths.ThemeButton", "Theme Path:", kChooseThemeDirCmd, 0);
+	_themePath = new StaticTextWidget(tab, "GlobalOptions_Paths.ThemePath", "None");
 
-	new ButtonWidget(tab, "globaloptions_extrabutton", "Extra Path:", kChooseExtraDirCmd, 0);
-	_extraPath = new StaticTextWidget(tab, "globaloptions_extrapath", "None");
+	new ButtonWidget(tab, "GlobalOptions_Paths.ExtraButton", "Extra Path:", kChooseExtraDirCmd, 0);
+	_extraPath = new StaticTextWidget(tab, "GlobalOptions_Paths.ExtraPath", "None");
 
 #ifdef DYNAMIC_MODULES
-	new ButtonWidget(tab, "globaloptions_pluginsbutton", "Plugins Path:", kChoosePluginsDirCmd, 0);
-	_pluginsPath = new StaticTextWidget(tab, "globaloptions_pluginspath", "None");
+	new ButtonWidget(tab, "GlobalOptions_Paths.PluginsButton", "Plugins Path:", kChoosePluginsDirCmd, 0);
+	_pluginsPath = new StaticTextWidget(tab, "GlobalOptions_Paths.PluginsPath", "None");
 #endif
 #endif
 
 #ifdef SMALL_SCREEN_DEVICE
-	new ButtonWidget(tab, "globaloptions_keysbutton", "Keys", kChooseKeyMappingCmd, 0);
+	new ButtonWidget(tab, "GlobalOptions.KeysButton", "Keys", kChooseKeyMappingCmd, 0);
 #endif
 
 	tab->addTab("Misc");
 
-	new ButtonWidget(tab, "globaloptions_themebutton2", "Theme:", kChooseThemeCmd, 0);
-	_curTheme = new StaticTextWidget(tab, "globaloptions_curtheme", g_gui.theme()->getThemeName());
+	new ButtonWidget(tab, "GlobalOptions_Misc.ThemeButton", "Theme:", kChooseThemeCmd, 0);
+	_curTheme = new StaticTextWidget(tab, "GlobalOptions_Misc.CurTheme", g_gui.theme()->getThemeName());
 
 	int labelWidth = g_gui.evaluator()->getVar("tabPopupsLabelW");
 
-	_autosavePeriodPopUp = new PopUpWidget(tab, "globaloptions_autosaveperiod", "Autosave:", labelWidth);
+	_autosavePeriodPopUp = new PopUpWidget(tab, "GlobalOptions_Misc.AutosavePeriod", "Autosave:", labelWidth);
 
 	for (int i = 0; savePeriodLabels[i]; i++) {
 		_autosavePeriodPopUp->appendEntry(savePeriodLabels[i], savePeriodValues[i]);
@@ -738,8 +738,8 @@
 	tab->setActiveTab(0);
 
 	// Add OK & Cancel buttons
-	new ButtonWidget(this, "globaloptions_cancel", "Cancel", kCloseCmd, 0);
-	new ButtonWidget(this, "globaloptions_ok", "OK", kOKCmd, 0);
+	new ButtonWidget(this, "GlobalOptions.Cancel", "Cancel", kCloseCmd, 0);
+	new ButtonWidget(this, "GlobalOptions.Ok", "OK", kOKCmd, 0);
 
 #ifdef SMALL_SCREEN_DEVICE
 	_keysDialog = new KeysDialog();

Modified: scummvm/branches/gsoc2008-gui/gui/themes/default.inc
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/themes/default.inc	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/themes/default.inc	2008-08-05 23:58:45 UTC (rev 33651)
@@ -1 +1 @@
-"     <render_info> <palette> <color name = 'darkred' rgb = '168, 42, 12' /> <color name = 'brightred' rgb = '200, 124, 104' /> <color name = 'xtrabrightred' rgb = '251, 241, 206' /> <color name = 'blandyellow' rgb = '247, 228, 166' /> <color name = 'bgreen' rgb = '96, 160, 8' /> <color name = 'blue' rgb = '0, 255, 255' /> <color name = 'black' rgb = '0, 0, 0' /> <color name = 'white' rgb = '255, 255, 255' /> <color name = 'shadowcolor' rgb = '63, 60, 17' /> </palette>  <fonts> <font	id = 'text_default' type = 'default' color = 'black' /> <font	id = 'text_hover' type = 'default' color = 'bgreen' /> <font	id = 'text_disabled' type = 'default' color = '128, 128, 128' /> <font	id = 'text_inverted' type = 'default' color = '0, 0, 0' /> <font	id = 'text_button' type = 'default' color = 'white' /> <font	id = 'text_button_hover' type = 'default' color = 'blandyellow' /> </fonts>  <defaults fill = 'gradient' fg_color = 'white' bevel_color = '237, 169, 72'/>  <drawdata id = 'text_selection' cache = false> <drawstep	func = 'square' fill = 'foreground' fg_color = 'bgreen' /> </drawdata>  <drawdata id = 'mainmenu_bg' cache = false> <drawstep	func = 'fill' fill = 'gradient' gradient_start = '208, 112, 8' gradient_end = '232, 192, 16' /> </drawdata>  <drawdata id = 'separator' cache = false> <drawstep	func = 'square' fill = 'foreground' height = '1' ypos = 'center' fg_color = 'black' /> </drawdata>  <drawdata id = 'scrollbar_base' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 6 fill = 'background' fg_color = '176, 164, 160' bg_color = '240, 228, 160' /> </drawdata>  <drawdata id = 'scrollbar_handle_hover' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 6 fill = 'gradient' fg_color = 'blandyellow' gradient_start = 'xtrabrightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'scrollbar_handle_idle' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 6 fill = 'gradient' fg_color = 'blandyellow' gradient_start = 'brightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'scrollbar_button_idle' cache = false> <drawstep	func = 'roundedsq' radius = '4' fill = 'none' fg_color = '176, 164, 160' stroke = 1 /> <drawstep	func = 'triangle' fg_color = '0, 0, 0' fill = 'foreground' width = 'auto' height = 'auto' xpos = 'center' ypos = 'center' orientation = 'top' /> </drawdata>  <drawdata id = 'scrollbar_button_hover' cache = false> <drawstep	func = 'roundedsq' radius = '4' fill = 'background' fg_color = '120, 120, 120' bg_color = '206, 121, 99' stroke = 1 /> <drawstep	func = 'triangle' fg_color = '0, 0, 0' fill = 'foreground' width = 'auto' height = 'auto' xpos = 'center' ypos = 'center' orientation = 'top' /> </drawdata>  <drawdata id = 'tab_active' cache = false> <text	font = 'text_default' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'tab' radius = '4' stroke = '0' fill = 'gradient' gradient_end = 'xtrabrightred' gradient_start = 'blandyellow' shadow = 3 /> </drawdata>  <drawdata id = 'tab_inactive' cache = false> <text	font = 'text_default' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'tab' radius = '4' stroke = '0' fill = 'foreground' fg_color = '240, 205, 118' shadow = 3 /> </drawdata>  <drawdata id = 'tab_background' cache = false> <drawstep	func = 'tab' radius = '8' stroke = '0' fill = 'foreground' fg_color = '232, 180, 81' shadow = 3 /> </drawdata>  <drawdata id = 'widget_slider' cache = false> <drawstep	func = 'roundedsq' stroke = 0 radius = 4 fill = 'foreground' fg_color = 'blandyellow' bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'slider_full' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 4 fill = 'gradient' fg_color = '123, 112, 56' gradient_start = 'brightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'slider_hover' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 4 fill = 'gradient' fg_color = '123, 112, 56' gradient_start = 'xtrabrightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'popup_idle' cache = false> <drawstep	func = 'roundedsq' stroke = 0 radius = 4 fill = 'foreground' fg_color = '250, 237, 190' shadow = 2 /> <drawstep	func = 'triangle' fg_color = '63, 60, 52' fill = 'foreground' width = 'height' height = 'auto' xpos = 'right' ypos = 'center' orientation = 'bottom' /> <text	font = 'text_default' vertical_align = 'center' horizontal_align = 'right' /> </drawdata>   <drawdata id = 'popup_hover' cache = false> <drawstep	func = 'roundedsq' stroke = 0 radius = 4 fill = 'gradient' gradient_start = 'blandyellow' gradient_end = '250, 237, 190' shadow = 0 /> <drawstep	func = 'triangle' fg_color = '63, 60, 52' fill = 'foreground' width = 'height' height = 'auto' xpos = 'right' ypos = 'center' orientation = 'bottom' /> <text	font = 'text_hover' vertical_align = 'center' horizontal_align = 'right' /> </drawdata>  <drawdata id = 'default_bg' cache = false> <drawstep	func = 'roundedsq' radius = 12 stroke = 0 fg_color = 'xtrabrightred' fill = 'foreground' shadow = 3 /> </drawdata>  <drawdata id = 'button_idle' cache = false> <text	font = 'text_button' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'roundedsq' radius = '6' stroke = 1 fill = 'gradient' shadow = 0 fg_color = 'shadowcolor' gradient_start = 'brightred' gradient_end = 'darkred' bevel = 1 /> </drawdata>  <drawdata id = 'button_hover' cache = false> <text	font = 'text_button_hover' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'roundedsq' radius = '6' gradient_factor = 1 stroke = 1 fill = 'gradient' shadow = 0 fg_color = 'shadowcolor' gradient_start = 'xtrabrightred' gradient_end = 'darkred' bevel_color = 'xtrabrightred' bevel = 1 /> </drawdata>  <drawdata id = 'button_disabled' cache = false> <text	font = 'text_disabled' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'roundedsq' radius = '8' stroke = 0 fill = 'foreground' fg_color = '200, 200, 200' shadow = 3 /> </drawdata>  <drawdata id = 'checkbox_disabled' cache = false> <text	font = 'text_disabled' vertical_align = 'top' horizontal_align = 'left' /> <drawstep	func = 'roundedsq' fill = 'none' radius = 4 fg_color = 'black' shadow = 0 bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'checkbox_selected' cache = false> <text	font = 'text_default' vertical_align = 'top' horizontal_align = 'left' /> <drawstep	func = 'roundedsq' fill = 'gradient' radius = 4 fg_color = 'white' gradient_start = 'brightred' gradient_end = 'darkred' shadow = 0 bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'checkbox_default' cache = false> <text	font = 'text_default' vertical_align = 'top' horizontal_align = 'left' /> <drawstep	func = 'roundedsq' fill = 'foreground' radius = 4 fg_color = 'blandyellow' shadow = 0 bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'widget_default' cache = false> <drawstep	func = 'roundedsq' gradient_factor = 6 radius = '8' fill = 'gradient' gradient_start = '240, 224, 136' gradient_end = 'xtrabrightred' shadow = 3 /> </drawdata> </render_info>  <layout_info> <globals> <def var = 'Widget.Size' value = '32' /> <def var = 'Line.Height' value = '16' /> <def var = 'Font.Height' value = '16' />  <def var = 'Padding.Bottom' value = '16' /> <def var = 'Padding.Left' value = '16' /> <def var = 'Padding.Right' value = '16' /> <def var = 'Padding.Top' value = '16' />  <widget name = 'Inset' pos = '23, 94' size = '666, 666' /> <widget name = 'Button' size = '120, 25' /> <widget name = 'Slider' size = '666, 666' /> <widget name = 'ListWidget' padding = '7, 5, 5, 5' /> <widget name = 'PopUpWidget' padding = '7, 5, 0, 0' /> <widget name = 'EditTextWidget' padding = '7, 5, 0, 0' /> <widget name = 'Console' padding = '7, 5, 5, 5' />  <widget name = 'TabWidget'> <child	name = 'Tab' size = '75, 27' padding = '0, 0, 8, 0' /> <child name = 'NavButton' size = '15, 18' padding = '0, 3, 4, 0' /> </widget> </globals>  <dialog name = 'Launcher'> <layout type = 'vertical' center = 'true' padding = '23, 23, 8, 23'> <widget name = 'Version' width = '247' height = 'Globals.Line.Height' /> <widget name = 'Logo' width = '283' height = '80' /> <layout type = 'horizontal' direction = 'right2left' padding = '0, 0, 0, 0'> <layout type = 'vertical' padding = '16, 0, 0, 0'> <widget name = 'StartButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space size = '16' /> <widget name = 'AddGameButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'EditGameButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'RemoveGameButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space size = '16' /> <widget name = 'OptionsButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'AboutButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space size = '16' /> <widget name = 'QuitButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space/> </layout> <widget name = 'GameList'/> </layout> </layout> </dialog> </layout_info> "
+"     <render_info> <palette> <color name = 'darkred' rgb = '168, 42, 12' /> <color name = 'brightred' rgb = '200, 124, 104' /> <color name = 'xtrabrightred' rgb = '251, 241, 206' /> <color name = 'blandyellow' rgb = '247, 228, 166' /> <color name = 'bgreen' rgb = '96, 160, 8' /> <color name = 'blue' rgb = '0, 255, 255' /> <color name = 'black' rgb = '0, 0, 0' /> <color name = 'white' rgb = '255, 255, 255' /> <color name = 'shadowcolor' rgb = '63, 60, 17' /> </palette>  <fonts> <font	id = 'text_default' type = 'default' color = 'black' /> <font	id = 'text_hover' type = 'default' color = 'bgreen' /> <font	id = 'text_disabled' type = 'default' color = '128, 128, 128' /> <font	id = 'text_inverted' type = 'default' color = '0, 0, 0' /> <font	id = 'text_button' type = 'default' color = 'white' /> <font	id = 'text_button_hover' type = 'default' color = 'blandyellow' /> </fonts>  <defaults fill = 'gradient' fg_color = 'white' bevel_color = '237, 169, 72'/>  <drawdata id = 'text_selection' cache = false> <drawstep	func = 'square' fill = 'foreground' fg_color = 'bgreen' /> </drawdata>  <drawdata id = 'mainmenu_bg' cache = false> <drawstep	func = 'fill' fill = 'gradient' gradient_start = '208, 112, 8' gradient_end = '232, 192, 16' /> </drawdata>  <drawdata id = 'separator' cache = false> <drawstep	func = 'square' fill = 'foreground' height = '1' ypos = 'center' fg_color = 'black' /> </drawdata>  <drawdata id = 'scrollbar_base' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 6 fill = 'background' fg_color = '176, 164, 160' bg_color = '240, 228, 160' /> </drawdata>  <drawdata id = 'scrollbar_handle_hover' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 6 fill = 'gradient' fg_color = 'blandyellow' gradient_start = 'xtrabrightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'scrollbar_handle_idle' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 6 fill = 'gradient' fg_color = 'blandyellow' gradient_start = 'brightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'scrollbar_button_idle' cache = false> <drawstep	func = 'roundedsq' radius = '4' fill = 'none' fg_color = '176, 164, 160' stroke = 1 /> <drawstep	func = 'triangle' fg_color = '0, 0, 0' fill = 'foreground' width = 'auto' height = 'auto' xpos = 'center' ypos = 'center' orientation = 'top' /> </drawdata>  <drawdata id = 'scrollbar_button_hover' cache = false> <drawstep	func = 'roundedsq' radius = '4' fill = 'background' fg_color = '120, 120, 120' bg_color = '206, 121, 99' stroke = 1 /> <drawstep	func = 'triangle' fg_color = '0, 0, 0' fill = 'foreground' width = 'auto' height = 'auto' xpos = 'center' ypos = 'center' orientation = 'top' /> </drawdata>  <drawdata id = 'tab_active' cache = false> <text	font = 'text_default' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'tab' radius = '4' stroke = '0' fill = 'gradient' gradient_end = 'xtrabrightred' gradient_start = 'blandyellow' shadow = 3 /> </drawdata>  <drawdata id = 'tab_inactive' cache = false> <text	font = 'text_default' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'tab' radius = '4' stroke = '0' fill = 'foreground' fg_color = '240, 205, 118' shadow = 3 /> </drawdata>  <drawdata id = 'tab_background' cache = false> <drawstep	func = 'tab' radius = '8' stroke = '0' fill = 'foreground' fg_color = '232, 180, 81' shadow = 3 /> </drawdata>  <drawdata id = 'widget_slider' cache = false> <drawstep	func = 'roundedsq' stroke = 0 radius = 4 fill = 'foreground' fg_color = 'blandyellow' bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'slider_full' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 4 fill = 'gradient' fg_color = '123, 112, 56' gradient_start = 'brightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'slider_hover' cache = false> <drawstep	func = 'roundedsq' stroke = 1 radius = 4 fill = 'gradient' fg_color = '123, 112, 56' gradient_start = 'xtrabrightred' gradient_end = 'darkred' /> </drawdata>  <drawdata id = 'popup_idle' cache = false> <drawstep	func = 'roundedsq' stroke = 0 radius = 4 fill = 'foreground' fg_color = '250, 237, 190' shadow = 2 /> <drawstep	func = 'triangle' fg_color = '63, 60, 52' fill = 'foreground' width = 'height' height = 'auto' xpos = 'right' ypos = 'center' orientation = 'bottom' /> <text	font = 'text_default' vertical_align = 'center' horizontal_align = 'right' /> </drawdata>   <drawdata id = 'popup_hover' cache = false> <drawstep	func = 'roundedsq' stroke = 0 radius = 4 fill = 'gradient' gradient_start = 'blandyellow' gradient_end = '250, 237, 190' shadow = 0 /> <drawstep	func = 'triangle' fg_color = '63, 60, 52' fill = 'foreground' width = 'height' height = 'auto' xpos = 'right' ypos = 'center' orientation = 'bottom' /> <text	font = 'text_hover' vertical_align = 'center' horizontal_align = 'right' /> </drawdata>  <drawdata id = 'default_bg' cache = false> <drawstep	func = 'roundedsq' radius = 12 stroke = 0 fg_color = 'xtrabrightred' fill = 'foreground' shadow = 3 /> </drawdata>  <drawdata id = 'button_idle' cache = false> <text	font = 'text_button' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'roundedsq' radius = '6' stroke = 1 fill = 'gradient' shadow = 0 fg_color = 'shadowcolor' gradient_start = 'brightred' gradient_end = 'darkred' bevel = 1 /> </drawdata>  <drawdata id = 'button_hover' cache = false> <text	font = 'text_button_hover' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'roundedsq' radius = '6' gradient_factor = 1 stroke = 1 fill = 'gradient' shadow = 0 fg_color = 'shadowcolor' gradient_start = 'xtrabrightred' gradient_end = 'darkred' bevel_color = 'xtrabrightred' bevel = 1 /> </drawdata>  <drawdata id = 'button_disabled' cache = false> <text	font = 'text_disabled' vertical_align = 'center' horizontal_align = 'center' /> <drawstep	func = 'roundedsq' radius = '8' stroke = 0 fill = 'foreground' fg_color = '200, 200, 200' shadow = 3 /> </drawdata>  <drawdata id = 'checkbox_disabled' cache = false> <text	font = 'text_disabled' vertical_align = 'top' horizontal_align = 'left' /> <drawstep	func = 'roundedsq' fill = 'none' radius = 4 fg_color = 'black' shadow = 0 bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'checkbox_selected' cache = false> <text	font = 'text_default' vertical_align = 'top' horizontal_align = 'left' /> <drawstep	func = 'roundedsq' fill = 'gradient' radius = 4 fg_color = 'white' gradient_start = 'brightred' gradient_end = 'darkred' shadow = 0 bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'checkbox_default' cache = false> <text	font = 'text_default' vertical_align = 'top' horizontal_align = 'left' /> <drawstep	func = 'roundedsq' fill = 'foreground' radius = 4 fg_color = 'blandyellow' shadow = 0 bevel = 1 bevel_color = 'shadowcolor' /> </drawdata>  <drawdata id = 'widget_default' cache = false> <drawstep	func = 'roundedsq' gradient_factor = 6 radius = '8' fill = 'gradient' gradient_start = '240, 224, 136' gradient_end = 'xtrabrightred' shadow = 3 /> </drawdata> </render_info>  <layout_info> <globals> <def var = 'Widget.Size' value = '32' /> <def var = 'Line.Height' value = '16' /> <def var = 'Font.Height' value = '16' />  <def var = 'Padding.Bottom' value = '16' /> <def var = 'Padding.Left' value = '16' /> <def var = 'Padding.Right' value = '16' /> <def var = 'Padding.Top' value = '16' />  <widget name = 'Inset' pos = '23, 94' size = '666, 666' /> <widget name = 'Button' size = '120, 25' /> <widget name = 'Slider' size = '666, 666' /> <widget name = 'ListWidget' padding = '7, 5, 5, 5' /> <widget name = 'PopUpWidget' padding = '7, 5, 0, 0' /> <widget name = 'EditTextWidget' padding = '7, 5, 0, 0' /> <widget name = 'Console' padding = '7, 5, 5, 5' />  <widget name = 'TabWidget'> <child	name = 'Tab' size = '75, 27' padding = '0, 0, 8, 0' /> <child name = 'NavButton' size = '15, 18' padding = '0, 3, 4, 0' /> </widget> </globals>  <dialog name = 'Launcher' overlays = 'screen'> <layout type = 'vertical' center = 'true' padding = '23, 23, 8, 23'> <widget name = 'Version' width = '247' height = 'Globals.Line.Height' /> <widget name = 'Logo' width = '283' height = '80' /> <layout type = 'horizontal' direction = 'right2left' padding = '0, 0, 0, 0'> <layout type = 'vertical' padding = '16, 0, 0, 0'> <widget name = 'StartButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space size = '16' /> <widget name = 'AddGameButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'EditGameButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'RemoveGameButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space size = '16' /> <widget name = 'OptionsButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'AboutButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space size = '16' /> <widget name = 'QuitButton' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space/> </layout> <widget name = 'GameList'/> </layout> </layout> </dialog>  <dialog name = 'GlobalOptions' overlays = 'Dialog.Launcher.GameList'> <layout type = 'vertical' padding = '0, 0, 0, 0' direction = 'bottom2top'> <layout type = 'horizontal' direction = 'right2left' padding = '16, 16, 16, 16'> <widget name = 'Ok' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <widget name = 'Cancel' width = 'Globals.Button.Width' height = 'Globals.Button.Height' /> <space/> </layout> <widget name = 'TabWidget'/> </layout> </dialog>  <dialog name = 'GlobalOptions_Graphics' overlays = 'Dialog.GlobalOptions.TabWidget'> <layout type = 'vertical' padding = '16, 16, 16, 16'> <widget name = 'grModePopup' width = '512' height = '64' /> <widget name = 'grRenderPopup' width = '512' height = '64' /> <widget name = 'grAspectCheckbox' width = '256' height = '32' /> <widget name = 'grFullscreenCheckbox' width = '256' height = '32' /> </layout> </dialog> </layout_info> "

Modified: scummvm/branches/gsoc2008-gui/gui/themes/modern.stx
===================================================================
--- scummvm/branches/gsoc2008-gui/gui/themes/modern.stx	2008-08-05 22:02:24 UTC (rev 33650)
+++ scummvm/branches/gsoc2008-gui/gui/themes/modern.stx	2008-08-05 23:58:45 UTC (rev 33651)
@@ -464,7 +464,7 @@
 		</widget>
 	</globals>
 
-	<dialog name = 'Launcher'>
+	<dialog name = 'Launcher' overlays = 'screen'>
 		<layout type = 'vertical' center = 'true' padding = '23, 23, 8, 23'>
 			<widget name = 'Version'
 					width = '247'
@@ -513,4 +513,42 @@
 			</layout>
 		</layout>
 	</dialog>
+	
+	<dialog name = 'GlobalOptions' overlays = 'Dialog.Launcher.GameList'>
+		<layout type = 'vertical' padding = '0, 0, 0, 0' direction = 'bottom2top'>
+			<layout type = 'horizontal' direction = 'right2left' padding = '16, 16, 16, 16'>
+				<widget name = 'Ok'
+						width = 'Globals.Button.Width'
+						height = 'Globals.Button.Height'
+				/>
+				<widget name = 'Cancel'
+						width = 'Globals.Button.Width'
+						height = 'Globals.Button.Height'
+				/>
+				<space/>
+			</layout>
+			<widget name = 'TabWidget'/>
+		</layout>
+	</dialog>
+	
+	<dialog name = 'GlobalOptions_Graphics' overlays = 'Dialog.GlobalOptions.TabWidget'>
+		<layout type = 'vertical' padding = '16, 16, 16, 16'>
+			<widget name = 'grModePopup'
+					width = '512'
+					height = '64'
+			/>
+			<widget name = 'grRenderPopup'
+					width = '512'
+					height = '64'
+			/>
+			<widget name = 'grAspectCheckbox'
+					width = '256'
+					height = '32'
+			/>
+			<widget name = 'grFullscreenCheckbox'
+					width = '256'
+					height = '32'
+			/>
+		</layout>
+	</dialog>
 </layout_info>
\ No newline at end of file


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list