Changeset - r11934:17c3a38acbd0
[Not reviewed]
master
0 4 0
frosch - 15 years ago 2009-05-17 18:21:21
frosch@openttd.org
(svn r16342) -Feature(tte): Display base graphics description in game options window.
4 files changed with 67 insertions and 16 deletions:
0 comments (0 inline, 0 general)
src/gfxinit.cpp
Show inline comments
 
@@ -591,23 +591,47 @@ int GetNumGraphicsSets()
 
int GetIndexOfCurrentGraphicsSet()
 
{
 
	int n = 0;
 
	for (const GraphicsSet *g = _available_graphics_sets; g != NULL; g = g->next) {
 
		if (g == _used_graphics_set) return n;
 
		if (g->found_grfs <= 1) continue;
 
		n++;
 
	}
 
	return -1;
 
}
 

	
 
/**
 
 * Get the graphics set at the specified index
 
 */
 
static const GraphicsSet *GetGraphicsSetAtIndex(int index)
 
{
 
	for (const GraphicsSet *g = _available_graphics_sets; g != NULL; g = g->next) {
 
		if (g != _used_graphics_set && g->found_grfs <= 1) continue;
 
		if (index == 0) return g;
 
		index--;
 
	}
 
	error("GetGraphicsSetAtIndex: index %d out of range", index);
 
}
 

	
 
/**
 
 * Get the name of the graphics set at the specified index
 
 */
 
const char *GetGraphicsSetName(int index)
 
{
 
	for (const GraphicsSet *g = _available_graphics_sets; g != NULL; g = g->next) {
 
		if (g != _used_graphics_set && g->found_grfs <= 1) continue;
 
		if (index == 0) return g->name;
 
		index--;
 
	}
 
	error("GetGraphicsSetName: index %d out of range", index);
 
	return GetGraphicsSetAtIndex(index)->name;
 
}
 

	
 
/**
 
 * Get the description of the graphics set at the specified index
 
 */
 
const char *GetGraphicsSetDescription(int index)
 
{
 
	return GetGraphicsSetAtIndex(index)->description;
 
}
 

	
 
/**
 
 * Get the number of missing/corrupted files of the graphics set at the specified index
 
 */
 
int GetGraphicsSetNumMissingFiles(int index)
 
{
 
	return MAX_GFT - GetGraphicsSetAtIndex(index)->found_grfs;
 
}
src/gfxinit.h
Show inline comments
 
@@ -9,16 +9,18 @@
 

	
 
void CheckExternalFiles();
 
void GfxLoadSprites();
 
void LoadSpritesIndexed(int file_index, uint *sprite_id, const SpriteID *index_tbl);
 

	
 
void FindGraphicsSets();
 
bool SetGraphicsSet(const char *name);
 
char *GetGraphicsSetsList(char *p, const char *last);
 

	
 
int GetNumGraphicsSets();
 
int GetIndexOfCurrentGraphicsSet();
 
const char *GetGraphicsSetName(int index);
 
const char *GetGraphicsSetDescription(int index);
 
int GetGraphicsSetNumMissingFiles(int index);
 

	
 
extern char *_ini_graphics_set;
 

	
 
#endif /* GFXINIT_H */
src/lang/english.txt
Show inline comments
 
@@ -846,24 +846,26 @@ STR_FULLSCREEN_FAILED                   
 

	
 
STR_OPTIONS_RES                                                 :{BLACK}Screen resolution
 
STR_OPTIONS_RES_CBO                                             :{BLACK}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{STRING}
 
STR_OPTIONS_RES_TIP                                             :{BLACK}Select the screen resolution to use
 

	
 
STR_OPTIONS_SCREENSHOT_FORMAT                                   :{BLACK}Screenshot format
 
STR_OPTIONS_SCREENSHOT_FORMAT_CBO                               :{BLACK}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{STRING}
 
STR_OPTIONS_SCREENSHOT_FORMAT_TIP                               :{BLACK}Select the screenshot format to use
 

	
 
STR_OPTIONS_BASE_GRF                                            :{BLACK}Base graphics set
 
STR_OPTIONS_BASE_GRF_CBO                                        :{BLACK}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{SKIP}{RAW_STRING}
 
STR_OPTIONS_BASE_GRF_TIP                                        :{BLACK}Select the base graphics set to use
 
