Changeset - r16805:2f9f83e11152
[Not reviewed]
master
0 1 0
alberth - 14 years ago 2010-12-20 19:19:23
alberth@openttd.org
(svn r21548) -Codechange: Code style, multi line statements should indent two tabs.
1 file changed with 27 insertions and 27 deletions:
0 comments (0 inline, 0 general)
src/road_gui.cpp
Show inline comments
 
@@ -444,45 +444,45 @@ static OnButtonClick * const _build_road
 
	BuildRoadClick_TruckStation,
 
	BuildRoadClick_OneWay,
 
	BuildRoadClick_Bridge,
 
	BuildRoadClick_Tunnel,
 
	BuildRoadClick_Remove
 
};
 

	
 
struct BuildRoadToolbarWindow : Window {
 
	BuildRoadToolbarWindow(const WindowDesc *desc, WindowNumber window_number) : Window()
 
	{
 
		this->InitNested(desc, window_number);
 
		this->SetWidgetsDisabledState(true,
 
			RTW_REMOVE,
 
			RTW_ONE_WAY,
 
			WIDGET_LIST_END);
 
				RTW_REMOVE,
 
				RTW_ONE_WAY,
 
				WIDGET_LIST_END);
 

	
 
		this->OnInvalidateData();
 

	
 
