diff -r c85adae9a336 src/settings_type.h --- a/src/settings_type.h Sat Jul 30 01:01:06 2011 +0200 +++ b/src/settings_type.h Sat Jul 30 01:45:20 2011 +0200 @@ -110,6 +110,7 @@ bool station_show_coverage; ///< whether to highlight coverage area bool persistent_buildingtools; ///< keep the building tools active after usage bool expenses_layout; ///< layout of expenses window + bool show_only_own_signs; ///< hide signs (including signs of stations) that are not owned by local company uint16 console_backlog_timeout; ///< the minimum amount of time items should be in the console backlog before they will be removed in ~3 seconds granularity. uint16 console_backlog_length; ///< the minimum amount of items in the console backlog before items will be removed. diff -r c85adae9a336 src/table/settings.ini --- a/src/table/settings.ini Sat Jul 30 01:01:06 2011 +0200 +++ b/src/table/settings.ini Sat Jul 30 01:45:20 2011 +0200 @@ -2353,6 +2353,11 @@ str = STR_CONFIG_SETTING_EXPENSES_LAYOUT proc = RedrawScreen +[SDTC_BOOL] +var = gui.show_only_own_signs +flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC +def = false + ; For the dedicated build we'll enable dates in logs by default. [SDTC_BOOL] diff -r c85adae9a336 src/viewport.cpp --- a/src/viewport.cpp Sat Jul 30 01:01:06 2011 +0200 +++ b/src/viewport.cpp Sat Jul 30 01:45:20 2011 +0200 @@ -1186,6 +1186,9 @@ /* Don't draw if the display options are disabled */ if (!HasBit(_display_opt, is_station ? DO_SHOW_STATION_NAMES : DO_SHOW_WAYPOINT_NAMES)) continue; + /* Don't draw if station is owned by another company and only own signs should be shown */ + if(_settings_client.gui.show_only_own_signs && _local_company != st->owner) continue; + ViewportAddString(dpi, ZOOM_LVL_OUT_4X, &st->sign, is_station ? STR_VIEWPORT_STATION : STR_VIEWPORT_WAYPOINT, (is_station ? STR_VIEWPORT_STATION : STR_VIEWPORT_WAYPOINT) + 1, STR_NULL, @@ -1201,6 +1204,9 @@ const Sign *si; FOR_ALL_SIGNS(si) { + /* Don't draw if sign is owned by another company and only own signs should be shown */ + if(_settings_client.gui.show_only_own_signs && _local_company != si->owner) continue; + ViewportAddString(dpi, ZOOM_LVL_OUT_4X, &si->sign, STR_WHITE_SIGN, IsTransparencySet(TO_SIGNS) ? STR_VIEWPORT_SIGN_SMALL_WHITE : STR_VIEWPORT_SIGN_SMALL_BLACK, STR_NULL,