STR_OPTIONS_BASE_GRF_STATUS                                     :{RED}{10:NUM} missing/corrupted file{P "" s}
 
STR_OPTIONS_BASE_GRF_DESCRIPTION_TIP                            :{BLACK}Additional information about the base graphics set
 

	
 
STR_AUTOSAVE_FAILED                                             :{WHITE}Autosave failed
 

	
 
STR_MONTH_JAN                                                   :January
 
STR_MONTH_FEB                                                   :February
 
STR_MONTH_MAR                                                   :March
 
STR_MONTH_APR                                                   :April
 
STR_MONTH_MAY                                                   :May
 
STR_MONTH_JUN                                                   :June
 
STR_MONTH_JUL                                                   :July
 
STR_MONTH_AUG                                                   :August
 
STR_MONTH_SEP                                                   :September
src/settings_gui.cpp
Show inline comments
 
@@ -111,24 +111,26 @@ enum GameOptionsWidgets {
 
	GOW_AUTOSAVE_FRAME,      ///< Frame for autosave
 
	GOW_AUTOSAVE_DROPDOWN,   ///< Dropdown to say how often to autosave
 
	GOW_LANG_FRAME,          ///< Language dropdown frame
 
	GOW_LANG_DROPDOWN,       ///< Language dropdown
 
	GOW_RESOLUTION_FRAME,    ///< Frame for the dropdown for the resolution
 
	GOW_RESOLUTION_DROPDOWN, ///< Dropdown for the resolution
 
	GOW_FULLSCREEN_LABEL,    ///< Text (right) to the fullscreen button
 
	GOW_FULLSCREEN_BUTTON,   ///< Toggle fullscreen
 
	GOW_SCREENSHOT_FRAME,    ///< Frame for the screenshot type
 
	GOW_SCREENSHOT_DROPDOWN, ///< Select the screenshot type... please use PNG!
 
	GOW_BASE_GRF_FRAME,      ///< Base GRF selection frame
 
	GOW_BASE_GRF_DROPDOWN,   ///< Use to select a base GRF
 
	GOW_BASE_GRF_STATUS,     ///< Info about missing files etc.
 
	GOW_BASE_GRF_DESCRIPTION,///< Description of selected base GRF
 
};
 

	
 
/**
 
 * Update/redraw the townnames dropdown
 
 * @param w   the window the dropdown belongs to
 
 * @param sel the currently selected townname generator
 
 */
 
static void ShowTownnameDropdown(Window *w, int sel)
 
