dock_gui.c
changeset 4634 897461a3e9ca
parent 4539 0b13858554fb
child 4719 413b21513ef7
equal deleted inserted replaced
4633:fae5d85ef53d 4634:897461a3e9ca
   119 	case WE_PAINT:
   119 	case WE_PAINT:
   120 		DrawWindowWidgets(w);
   120 		DrawWindowWidgets(w);
   121 		break;
   121 		break;
   122 
   122 
   123 	case WE_CLICK:
   123 	case WE_CLICK:
   124 		if (e->click.widget - 3 >= 0 && e->click.widget != 5) _build_docks_button_proc[e->click.widget - 3](w);
   124 		if (e->we.click.widget - 3 >= 0 && e->we.click.widget != 5) _build_docks_button_proc[e->we.click.widget - 3](w);
   125 		break;
   125 		break;
   126 
   126 
   127 	case WE_KEYPRESS:
   127 	case WE_KEYPRESS:
   128 		switch (e->keypress.keycode) {
   128 		switch (e->we.keypress.keycode) {
   129 			case '1': BuildDocksClick_Canal(w); break;
   129 			case '1': BuildDocksClick_Canal(w); break;
   130 			case '2': BuildDocksClick_Lock(w); break;
   130 			case '2': BuildDocksClick_Lock(w); break;
   131 			case '3': BuildDocksClick_Demolish(w); break;
   131 			case '3': BuildDocksClick_Demolish(w); break;
   132 			case '4': BuildDocksClick_Depot(w); break;
   132 			case '4': BuildDocksClick_Depot(w); break;
   133 			case '5': BuildDocksClick_Dock(w); break;
   133 			case '5': BuildDocksClick_Dock(w); break;
   136 			default:  return;
   136 			default:  return;
   137 		}
   137 		}
   138 		break;
   138 		break;
   139 
   139 
   140 	case WE_PLACE_OBJ:
   140 	case WE_PLACE_OBJ:
   141 		_place_proc(e->place.tile);
   141 		_place_proc(e->we.place.tile);
   142 		break;
   142 		break;
   143 
   143 
   144 	case WE_PLACE_DRAG: {
   144 	case WE_PLACE_DRAG: {
   145 		VpSelectTilesWithMethod(e->place.pt.x, e->place.pt.y, e->place.userdata);
   145 		VpSelectTilesWithMethod(e->we.place.pt.x, e->we.place.pt.y, e->we.place.userdata);
   146 		return;
   146 		return;
   147 	}
   147 	}
   148 
   148 
   149 	case WE_PLACE_MOUSEUP:
   149 	case WE_PLACE_MOUSEUP:
   150 		if (e->click.pt.x != -1) {
   150 		if (e->we.click.pt.x != -1) {
   151 			if ((e->place.userdata & 0xF) == VPM_X_AND_Y) { // dragged actions
   151 			if ((e->we.place.userdata & 0xF) == VPM_X_AND_Y) { // dragged actions
   152 				GUIPlaceProcDragXY(e);
   152 				GUIPlaceProcDragXY(e);
   153 			} else if (e->place.userdata == VPM_X_OR_Y) {
   153 			} else if (e->we.place.userdata == VPM_X_OR_Y) {
   154 				DoCommandP(e->place.tile, e->place.starttile, _ctrl_pressed, CcBuildCanal, CMD_BUILD_CANAL | CMD_AUTO | CMD_MSG(STR_CANT_BUILD_CANALS));
   154 				DoCommandP(e->we.place.tile, e->we.place.starttile, _ctrl_pressed, CcBuildCanal, CMD_BUILD_CANAL | CMD_AUTO | CMD_MSG(STR_CANT_BUILD_CANALS));
   155 			}
   155 			}
   156 		}
   156 		}
   157 		break;
   157 		break;
   158 
   158 
   159 	case WE_ABORT_PLACE_OBJ:
   159 	case WE_ABORT_PLACE_OBJ:
   169 
   169 
   170 	case WE_PLACE_PRESIZE: {
   170 	case WE_PLACE_PRESIZE: {
   171 		TileIndex tile_from;
   171 		TileIndex tile_from;
   172 		TileIndex tile_to;
   172 		TileIndex tile_to;
   173 
   173 
   174 		tile_from = tile_to = e->place.tile;
   174 		tile_from = tile_to = e->we.place.tile;
   175 		switch (GetTileSlope(tile_from, NULL)) {
   175 		switch (GetTileSlope(tile_from, NULL)) {
   176 			case SLOPE_SW: tile_to += TileDiffXY(-1,  0); break;
   176 			case SLOPE_SW: tile_to += TileDiffXY(-1,  0); break;
   177 			case SLOPE_SE: tile_to += TileDiffXY( 0, -1); break;
   177 			case SLOPE_SE: tile_to += TileDiffXY( 0, -1); break;
   178 			case SLOPE_NW: tile_to += TileDiffXY( 0,  1); break;
   178 			case SLOPE_NW: tile_to += TileDiffXY( 0,  1); break;
   179 			case SLOPE_NE: tile_to += TileDiffXY( 1,  0); break;
   179 			case SLOPE_NE: tile_to += TileDiffXY( 1,  0); break;
   238 		DrawStationCoverageAreaText(4, 50, (uint)-1, rad);
   238 		DrawStationCoverageAreaText(4, 50, (uint)-1, rad);
   239 		break;
   239 		break;
   240 	}
   240 	}
   241 
   241 
   242 	case WE_CLICK:
   242 	case WE_CLICK:
   243 		switch (e->click.widget) {
   243 		switch (e->we.click.widget) {
   244 			case 3:
   244 			case 3:
   245 			case 4:
   245 			case 4:
   246 				_station_show_coverage = e->click.widget - 3;
   246 				_station_show_coverage = e->we.click.widget - 3;
   247 				SndPlayFx(SND_15_BEEP);
   247 				SndPlayFx(SND_15_BEEP);
   248 				SetWindowDirty(w);
   248 				SetWindowDirty(w);
   249 				break;
   249 				break;
   250 		}
   250 		}
   251 		break;
   251 		break;
   309 		DrawShipDepotSprite(135, 35, 2);
   309 		DrawShipDepotSprite(135, 35, 2);
   310 		DrawShipDepotSprite(167, 51, 3);
   310 		DrawShipDepotSprite(167, 51, 3);
   311 		return;
   311 		return;
   312 
   312 
   313 	case WE_CLICK: {
   313 	case WE_CLICK: {
   314 		switch (e->click.widget) {
   314 		switch (e->we.click.widget) {
   315 		case 3:
   315 		case 3:
   316 		case 4:
   316 		case 4:
   317 			_ship_depot_direction = e->click.widget - 3;
   317 			_ship_depot_direction = e->we.click.widget - 3;
   318 			SndPlayFx(SND_15_BEEP);
   318 			SndPlayFx(SND_15_BEEP);
   319 			UpdateDocksDirection();
   319 			UpdateDocksDirection();
   320 			SetWindowDirty(w);
   320 			SetWindowDirty(w);
   321 			break;
   321 			break;
   322 		}
   322 		}