		if (_settings_client.gui.link_terraform_toolbar) ShowTerraformToolbar(this);
 
	}
 

	
 
	~BuildRoadToolbarWindow()
 
	{
 
		if (_settings_client.gui.link_terraform_toolbar) DeleteWindowById(WC_SCEN_LAND_GEN, 0, false);
 
	}
 

	
 
	void OnInvalidateData(int data = 0)
 
	{
 
		this->SetWidgetsDisabledState(!CanBuildVehicleInfrastructure(VEH_ROAD),
 
			RTW_DEPOT,
 
			RTW_BUS_STATION,
 
			RTW_TRUCK_STATION,
 
			WIDGET_LIST_END);
 
				RTW_DEPOT,
 
				RTW_BUS_STATION,
 
				RTW_TRUCK_STATION,
 
				WIDGET_LIST_END);
 
	}
 

	
 
	/**
 
	 * Update the remove button lowered state of the road toolbar
 
	 *
 
	 * @param clicked_widget The widget which the client clicked just now
 
	 */
 
	void UpdateOptionWidgetStatus(RoadToolbarWidgets clicked_widget)
 
	{
 
		/* The remove and the one way button state is driven
 
		 * by the other buttons so they don't act on themselfs.
 
		 * Both are only valid if they are able to apply as options. */
 
@@ -498,40 +498,40 @@ struct BuildRoadToolbarWindow : Window {
 
				break;
 

	
 
			case RTW_BUS_STATION:
 
			case RTW_TRUCK_STATION:
 
				this->DisableWidget(RTW_ONE_WAY);
 
				this->SetWidgetDisabledState(RTW_REMOVE, !this->IsWidgetLowered(clicked_widget));
 
				break;
 

	
 
			case RTW_ROAD_X:
 
			case RTW_ROAD_Y:
 
			case RTW_AUTOROAD:
 
				this->SetWidgetsDisabledState(!this->IsWidgetLowered(clicked_widget),
 
					RTW_REMOVE,
 
					RTW_ONE_WAY,
 
					WIDGET_LIST_END);
 
						RTW_REMOVE,
 
						RTW_ONE_WAY,
 
						WIDGET_LIST_END);
 
				break;
 

	
 
			default:
 
				/* When any other buttons than road/station, raise and
 
				 * disable the removal button */
 
				this->SetWidgetsDisabledState(true,
 
					RTW_REMOVE,
 
					RTW_ONE_WAY,
 
					WIDGET_LIST_END);
 
						RTW_REMOVE,
 
						RTW_ONE_WAY,
 
						WIDGET_LIST_END);
 
				this->SetWidgetsLoweredState(false,
 
					RTW_REMOVE,
 
					RTW_ONE_WAY,
 
					WIDGET_LIST_END);
 
						RTW_REMOVE,
 
						RTW_ONE_WAY,
 
						WIDGET_LIST_END);
 
				break;
 
		}
 
	}
 

	
 
	virtual void OnClick(Point pt, int widget, int click_count)
 
	{
 
		if (widget >= RTW_ROAD_X) {
 
			_remove_button_clicked = false;
 
			_one_way_button_clicked = false;
 
			_build_road_button_proc[widget - RTW_ROAD_X](this);
 
		}
 
		this->UpdateOptionWidgetStatus((RoadToolbarWidgets)widget);
 
@@ -549,27 +549,27 @@ struct BuildRoadToolbarWindow : Window {
 

	
 
	virtual void OnPlaceObject(Point pt, TileIndex tile)
 
	{
 
		_remove_button_clicked = this->IsWidgetLowered(RTW_REMOVE);
 
		_one_way_button_clicked = this->IsWidgetLowered(RTW_ONE_WAY);
 
		_place_proc(tile);
 
	}
 

	
 
	virtual void OnPlaceObjectAbort()
 
	{
 
		this->RaiseButtons();
 
		this->SetWidgetsDisabledState(true,
 
			RTW_REMOVE,
 
			RTW_ONE_WAY,
 
			WIDGET_LIST_END);
 
				RTW_REMOVE,
 
				RTW_ONE_WAY,
 
				WIDGET_LIST_END);
 
		this->SetWidgetDirty(RTW_REMOVE);
 
		this->SetWidgetDirty(RTW_ONE_WAY);
 

	
 
		DeleteWindowById(WC_BUS_STATION, TRANSPORT_ROAD);
 
		DeleteWindowById(WC_TRUCK_STATION, TRANSPORT_ROAD);
 
		DeleteWindowById(WC_BUILD_DEPOT, TRANSPORT_ROAD);
 
		DeleteWindowById(WC_SELECT_STATION, 0);
 
		DeleteWindowByClass(WC_BUILD_BRIDGE);
 
	}
 

	
 
	virtual void OnPlaceDrag(ViewportPlaceMethod select_method, ViewportDragDropSelectionProcess select_proc, Point pt)
 
	{
 
@@ -629,27 +629,27 @@ struct BuildRoadToolbarWindow : Window {
 
					break;
 

	
 
				case DDSP_PLACE_ROAD_X_DIR:
 
				case DDSP_PLACE_ROAD_Y_DIR:
 
				case DDSP_PLACE_AUTOROAD:
 
					/* Flag description:
 
					 * Use the first three bits (0x07) if dir == Y
 
					 * else use the last 2 bits (X dir has
 
					 * not the 3rd bit set) */
 
					_place_road_flag = (RoadFlags)((_place_road_flag & RF_DIR_Y) ? (_place_road_flag & 0x07) : (_place_road_flag >> 3));
 

	
 
					DoCommandP(start_tile, end_tile, _place_road_flag | (_cur_roadtype << 3) | (_one_way_button_clicked << 5),
 
						_remove_button_clicked ?
 
						CMD_REMOVE_LONG_ROAD | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_road) :
 
						CMD_BUILD_LONG_ROAD | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_road), CcPlaySound1D);
 
							_remove_button_clicked ?
 
							CMD_REMOVE_LONG_ROAD | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_road) :
 
							CMD_BUILD_LONG_ROAD | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_road), CcPlaySound1D);
 
					break;
 

	
 
				case DDSP_BUILD_BUSSTOP:
 
					PlaceRoadStop(start_tile, end_tile, (_ctrl_pressed << 5) | RoadTypeToRoadTypes(_cur_roadtype) << 2 | ROADSTOP_BUS, CMD_BUILD_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_station[ROADSTOP_BUS]));
 
					break;
 

	
 
				case DDSP_BUILD_TRUCKSTOP:
 
					PlaceRoadStop(start_tile, end_tile, (_ctrl_pressed << 5) | RoadTypeToRoadTypes(_cur_roadtype) << 2 | ROADSTOP_TRUCK, CMD_BUILD_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_station[ROADSTOP_TRUCK]));
 
					break;
 

	
 
				case DDSP_REMOVE_BUSSTOP: {
 
					TileArea ta(start_tile, end_tile);
 
@@ -960,29 +960,29 @@ enum BuildRoadStationWidgets {
 
};
 

	
 
struct BuildRoadStationWindow : public PickerWindowBase {
 
	BuildRoadStationWindow(const WindowDesc *desc, Window *parent, RoadStopType rs) : PickerWindowBase(parent)
 
	{
 
		this->CreateNestedTree(desc);
 

	
 
		/* Trams don't have non-drivethrough stations */
 
		if (_cur_roadtype == ROADTYPE_TRAM && _road_station_picker_orientation < DIAGDIR_END) {
 
			_road_station_picker_orientation = DIAGDIR_END;
 
		}
 
		this->SetWidgetsDisabledState(_cur_roadtype == ROADTYPE_TRAM,
 
			BRSW_STATION_NE,
 
			BRSW_STATION_SE,
 
			BRSW_STATION_SW,
 
			BRSW_STATION_NW,
 
			WIDGET_LIST_END);
 
				BRSW_STATION_NE,
 
				BRSW_STATION_SE,
 
				BRSW_STATION_SW,
 
				BRSW_STATION_NW,
 
				WIDGET_LIST_END);
 

	
 
		this->GetWidget<NWidgetCore>(BRSW_CAPTION)->widget_data = _road_type_infos[_cur_roadtype].picker_title[rs];
 
		for (uint i = BRSW_STATION_NE; i < BRSW_LT_OFF; i++) this->GetWidget<NWidgetCore>(i)->tool_tip = _road_type_infos[_cur_roadtype].picker_tooltip[rs];
 

	
 
		this->LowerWidget(_road_station_picker_orientation + BRSW_STATION_NE);
 
		this->LowerWidget(_settings_client.gui.station_show_coverage + BRSW_LT_OFF);
 

	
 
		this->FinishInitNested(desc, TRANSPORT_ROAD);
 

	
 
		this->window_class = (rs == ROADSTOP_BUS) ? WC_BUS_STATION : WC_TRUCK_STATION;
 
	}
 

	
0 comments (0 inline, 0 general)