{
 
	typedef std::map<StringID, int, StringIDCompare> TownList;
 
	TownList townnames;
 

	
 
@@ -182,26 +184,40 @@ struct GameOptionsWindow : Window {
 
	{
 
		SetDParam(1, _currency_specs[this->opt->locale.currency].name);
 
		SetDParam(2, STR_UNITS_IMPERIAL + this->opt->locale.units);
 
		SetDParam(3, STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT + this->opt->vehicle.road_side);
 
		SetDParam(4, TownName(this->opt->game_creation.town_name));
 
		SetDParam(5, _autosave_dropdown[_settings_client.gui.autosave]);
 
		SetDParam(6, SPECSTR_LANGUAGE_START + _dynlang.curr);
 
		int i = GetCurRes();
 
		SetDParam(7, i == _num_resolutions ? STR_RES_OTHER : SPECSTR_RESOLUTION_START + i);
 
		SetDParam(8, SPECSTR_SCREENSHOT_START + _cur_screenshot_format);
 
		this->SetWidgetLoweredState(GOW_FULLSCREEN_BUTTON, _fullscreen);
 
		SetDParamStr(9, GetGraphicsSetName(GetIndexOfCurrentGraphicsSet()));
 
		int missing_files = GetGraphicsSetNumMissingFiles(GetIndexOfCurrentGraphicsSet());
 
		SetDParam(10, missing_files);
 
		SetWidgetHiddenState(GOW_BASE_GRF_STATUS, missing_files == 0);
 

	
 
		this->DrawWidgets();
 

	
 
		SetDParam(0, STR_JUST_RAW_STRING);
 
		SetDParamStr(1, GetGraphicsSetDescription(GetIndexOfCurrentGraphicsSet()));
 
		const Widget *desc = &this->widget[GOW_BASE_GRF_DESCRIPTION];
 
		int y = DrawStringMultiLine(desc->left, desc->right, desc->top, UINT16_MAX, STR_BLACK_STRING);
 

	
 
		if (y != desc->bottom) {
 
			this->SetDirty();
 
			ResizeWindowForWidget(this, GOW_BASE_GRF_DESCRIPTION, 0, y - desc->bottom);
 
			this->SetDirty();
 
		}
 
	}
 

	
 
	virtual void OnClick(Point pt, int widget)
 
	{
 
		switch (widget) {
 
			case GOW_CURRENCY_DROPDOWN: // Setup currencies dropdown
 
				ShowDropDownMenu(this, BuildCurrencyDropdown(), this->opt->locale.currency, GOW_CURRENCY_DROPDOWN, _game_mode == GM_MENU ? 0 : ~GetMaskOfAllowedCurrencies(), 0);
 
				break;
 

	
 
			case GOW_DISTANCE_DROPDOWN: // Setup distance unit dropdown
 
				ShowDropDownMenu(this, _units_dropdown, this->opt->locale.units, GOW_DISTANCE_DROPDOWN, 0, 0);
 
				break;
 
@@ -319,113 +335,120 @@ struct GameOptionsWindow : Window {
 
				this->SetDirty();
 
				break;
 

	
 
			case GOW_BASE_GRF_DROPDOWN:
 
				if (_game_mode == GM_MENU) {
 
					const char *name = GetGraphicsSetName(index);
 

	
 
					free(_ini_graphics_set);
 
					_ini_graphics_set = strdup(name);
 

	
 
					SetGraphicsSet(name);
 
					this->reload = true;
 
					this->SetDirty();
 
				}
 
				break;
 
		}
 
	}
 
};
 

	
 
static const Widget _game_options_widgets[] = {
 
{   WWT_CLOSEBOX,   RESIZE_NONE,  COLOUR_GREY,     0,    10,     0,    13, STR_BLACK_CROSS,                           STR_TOOLTIP_CLOSE_WINDOW},                          // GOW_CLOSEBOX
 
{    WWT_CAPTION,   RESIZE_NONE,  COLOUR_GREY,    11,   369,     0,    13, STR_GAME_OPTIONS_CAPTION,                  STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS},                // GOW_CAPTION
 
{      WWT_PANEL,   RESIZE_NONE,  COLOUR_GREY,     0,   369,    14,   242, 0x0,                                       STR_NULL},                                          // GOW_BACKGROUND
 
{      WWT_PANEL,   RESIZE_NONE,  COLOUR_GREY,     0,   369,    14,   248, 0x0,                                       STR_NULL},                                          // GOW_BACKGROUND
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,    20,    55, STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME,     STR_NULL},                                          // GOW_CURRENCY_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,    34,    45, STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN,  STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP},  // GOW_CURRENCY_DROPDOWN
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,    20,    55, STR_GAME_OPTIONS_MEASURING_UNITS_FRAME,    STR_NULL},                                          // GOW_DISTANCE_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,    34,    45, STR_GAME_OPTIONS_MEASURING_UNITS_DROPDOWN, STR_GAME_OPTIONS_MEASURING_UNITS_DROPDOWN_TOOLTIP}, // GOW_DISTANCE_DROPDOWN
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,    62,    97, STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME,      STR_NULL},                                          // GOW_ROADSIDE_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,    76,    87, STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN,   STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP},   // GOW_ROADSIDE_DROPDOWN
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,    62,    97, STR_GAME_OPTIONS_TOWN_NAMES_FRAME,         STR_NULL},                                          // GOW_TOWNNAME_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,    76,    87, STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN,      STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP},      // GOW_TOWNNAME_DROPDOWN
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,   104,   139, STR_GAME_OPTIONS_AUTOSAVE_FRAME,           STR_NULL},                                          // GOW_AUTOSAVE_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,   118,   129, STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN,        STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP},        // GOW_AUTOSAVE_DROPDOWN
 

	
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,   104,   139, STR_OPTIONS_LANG,                          STR_NULL},                                          // GOW_LANG_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,   118,   129, STR_OPTIONS_LANG_CBO,                      STR_OPTIONS_LANG_TIP},                              // GOW_LANG_DROPDOWN
 

	
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,   146,   190, STR_OPTIONS_RES,                           STR_NULL},                                          // GOW_RESOLUTION_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,   160,   171, STR_OPTIONS_RES_CBO,                       STR_OPTIONS_RES_TIP},                               // GOW_RESOLUTION_DROPDOWN
 
