src/genworld_gui.cpp
branchcpp_gui
changeset 6251 cd413fa2e252
parent 6249 abafebc2fbce
child 6258 a2f86b8fd99b
equal deleted inserted replaced
6250:5135b200b376 6251:cd413fa2e252
   221 	glwp_modes mode = (glwp_modes)w->window_number;
   221 	glwp_modes mode = (glwp_modes)w->window_number;
   222 	uint y;
   222 	uint y;
   223 
   223 
   224 	switch (e->event) {
   224 	switch (e->event) {
   225 	case WE_CREATE:
   225 	case WE_CREATE:
   226 		LowerWindowWidget(w, _opt_newgame.landscape + GLAND_TEMPERATE);
   226 		w->LowerWidget(_opt_newgame.landscape + GLAND_TEMPERATE);
   227 
   227 
   228 		snprintf(_genseed_buffer, sizeof(_genseed_buffer), "%u", _patches_newgame.generation_seed);
   228 		snprintf(_genseed_buffer, sizeof(_genseed_buffer), "%u", _patches_newgame.generation_seed);
   229 		InitializeTextBuffer(&_genseed_query.text, _genseed_buffer, lengthof(_genseed_buffer), 120);
   229 		InitializeTextBuffer(&_genseed_query.text, _genseed_buffer, lengthof(_genseed_buffer), 120);
   230 		_genseed_query.caption = STR_NULL;
   230 		_genseed_query.caption = STR_NULL;
   231 		_genseed_query.afilter = CS_NUMERAL;
   231 		_genseed_query.afilter = CS_NUMERAL;
   250 		w->SetWidgetDisabledState(GLAND_START_DATE_DOWN, _patches_newgame.starting_year <= MIN_YEAR);
   250 		w->SetWidgetDisabledState(GLAND_START_DATE_DOWN, _patches_newgame.starting_year <= MIN_YEAR);
   251 		w->SetWidgetDisabledState(GLAND_START_DATE_UP,   _patches_newgame.starting_year >= MAX_YEAR);
   251 		w->SetWidgetDisabledState(GLAND_START_DATE_UP,   _patches_newgame.starting_year >= MAX_YEAR);
   252 		w->SetWidgetDisabledState(GLAND_SNOW_LEVEL_DOWN, _patches_newgame.snow_line_height <= 2 || _opt_newgame.landscape != LT_HILLY);
   252 		w->SetWidgetDisabledState(GLAND_SNOW_LEVEL_DOWN, _patches_newgame.snow_line_height <= 2 || _opt_newgame.landscape != LT_HILLY);
   253 		w->SetWidgetDisabledState(GLAND_SNOW_LEVEL_UP,   _patches_newgame.snow_line_height >= 13 || _opt_newgame.landscape != LT_HILLY);
   253 		w->SetWidgetDisabledState(GLAND_SNOW_LEVEL_UP,   _patches_newgame.snow_line_height >= 13 || _opt_newgame.landscape != LT_HILLY);
   254 
   254 
   255 		SetWindowWidgetLoweredState(w, GLAND_TEMPERATE, _opt_newgame.landscape == LT_NORMAL);
   255 		w->SetWidgetLoweredState(GLAND_TEMPERATE, _opt_newgame.landscape == LT_NORMAL);
   256 		SetWindowWidgetLoweredState(w, GLAND_ARCTIC,    _opt_newgame.landscape == LT_HILLY);
   256 		w->SetWidgetLoweredState(GLAND_ARCTIC,    _opt_newgame.landscape == LT_HILLY);
   257 		SetWindowWidgetLoweredState(w, GLAND_TROPICAL,  _opt_newgame.landscape == LT_DESERT);
   257 		w->SetWidgetLoweredState(GLAND_TROPICAL,  _opt_newgame.landscape == LT_DESERT);
   258 		SetWindowWidgetLoweredState(w, GLAND_TOYLAND,   _opt_newgame.landscape == LT_CANDY);
   258 		w->SetWidgetLoweredState(GLAND_TOYLAND,   _opt_newgame.landscape == LT_CANDY);
   259 		w->DrawWidgets();
   259 		w->DrawWidgets();
   260 
   260 
   261 		y = (mode == GLWP_HEIGHTMAP) ? 22 : 0;
   261 		y = (mode == GLWP_HEIGHTMAP) ? 22 : 0;
   262 
   262 
   263 		DrawString( 12,  91 + y, STR_MAPSIZE, 0);
   263 		DrawString( 12,  91 + y, STR_MAPSIZE, 0);
   328 		break;
   328 		break;
   329 	case WE_CLICK:
   329 	case WE_CLICK:
   330 		switch (e->we.click.widget) {
   330 		switch (e->we.click.widget) {
   331 		case 0: w->Close(); break;
   331 		case 0: w->Close(); break;
   332 		case GLAND_TEMPERATE: case GLAND_ARCTIC: case GLAND_TROPICAL: case GLAND_TOYLAND:
   332 		case GLAND_TEMPERATE: case GLAND_ARCTIC: case GLAND_TROPICAL: case GLAND_TOYLAND:
   333 			RaiseWindowWidget(w, _opt_newgame.landscape + GLAND_TEMPERATE);
   333 			w->RaiseWidget(_opt_newgame.landscape + GLAND_TEMPERATE);
   334 			SetNewLandscapeType(e->we.click.widget - GLAND_TEMPERATE);
   334 			SetNewLandscapeType(e->we.click.widget - GLAND_TEMPERATE);
   335 			break;
   335 			break;
   336 		case GLAND_MAPSIZE_X_TEXT: case GLAND_MAPSIZE_X_PULLDOWN: // Mapsize X
   336 		case GLAND_MAPSIZE_X_TEXT: case GLAND_MAPSIZE_X_PULLDOWN: // Mapsize X
   337 			w->ShowDropDownMenu(mapsizes, _patches_newgame.map_x - 6, GLAND_MAPSIZE_X_PULLDOWN, 0, 0);
   337 			w->ShowDropDownMenu(mapsizes, _patches_newgame.map_x - 6, GLAND_MAPSIZE_X_PULLDOWN, 0, 0);
   338 			break;
   338 			break;
   577 static void CreateScenarioWndProc(Window *w, WindowEvent *e)
   577 static void CreateScenarioWndProc(Window *w, WindowEvent *e)
   578 {
   578 {
   579 	static const StringID mapsizes[] = {STR_64, STR_128, STR_256, STR_512, STR_1024, STR_2048, INVALID_STRING_ID};
   579 	static const StringID mapsizes[] = {STR_64, STR_128, STR_256, STR_512, STR_1024, STR_2048, INVALID_STRING_ID};
   580 
   580 
   581 	switch (e->event) {
   581 	switch (e->event) {
   582 	case WE_CREATE: LowerWindowWidget(w, _opt_newgame.landscape + CSCEN_TEMPERATE); break;
   582 	case WE_CREATE: w->LowerWidget(_opt_newgame.landscape + CSCEN_TEMPERATE); break;
   583 
   583 
   584 	case WE_PAINT:
   584 	case WE_PAINT:
   585 		w->SetWidgetDisabledState(CSCEN_START_DATE_DOWN,       _patches_newgame.starting_year <= MIN_YEAR);
   585 		w->SetWidgetDisabledState(CSCEN_START_DATE_DOWN,       _patches_newgame.starting_year <= MIN_YEAR);
   586 		w->SetWidgetDisabledState(CSCEN_START_DATE_UP,         _patches_newgame.starting_year >= MAX_YEAR);
   586 		w->SetWidgetDisabledState(CSCEN_START_DATE_UP,         _patches_newgame.starting_year >= MAX_YEAR);
   587 		w->SetWidgetDisabledState(CSCEN_FLAT_LAND_HEIGHT_DOWN, _patches_newgame.se_flat_world_height <= 0);
   587 		w->SetWidgetDisabledState(CSCEN_FLAT_LAND_HEIGHT_DOWN, _patches_newgame.se_flat_world_height <= 0);
   588 		w->SetWidgetDisabledState(CSCEN_FLAT_LAND_HEIGHT_UP,   _patches_newgame.se_flat_world_height >= 15);
   588 		w->SetWidgetDisabledState(CSCEN_FLAT_LAND_HEIGHT_UP,   _patches_newgame.se_flat_world_height >= 15);
   589 
   589 
   590 		SetWindowWidgetLoweredState(w, CSCEN_TEMPERATE, _opt_newgame.landscape == LT_NORMAL);
   590 		w->SetWidgetLoweredState(CSCEN_TEMPERATE, _opt_newgame.landscape == LT_NORMAL);
   591 		SetWindowWidgetLoweredState(w, CSCEN_ARCTIC,    _opt_newgame.landscape == LT_HILLY);
   591 		w->SetWidgetLoweredState(CSCEN_ARCTIC,    _opt_newgame.landscape == LT_HILLY);
   592 		SetWindowWidgetLoweredState(w, CSCEN_TROPICAL,  _opt_newgame.landscape == LT_DESERT);
   592 		w->SetWidgetLoweredState(CSCEN_TROPICAL,  _opt_newgame.landscape == LT_DESERT);
   593 		SetWindowWidgetLoweredState(w, CSCEN_TOYLAND,   _opt_newgame.landscape == LT_CANDY);
   593 		w->SetWidgetLoweredState(CSCEN_TOYLAND,   _opt_newgame.landscape == LT_CANDY);
   594 		w->DrawWidgets();
   594 		w->DrawWidgets();
   595 
   595 
   596 		DrawStringRightAligned(211, 97, STR_MAPSIZE, 0);
   596 		DrawStringRightAligned(211, 97, STR_MAPSIZE, 0);
   597 		DrawString(            221, 97, mapsizes[_patches_newgame.map_x - 6], 0x10);
   597 		DrawString(            221, 97, mapsizes[_patches_newgame.map_x - 6], 0x10);
   598 		DrawStringCentered(    272, 97, STR_BY, 0);
   598 		DrawStringCentered(    272, 97, STR_BY, 0);
   608 
   608 
   609 		break;
   609 		break;
   610 	case WE_CLICK:
   610 	case WE_CLICK:
   611 		switch (e->we.click.widget) {
   611 		switch (e->we.click.widget) {
   612 		case CSCEN_TEMPERATE: case CSCEN_ARCTIC: case CSCEN_TROPICAL: case CSCEN_TOYLAND:
   612 		case CSCEN_TEMPERATE: case CSCEN_ARCTIC: case CSCEN_TROPICAL: case CSCEN_TOYLAND:
   613 			RaiseWindowWidget(w, _opt_newgame.landscape + CSCEN_TEMPERATE);
   613 			w->RaiseWidget(_opt_newgame.landscape + CSCEN_TEMPERATE);
   614 			SetNewLandscapeType(e->we.click.widget - CSCEN_TEMPERATE);
   614 			SetNewLandscapeType(e->we.click.widget - CSCEN_TEMPERATE);
   615 			break;
   615 			break;
   616 		case CSCEN_MAPSIZE_X_TEXT: case CSCEN_MAPSIZE_X_PULLDOWN: // Mapsize X
   616 		case CSCEN_MAPSIZE_X_TEXT: case CSCEN_MAPSIZE_X_PULLDOWN: // Mapsize X
   617 			w->ShowDropDownMenu(mapsizes, _patches_newgame.map_x - 6, CSCEN_MAPSIZE_X_PULLDOWN, 0, 0);
   617 			w->ShowDropDownMenu(mapsizes, _patches_newgame.map_x - 6, CSCEN_MAPSIZE_X_PULLDOWN, 0, 0);
   618 			break;
   618 			break;