Commit Graph

24915 Commits

Author SHA1 Message Date
Peter Nelson 25802b4df5 Fix: Bootstrap ignored default OpenTTD truetype fonts. (#14684)
Bootstrapping assumed that glyphs must be missing if there is no baseset, ignoring whether there actually are glyphs missing.
2025-12-08 04:28:53 +05:00
translators 5da3fe0caf Update: Translations from eints
english (au): 1 change by krysclarke
greek: 1 change by gh658804
hungarian: 4 changes by vargaviktor
russian: 1 change by Ln-Wolf
finnish: 1 change by hpiirai
portuguese: 1 change by jcteotonio
portuguese (brazilian): 1 change by pasantoro
2025-12-08 04:28:53 +05:00
Peter Nelson f792e82d0b Change: Make groups window group list aware of interface scaling. 2025-12-08 04:28:51 +05:00
Peter Nelson a43bb1ec0b Codechange: Use Rects for group window drawing.
Simplifies handling of LTR/RTL coordinates.
2025-12-08 04:28:48 +05:00
Peter Nelson 3cf39972dc Change: Provide road and rail overlay sprites for bridge decks. (#14557)
This allows bridges designed primarily with NewGRF railtypes and roadtypes to be at least somewhat compatible with built-in rail and road.
2025-12-08 04:27:30 +05:00
Rubidium c5d910a9aa Codechange: make all Providers fully const (Font/Screenshot/Sound) 2025-12-08 04:27:19 +05:00
Peter Nelson d432757676 Fix 9cdf740097: Don't make copy of format providers when making a screenshot. (#14681)
While here, use projection instead of lambda to select provider.
2025-12-08 04:27:17 +05:00
Peter Nelson 988467df79 Add: Include build cost in rail/road dropdowns. (#14599) 2025-12-08 04:27:08 +05:00
translators 130368065b Update: Translations from eints
english (us): 3 changes by 2TallTyler
galician: 9 changes by pvillaverde
2025-12-08 04:27:08 +05:00
Su cc5f738cec Change: replace the "(City)" identifier in the town directory with the city icon (#14634) 2025-12-08 04:27:07 +05:00
Peter Nelson d280669959 Codechange: Initialise rail/road types with range-for.
Replace double loop with single loop that performs both parts together.
2025-12-08 04:27:04 +05:00
Peter Nelson eed63628f5 Codechange: Use std algorithm when allocating rail/road type.
Use `std::ranges::find()` instead of a `for`-loop to allocate rail and road types.
2025-12-08 04:27:01 +05:00
Peter Nelson c6f657fb62 Codechange: Make GetRail/RoadTypeInfoIndex() a member method.
This follows a similar pattern used for cargoes, houses and objects.

Also fixes incorrect documentation of GetRoadTypeInfoIndex().
2025-12-08 04:25:59 +05:00
Peter Nelson 0812a641ae Codechange: Cleanup unnecessary includes of spritecache.h (#14678) 2025-12-08 04:25:46 +05:00
Peter Nelson d50dd18215 Codechange: Replace Rect CentreTo with CentreToHeight. (#14675)
So far all callers only need to centre vertically, so not having to provide the existing width simplifies calls.
2025-12-08 04:24:01 +05:00
Peter Nelson de0b4b4918 Change: Support interface scaling in network client list buttons. 2025-12-08 04:23:57 +05:00
Peter Nelson 056cccfb71 Codechange: Rework network client list buttons.
Instead of calculating and storing which buttons to display for each
line and then further calculating what each line should be when
displaying it, store everything on one pass.

This simplifies/deduplicates logic.
2025-12-08 04:23:54 +05:00
translators 4fea930bdf Update: Translations from eints
english (au): 3 changes by krysclarke
swedish: 3 changes by robert-i
korean: 3 changes by telk5093
greek: 3 changes by gh658804
russian: 3 changes by Ln-Wolf
finnish: 3 changes by hpiirai
catalan: 3 changes by J0anJosep
portuguese: 3 changes by jcteotonio
portuguese (brazilian): 3 changes by pasantoro
polish: 3 changes by pAter-exe
2025-12-08 04:23:54 +05:00
Peter Nelson 7c3f8825fa Codechange: Use Rect WithX/WithY in some places. 2025-12-08 04:23:46 +05:00
Peter Nelson 531187d92d Codechange: Add WithX/WithY methods to Rect.
This simplifies creating a new Rect with specific horizontal or vertical coordinates.
2025-12-08 04:22:00 +05:00
Peter Nelson 840a024cb3 Change: Prefer normal/medium weight font in FontConfig fallback detection. (#14672)
This way it behaves similar to Windows.
2025-12-08 04:21:59 +05:00
Rubidium 4b10b1c7de Codefix: shadowing of variables 2025-12-08 04:21:53 +05:00
Jonathan G Rennison fb01e803eb Fix: Industry accept/produce when not contiguous range from 0 (#14555) 2025-12-08 04:21:48 +05:00
Jonathan G Rennison 089abf1884 Fix #14604: Clearing tiles to build objects did not update town ratings (#14616) 2025-12-08 04:21:46 +05:00
Peter Nelson 0d12d58107 Codechange: FlatSet's contains() should be const. (#14665)
This function does not modify contents, so should be marked const.
2025-12-08 04:20:28 +05:00
Peter Nelson 845a5de51c Codechange: Rename TrackFollowers to follower. (#14664)
Replaces use of codestyle breaking `F` in places.
2025-12-08 04:20:23 +05:00
Peter Nelson 2934b87d1c Codefix 18e28077cc: Local variable icon shadowed member variable icon. (#14668)
Rename rects used in league table to avoid name shadowing. Now uses the same naming as in ScriptLeagueWindow.
2025-12-08 04:20:21 +05:00
Rubidium cdc42e7906 Fix #14549: changing interface scale could underflow map zoom 2025-12-08 04:18:34 +05:00
translators a9bfdeb5e0 Update: Translations from eints 2025-12-08 04:18:34 +05:00
Peter Nelson ce71794591 Fix: League Table layout broken with RTL languages. (#14667) 2025-12-08 04:18:31 +05:00
Peter Nelson b4367c3593 Change: Record and show multiple errors for each NewGRF. (#14658) 2025-12-08 04:17:08 +05:00
Tyler Trahan c9e0823a2e Feature: Draw infinite water when all borders are water (#13289) 2025-12-08 04:15:38 +05:00
Kuhnovic 7fe444ed37 Codechange: Set YAPF startup nodes directly. (#14663) 2025-12-08 04:15:34 +05:00
Kuhnovic 86b46fcd03 Codechange: Simplified logic of ship leaving a depot. (#14661) 2025-12-08 04:15:32 +05:00
Kuhnovic 57f489c2cc Codechange: Moved PruneIntermediateNodeBranch to rail pathfinder. (#14662) 2025-12-08 04:15:28 +05:00
Kuhnovic ed47cbdb0f Fix bff8501: Gcc 15 warns about duplicate type. (#14660) 2025-12-08 04:15:26 +05:00
Peter Nelson 0b4ef8be90 Fix #14607: Bridge-over-station discrepancy depending on build order. (#14608)
When building a custom station, the callback-derived tile layout is ignored during the bridge height test. This caused a discrepancy between building a station under a bridge vs building a bridge over the same station.

Test the station tile layout callback during the bridge height test.
2025-12-08 04:15:20 +05:00
Peter Nelson 3bb1b847d3 Fix 3ac1a2f1e4: Game crash due to invalid vehicle type information. (#14628)
Use std::variant instead of union for vehicle info.

RailVehicleInfo is now non-POD so using in a union causes undefined behaviour.
2025-12-08 04:15:17 +05:00
Kuhnovic 88d3faa050 Codechange: Simplified structure of yapf_ship_regions. (#14640) 2025-12-08 03:29:36 +05:00
translators 505c0fb4c1 Update: Translations from eints
hungarian: 5 changes by vargaviktor
2025-12-08 03:29:36 +05:00
Peter Nelson 04e594ccbf Fix d85f4b3ebf: Incorrect row height in network server list. (#14653) 2025-12-08 03:29:33 +05:00
Peter Nelson 5637beeb84 Codechange: Make TownRatingCheckType an enum class. (#14652) 2025-12-08 03:28:56 +05:00
Peter Nelson 8dd7c6dba4 Codechange: Use EnumBitSet for TownFlags. (#14651) 2025-12-08 03:28:19 +05:00
Peter Nelson 148940cca6 Codefix: Incorrect naming and location of widget names for build docks window. (#14650) 2025-12-08 03:27:58 +05:00
translators 3176cdf53b Update: Translations from eints
chinese (simplified): 4 changes by WenSimEHRP
catalan: 5 changes by J0anJosep
2025-12-08 03:27:58 +05:00
Peter Nelson 35cbdb34f6 Codechange: Add constant for INVALID_WIDGET. (#14649)
Replaces direct use of -1, making it easier to find.
2025-12-08 03:26:19 +05:00
Peter Nelson 490d43d6d0 Codechange: Call shorter variant of DrawFrameRect and GfxFillRect. (#14647)
Pass rect instead of breaking it up when possible.
2025-12-08 03:26:17 +05:00
Peter Nelson bb821fbb7e Codechange: Deduplicate DrawButtonDropdown. (#14646)
Use Rect methods to position components.
2025-12-08 03:26:14 +05:00
Peter Nelson a2209edc03 Codechange: Don't use Point for non-2D coordinate. (#14645)
`HandleScrollbarHittest` returns min and max coordinates, not x and y.
Also avoid referring to the min and max coordinates as top and bottom, as these functions are used for both vertical and horizontal scrollbars.
2025-12-08 03:26:12 +05:00
Peter Nelson 7845ed40e4 Codechange: Move settings entry size global variables. (#14644)
_setting_circle_size and (the incorrectly named) SETTING_HEIGHT variables are now static members of BaseSettingEntry.

Neither of these are constants, so they no longer use constant naming style.
2025-12-08 03:26:08 +05:00