{       WWT_TEXT,   RESIZE_NONE,  COLOUR_GREY,    20,   146,   175,   186, STR_OPTIONS_FULLSCREEN,                    STR_NULL},                                          // GOW_FULLSCREEN_LABEL
 
{    WWT_TEXTBTN,   RESIZE_NONE,  COLOUR_GREY,   149,   169,   176,   184, STR_EMPTY,                                 STR_OPTIONS_FULLSCREEN_TIP},                        // GOW_FULLSCREEN_BUTTON
 

	
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,   190,   359,   146,   190, STR_OPTIONS_SCREENSHOT_FORMAT,             STR_NULL},                                          // GOW_SCREENSHOT_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,   200,   349,   160,   171, STR_OPTIONS_SCREENSHOT_FORMAT_CBO,         STR_OPTIONS_SCREENSHOT_FORMAT_TIP},                 // GOW_SCREENSHOT_DROPDOWN
 

	
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   179,   197,   232, STR_OPTIONS_BASE_GRF,                      STR_NULL},                                          // GOW_BASE_GRF_FRAME
 
{      WWT_FRAME,   RESIZE_NONE,  COLOUR_GREY,    10,   359,   197,   238, STR_OPTIONS_BASE_GRF,                      STR_NULL},                                          // GOW_BASE_GRF_FRAME
 
{   WWT_DROPDOWN,   RESIZE_NONE,  COLOUR_GREY,    20,   169,   211,   222, STR_OPTIONS_BASE_GRF_CBO,                  STR_OPTIONS_BASE_GRF_TIP},                          // GOW_BASE_GRF_DROPDOWN
 
{       WWT_TEXT,   RESIZE_NONE,  COLOUR_GREY,   200,   349,   211,   222, STR_OPTIONS_BASE_GRF_STATUS,               STR_NULL},                                          // GOW_BASE_GRF_STATUS
 
{       WWT_TEXT,   RESIZE_NONE,  COLOUR_GREY,    20,   349,   229,   228, STR_EMPTY,                                 STR_OPTIONS_BASE_GRF_DESCRIPTION_TIP},              // GOW_BASE_GRF_DESCRIPTION
 

	
 
{   WIDGETS_END},
 
};
 

	
 
