Commit Graph

29345 Commits (master)
 

Author SHA1 Message Date
translators 60cf37e0d1 Update: Translations from eints 4 weeks ago
Peter Nelson 9a7c30a109 Codechange: Let ClickSliderWidget handle rounding to nearest mark. 4 weeks ago
Peter Nelson 9d2efd4c96 Codechange: Use callback function to set labels of slider widget marks.
Slider widgets can only use a predefined list of values and strings to draw labels. This makes it difficult to vary the display by context.

Instead of providing a predefined list as a std::map, use a callback function instead. This function can decide what text to display, and can call SetDParam to dynamically set up strings.
4 weeks ago
Rubidium 8b6661d486 Codefix 90029be: build failure for SDL 1.2 4 weeks ago
Rubidium 0b50834f81 Fix 2955ff3: CMake atomic check fails due to chosen compiler 4 weeks ago
translators e0048d798f Update: Translations from eints
hungarian: 5 changes by egri-nagy
4 weeks ago
Peter Nelson 90029beb49
Codechange: Ensure SDLK mappings stay in the expected order. (#12608)
Add a constexpr constructor that ensures at compile-time that the source SDLK range matches the target range.
4 weeks ago
James Addison c17fa6032b
Doc: Add Apache 2.0 licensing info for CheckAtomic.cmake (#12603) 4 weeks ago
Koen Bussemaker ef99aa81a3 Codechange: Store validity of water regions in separate vector 4 weeks ago
Peter Nelson cf96d49ced
Codechange: Use vector for airport tile layouts. (#12607)
Simplify AirportSpec data by storing layout information together in a vector, instead of separate arrays.

This removes manual memory management and separate count members.

The default layouts will be copied instead of always referring to the originals.
4 weeks ago
translators 65c9df49d9 Update: Translations from eints
chinese (simplified): 8 changes by XiaoJi-Game
catalan: 3 changes by J0anJosep
4 weeks ago
Fen 2559bdfa6f
Fix 2d27e8e: Update numpad keycodes for SDL2, making it usable (#12596)
* Fix 2d27e8e: Update numpad keycodes for SDL2, making it usable

* Cleanup: List sdl2 numpad mappings individually
1 month ago
Jonathan G Rennison 9647fe1d05 Change: [Linkgraph] Improve distance scaling algorithm in demand scaler
Improve scaling at values other than 0% and 100%
Fix erratic scaling and increase effect size at large setting values
1 month ago
Peter Nelson f146680121
Codechange: Use vector for industry random sounds. (#12606)
Use a vector to store the list of random sounds played for an industry.

The removes manual memory allocation, flags to control memory management, a separate count member, and a try/catch block.
1 month ago
Peter Nelson 7147fe9e7a
Codechange: Use range-for when loading NewGRF deterministic sprite groups. (#12605) 1 month ago
Peter Nelson 532ce1a907
Codechange: Use Recv/Send_bytes for md5sum. (#12602)
Use existing functions to handle serialisation of arrays instead of indexed for-loop.
1 month ago
Peter Nelson 1424a184d8
Codechange: Use vector/span when loading wagon overrides. (#12604)
Replaces manual memory allocation and passing pointer with size.
1 month ago
translators 96d82b4363 Update: Translations from eints
chinese (simplified): 1 change by WenSimEHRP
greek: 52 changes by KyriakosMich
german: 3 changes by Wuzzy2
basque: 36 changes by Porrumentzio
danish: 3 changes by bscargo
1 month ago
translators 4df44fea38 Update: Translations from eints
swedish: 3 changes by joeax910
galician: 63 changes by pvillaverde
1 month ago
Peter Nelson cc6e4768a9
Fix: Out-of-order window set up due to deferred window resize. (#12592)
Deferred window resize was being applied to the initial window resize event, resulting in some window state (e.g. scroll bar capacity) not being initialised when expected.
1 month ago
translators b852a3f408 Update: Translations from eints
english (us): 3 changes by 2TallTyler
korean: 3 changes by telk5093
hungarian: 2 changes by meskobalazs
1 month ago
rubidium42 fd4cf699e5
Codefix 37a03b5: the return value of maxdim should always be assigned (#12590) 1 month ago
Rubidium 98d37338df Codechange: use ranged for loop instead of one with lengthof 1 month ago
Rubidium 24b6ec80a9 Codechange: use ranged for loop and vector to determine the disaster to deploy 1 month ago
Rubidium 87dbd4a833 Codechange: use ranged for loop to determine widest title 1 month ago
Rubidium d183d8e587 Codechange: remove INVALID_STRING_ID now drop down uses spans 1 month ago
Rubidium 37a03b513f Codechange: refactor string list dimension finding into a separate function 1 month ago
Rubidium 546a996d95 Codechange: pass options to ShowDropDownMenu using a span 1 month ago
Rubidium ad50c4f298 Codechange: inline sorter name definitions and use proper static accessor instead of (implying) this-> 1 month ago
Peter Nelson ef55cc7979
Codechange: Remove support for links in tar files. (#12571)
This was a feature to support the original 32bpp sprite system and is no longer relevant.
1 month ago
Loïc Guilloux 99b74c1064
Fix #12584: Improved error handling during tar scan (#12586) 1 month ago
Rubidium 826deaee57 Codechange: refactor CalcHeightdiff to remove some magic numbers 1 month ago
Rubidium 97a34bf06e Codechange: use C++ containers for the colour schemes 1 month ago
translators ee9895a970 Update: Translations from eints
norwegian (bokmal): 3 changes by eriksorngard
french: 3 changes by ottdfevr
portuguese: 3 changes by azulcosta
1 month ago
Peter Nelson 440a633fcc Codechange: Remove shrink_to_fit for more lists.
A comment about "will actually do nothing" is out of date as that is not the case with std::vector.

These lists are always short lived (either within a command handler or in a window) so don't shrink_to_fit.
1 month ago
Peter Nelson 33aedc43a5 Codechange: Shrink GUIList vectors less often, reserve before use.
After sorting and filter lists for GUI, we often shirnk them to reduce size. However this has very little benefit:

1) The memory has already been allocated, so it doesn't prevent that memory being required.
2) It causes a new allocation and copy when the vector is shrunk, actually using more memory.
3) The list is in window state, so the lifetime is only while the window is open.
4) When a filter is clearer, the original size will be needed again, which will cause another allocation.

In fact it is beneficial to reserve to the known maximum in most cases, so do that instead.
1 month ago
translators 8308998388 Update: Translations from eints
english (au): 3 changes by krysclarke
russian: 3 changes by Ln-Wolf
finnish: 6 changes by hpiirai
dutch: 6 changes by Afoklala
portuguese (brazilian): 4 changes by pasantoro
polish: 3 changes by pAter-exe
1 month ago
Peter Nelson bf8de188ec
Codechange: Use member initialization of GRFFilePropsBase. (#12581)
Don't blame compilers for our sloppy initialisation.

Removes memset, and lengthof.
1 month ago
Peter Nelson 72c55128d2
Codechange: Remove write-only spec_id from RoadStopSpec. (#12582)
Comment is incorrect about its value too.
1 month ago
Peter Nelson a6d401debf
Fix: Properly test for presence of waypoint in NewGRF resolver. (#12579)
Test whether the BaseStation itself a Station or Waypoint, instead of by the station class ID assigned to it.
1 month ago
translators a60a81f34e Update: Translations from eints
swedish: 7 changes by joeax910
vietnamese: 15 changes by anmatngu
greek: 31 changes by gh658804, 2 changes by KyriakosMich
hungarian: 2 changes by egri-nagy
portuguese (brazilian): 2 changes by pasantoro
1 month ago
Rubidium 0fdabca605 Codechange: use std::span instead of custom span in TGP 1 month ago
Peter Nelson f44d8fa2e4
Codechange: Remove CDECL from filter functions. (#12578)
These functions are not passed to qsort()...
1 month ago
Peter Nelson 0075a95278
Codefix: Make three _filter_funcs definitions distinct. (#12573)
Rename the GUIList function lists defined as the same symbol.
1 month ago
Peter Nelson 5bc9854be2
Codechange: Make sort list function lists safer. (#12574)
GUIList has a pointer only to the start of each sort/filter func list, which has the potential for UB as it is unable to validate that the selected sort or filter type is in range.

Use a std::span instead and check if the selected type is in range before using it.
1 month ago
Jonathan G Rennison 9b747a173d Fix #12509: Maintain timer sort invariants when changing period 1 month ago
Jonathan G Rennison 11ec156b64 Codechange: Add a priority field to TimerGameTick::TPeriod
Use this as the primary sort key for TimerGameTick::TPeriod,
to avoid container sort order changes on timer period saveload.
See: #12509
1 month ago
André Cheng 57f5d27427 Doc: Fix documentation of GetDefaultValueCallback 1 month ago
André Cheng ceb0053dd9 Codechange: Correct return type of GetDefaultValueCallback 1 month ago
André Cheng 339b0ea0ff Change: Show correct default value and unit for vehicle service interval setting 1 month ago