static const NWidgetPart _nested_game_options_widgets[] = {
 
	NWidget(NWID_HORIZONTAL),
 
		NWidget(WWT_CLOSEBOX, COLOUR_GREY, GOW_CLOSEBOX),
 
		NWidget(WWT_CAPTION, COLOUR_GREY, GOW_CAPTION), SetDataTip(STR_GAME_OPTIONS_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
 
	EndContainer(),
 
	NWidget(WWT_PANEL, COLOUR_GREY, GOW_BACKGROUND),
 
	NWidget(WWT_PANEL, COLOUR_GREY, GOW_BACKGROUND), SetPIP(6, 6, 10),
 
		NWidget(NWID_HORIZONTAL), SetPIP(10, 10, 10),
 
			NWidget(NWID_VERTICAL), SetPIP(6, 6, 10),
 
			NWidget(NWID_VERTICAL), SetPIP(0, 6, 0),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_CURRENCY_FRAME), SetDataTip(STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_CURRENCY_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN, STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_ROADSIDE_FRAME), SetDataTip(STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_ROADSIDE_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN, STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_AUTOSAVE_FRAME), SetDataTip(STR_GAME_OPTIONS_AUTOSAVE_FRAME, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_AUTOSAVE_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN, STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_RESOLUTION_FRAME), SetDataTip(STR_OPTIONS_RES, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_RESOLUTION_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_OPTIONS_RES_CBO, STR_OPTIONS_RES_TIP), SetPadding(14, 10, 3, 10),
 
					NWidget(NWID_HORIZONTAL),
 
						NWidget(WWT_TEXT, COLOUR_GREY, GOW_FULLSCREEN_LABEL), SetMinimalSize(0, 12), SetFill(true, false), SetDataTip(STR_OPTIONS_FULLSCREEN, STR_NULL), SetPadding(0, 2, 4, 10),
 
						NWidget(WWT_TEXTBTN, COLOUR_GREY, GOW_FULLSCREEN_BUTTON), SetMinimalSize(21, 9), SetDataTip(STR_EMPTY, STR_OPTIONS_FULLSCREEN_TIP), SetPadding(0, 10, 4, 0),
 
					EndContainer(),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_BASE_GRF_FRAME), SetDataTip(STR_OPTIONS_BASE_GRF, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_BASE_GRF_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_OPTIONS_BASE_GRF_CBO, STR_OPTIONS_BASE_GRF_TIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
			EndContainer(),
 

	
 
			NWidget(NWID_VERTICAL), SetPIP(6, 6, 10),
 
			NWidget(NWID_VERTICAL), SetPIP(0, 6, 0),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_DISTANCE_FRAME), SetDataTip(STR_GAME_OPTIONS_MEASURING_UNITS_FRAME, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_DISTANCE_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_GAME_OPTIONS_MEASURING_UNITS_DROPDOWN, STR_GAME_OPTIONS_MEASURING_UNITS_DROPDOWN_TOOLTIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_TOWNNAME_FRAME), SetDataTip(STR_GAME_OPTIONS_TOWN_NAMES_FRAME, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_TOWNNAME_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN, STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_LANG_FRAME), SetDataTip(STR_OPTIONS_LANG, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_LANG_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_OPTIONS_LANG_CBO, STR_OPTIONS_LANG_TIP), SetPadding(14, 10, 10, 10),
 
				EndContainer(),
 
				NWidget(WWT_FRAME, COLOUR_GREY, GOW_SCREENSHOT_FRAME), SetDataTip(STR_OPTIONS_SCREENSHOT_FORMAT, STR_NULL),
 
					NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_SCREENSHOT_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_OPTIONS_SCREENSHOT_FORMAT_CBO, STR_OPTIONS_SCREENSHOT_FORMAT_TIP), SetPadding(14, 10, 10, 10),
 
					NWidget(NWID_SPACER), SetMinimalSize(0, 9),
 
				EndContainer(),
 
				NWidget(NWID_SPACER), SetFill(false, true),
 
			EndContainer(),
 
		EndContainer(),
 

	
 
		NWidget(WWT_FRAME, COLOUR_GREY, GOW_BASE_GRF_FRAME), SetDataTip(STR_OPTIONS_BASE_GRF, STR_NULL),
 
			NWidget(NWID_HORIZONTAL), SetPIP(10, 30, 10),
 
				NWidget(WWT_DROPDOWN, COLOUR_GREY, GOW_BASE_GRF_DROPDOWN), SetMinimalSize(150, 12), SetDataTip(STR_OPTIONS_BASE_GRF_CBO, STR_OPTIONS_BASE_GRF_TIP), SetPadding(14, 0, 0, 0),
 
				NWidget(WWT_TEXT, COLOUR_GREY, GOW_BASE_GRF_STATUS), SetMinimalSize(150, 12), SetDataTip(STR_OPTIONS_BASE_GRF_STATUS, STR_NULL), SetPadding(14, 0, 0, 0),
 
			EndContainer(),
 
			NWidget(WWT_TEXT, COLOUR_GREY, GOW_BASE_GRF_DESCRIPTION), SetMinimalSize(330, 0), SetDataTip(STR_EMPTY, STR_OPTIONS_BASE_GRF_DESCRIPTION_TIP), SetPadding(6, 10, 10, 10),
 
		EndContainer(),
 
	EndContainer(),
 
};
 

	
 
static const WindowDesc _game_options_desc(
 
	WDP_CENTER, WDP_CENTER, 370, 243, 370, 243,
 
	WDP_CENTER, WDP_CENTER, 370, 249, 370, 249,
 
	WC_GAME_OPTIONS, WC_NONE,
 
	WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_UNCLICK_BUTTONS,
 
	_game_options_widgets, _nested_game_options_widgets, lengthof(_nested_game_options_widgets)
 
);
 

	
 

	
 
void ShowGameOptions()
 
{
 
	DeleteWindowById(WC_GAME_OPTIONS, 0);
 
	new GameOptionsWindow(&_game_options_desc);
 
}
 

	
0 comments (0 inline, 0 general)