Commit Graph

21785 Commits

Author SHA1 Message Date
Peter Nelson
05b55c4d43
Fix: Extra space allocated to container-within-container may not get allocated to children. (#11471)
Always derive additional length from contained widgets instead of from the container, as the container's minimal length may have been adjusted by an NC_EQUALSIZE parent container.
2023-11-19 00:36:53 +00:00
translators
29102ce42c Update: Translations from eints
dutch: 1 change by Afoklala
2023-11-17 18:38:21 +00:00
Peter Nelson
08778094f4
Fix: extmidi did not move on to next song after playing ends. (#11469)
`song` is no longer a C-style string so cannot be cleared by writing a NUL char.
Use `.clear()` to properly clear a std::string.
2023-11-17 17:42:19 +00:00
Peter Nelson
b2d4d90502 Change: Apply interface scaling to NewGRF settings min/max sizes. 2023-11-16 20:54:51 +00:00
Peter Nelson
42ae61a4fe Change: Use sparse padding for NewGRF settings window. 2023-11-16 20:54:51 +00:00
Peter Nelson
cdb4e98a15
Change: Use sparse padding for AI/GS settings windows. (#11466) 2023-11-16 20:02:07 +00:00
Peter Nelson
f93711838f
Fix 6317967: Missing exception for SetPipRatio(). (#11465) 2023-11-16 19:22:02 +00:00
Peter Nelson
60651227a0
Change: Simplify world gen widgets and use sparse padding. (#11464) 2023-11-16 18:58:59 +00:00
translators
bca321443a Update: Translations from eints
french: 1 change by Lishouuu
2023-11-16 18:39:24 +00:00
Peter Nelson
7d48a3f073
Codechange: Move RectPadding::zero definition to header. (#11461)
This potentially allows better inlining/optimization.
2023-11-16 17:07:29 +00:00
Peter Nelson
e2e0753916
Codechange: Use GetCurrentRect() where feasible. (#11460) 2023-11-16 17:06:57 +00:00
Peter Nelson
17ceed0241
Change: Use sparse padding for Game Options window. (#11463) 2023-11-16 17:06:38 +00:00
Peter Nelson
306e75223a Change: Adjust layouts and standardize spacing for company-related windows. 2023-11-15 12:43:44 +00:00
Peter Nelson
58c037fba0 Change: Increase finance window lines (and underlines) with interface scale. 2023-11-15 12:43:44 +00:00
translators
1dff1e34f6 Update: Translations from eints
tamil: 3 changes by Jeyanthinath
2023-11-14 18:36:57 +00:00
Peter Nelson
7cfcf65f95 Codechange: Simplify cargo filter lists, building only when required.
Some cargo filter lists were built in advance, and used as lookups to test which cargo type to filter.

Instead, use the Cargo ID directly as the filter parameter, and build the lists only when the drop down list is used.
2023-11-13 21:30:46 +00:00
Peter Nelson
08dfe35442 Codechange: Move DropDownList height and width calculation to helper. 2023-11-13 21:30:46 +00:00
translators
1242b355e5 Update: Translations from eints
danish: 1 change by bscargo
polish: 1 change by pAter-exe
2023-11-13 18:38:10 +00:00
Peter Nelson
c877494f7a
Codechange: Simplify autoreplace rail/road types by using separate widget. (#11457)
This avoids needing to determine which type of list to deal with by additionally checking the window number for VEH_TRAIN/VEH_ROAD.
2023-11-13 12:32:34 +00:00
Tyler Trahan
7a6d102c4b
Codechange: Clean up timetable start checks (#11456) 2023-11-13 07:19:39 -05:00
translators
5446ece100 Update: Translations from eints
vietnamese: 7 changes by KhoiCanDev
korean: 1 change by telk5093
catalan: 7 changes by J0anJosep
2023-11-12 18:38:05 +00:00
translators
1432511fe5 Update: Translations from eints
english (au): 1 change by krysclarke
italian: 7 changes by Rivarossi
russian: 1 change by Ln-Wolf
finnish: 1 change by hpiirai
portuguese: 1 change by azulcosta
portuguese (brazilian): 1 change by pasantoro
2023-11-11 18:36:44 +00:00
Tyler Trahan
235ac0bceb
Codechange: Reword rail/road type label constants (#11451) 2023-11-10 17:37:22 -05:00
translators
ef1abbcd1f Update: Translations from eints 2023-11-10 18:38:29 +00:00
Peter Nelson
bd2ddb07ca
Change: Move baseset missing/corrupted files label to list item. (#11455)
This allows any baseset error to be displayed in the drop down list so it is more easily visible, and avoids wasted space in the layout.
2023-11-10 12:25:56 +00:00
Peter Nelson
1071acb483
Codechange: Redundant use of char * and c_str(). (#11454) 2023-11-10 00:17:36 +00:00
Peter Nelson
938c8339d2 Codechange: Ensure space between for/if and (. 2023-11-09 20:15:38 +00:00
Peter Nelson
d4008850e3 Codechange: Ensure function opening { is on new line. 2023-11-09 20:15:38 +00:00
Jonathan G Rennison
1de1af08b9
Codechange: Replace AllocatedStringParameters with ArrayStringParameters (#11452)
All uses of AllocatedStringParameters are with a compile-time fixed
constant.
Use of a dynamically allocated buffer on the heap is unnecessary and
increases overhead, particularly due to frequent use as a temporary.
2023-11-09 19:43:47 +00:00
translators
92816ac96b Update: Translations from eints
german: 3 changes by SecretIdetity
romanian: 6 changes by bnegrut
2023-11-09 18:37:36 +00:00
Peter Nelson
9f90ab7b04
Codechange: Use rail/road type label constants instead of literals. (#11450) 2023-11-08 23:45:08 +00:00
translators
382d7a9076 Update: Translations from eints
hungarian: 54 changes by titanicbobo
2023-11-08 18:39:05 +00:00
Peter Nelson
90bd8e64d8 Change: Simplify help window widgets and use sparse padding. 2023-11-07 23:09:05 +00:00
Peter Nelson
55adbe10b7 Add: WidgetDimensions for 'sparse' widget windows.
These are for windows that have space between widgets instead of being clumped together.
2023-11-07 23:09:05 +00:00
translators
56657eeaae Update: Translations from eints
chinese (simplified): 1 change by WenSimEHRP
danish: 1 change by bscargo
hindi: 111 changes by NisheshTyagi
2023-11-07 18:37:45 +00:00
Peter Nelson
842cf87765 Change: Bring airport picker inline with other pickers. 2023-11-07 18:27:51 +00:00
Peter Nelson
b216dc493f Change: Bring dock picker inline with other pickers. 2023-11-07 18:27:51 +00:00
Peter Nelson
27b5979056 Change: Improve layout of object picker. 2023-11-07 18:27:51 +00:00
Peter Nelson
db18f60beb Change: Improve layout of road/tram stop pickers. 2023-11-07 18:27:51 +00:00
Peter Nelson
61deab08fc Change: Improve layout of station picker. 2023-11-07 18:27:51 +00:00
Peter Nelson
136551408c
Change: Show empty string drop down entries as divider. (#11447) 2023-11-06 22:35:01 +00:00
Peter Nelson
ab535c0a86
Codechange: Add base() method to StrongType to allow access to the base type without casting. (#11445)
This removes the ability to explicitly cast to the base type, but the requirement
to use .base() means the conversion is still explicit.
2023-11-06 20:29:35 +00:00
translators
737775f834 Update: Translations from eints
korean: 14 changes by telk5093
polish: 1 change by pAter-exe
2023-11-06 18:38:37 +00:00
Peter Nelson
badce415ea Change: Add horizontal scrollbar to Industry Directory window.
This list could be very wide depending on industries and language.
2023-11-05 22:22:32 +00:00
Peter Nelson
8ff6562b2f Codechange: Reduce variable scope. 2023-11-05 22:22:32 +00:00
Peter Nelson
6b9dc8cfcf Codechange: Don't filter industry list by cargo type every 3-sec refresh.
The 3-sec refresh is to update the list sorting. The filter only needs to
be applied once rebuilding the list.
2023-11-05 22:22:32 +00:00
Peter Nelson
4033750968 Codechange: Remove redundant NWID_VERTICAL in Industry Directory layout. 2023-11-05 22:22:32 +00:00
Peter Nelson
d380f2f3a2 Codechange: Simplify layout of depot pickers. 2023-11-05 20:09:45 +00:00
Peter Nelson
665902f5ba Codechange: Add widget dimensions to standardise picker winodws. 2023-11-05 20:09:45 +00:00
Peter Nelson
3cab980b30 Codechange: Skip invisible (zero-size) widgets in PIP Containers.
This gets rid of doubled-up spacing where an invisible child widget would be.
2023-11-05 20:09:45 +00:00
Peter Nelson
6317967dba Codechange: Add ability to allocate PIP-space dynamically by ratio.
This can be used to space out, centre, start-align, or end-align widgets without additional spacers.
2023-11-05 20:09:45 +00:00
Peter Nelson
ac54bd7e58 Codechange: Apply PIP during AssignSizePosition() instead of SetupSmallestSize(). 2023-11-05 20:09:45 +00:00
Peter Nelson
43aa91a7f5
Fix #11437: Flipped shorter rail vehicles disappear in windows. (#11446)
Mixed signed/unsigned strikes again, causing an incorrect sprite offset for shortened vehicles.
2023-11-05 20:09:11 +00:00
Peter Nelson
a9aaa2a183 Codechange: Don't be lenient with invalid NWidgetPart lists.
Some NWidgetPart combinations were ignored but it was not clear that they do nothing. Instead, assert if NWidgetPart is incorrectly applied.
2023-11-05 19:24:59 +00:00
Peter Nelson
b1eb5533eb Add: WindowDesc unit test to validate NWidgetPart lists. 2023-11-05 19:24:59 +00:00
Peter Nelson
1c94fb0389 Add: Mock sprite cache intialization.
This fills up the sprite cache with SPR_OPENTTD_BASE + OPENTTD_SPRITE_COUNT zero-size sprites, to
allow GetSpriteSize() calls to continue from unit-tests.
2023-11-05 19:24:59 +00:00
Peter Nelson
05436d9c2f Add: Expose minimal parts of SpriteCache internals.
These parts are needed to be able to mock the SpriteCache for unit-tests.
2023-11-05 19:24:59 +00:00
Peter Nelson
46f63074da Add: MockFontCache for testing GUI code that only needs to know font sizes. 2023-11-05 19:24:59 +00:00
translators
af4c7799fe Update: Translations from eints
korean: 1 change by telk5093
finnish: 1 change by hpiirai
portuguese (brazilian): 1 change by pasantoro
2023-11-05 18:37:09 +00:00
Peter Nelson
b5861fd8f3
Fix: Using MIN_YEAR for a date is probably wrong, Use MIN_DATE instead. (#11444)
Even with strong types ...
2023-11-05 15:43:56 +00:00
Peter Nelson
ef385499c7
Codechange: Remove ineffective NWidgetParts. (#11443) 2023-11-05 14:09:47 +00:00
translators
01728177e7 Update: Translations from eints
english (us): 3 changes by 2TallTyler
french: 2 changes by Lishouuu
2023-11-04 18:37:37 +00:00
Michael Lutz
071fdab236 Codechange: Replicate cursor screen backup to chat message display, removing explicit memory management.
Incidentally, this makes Blitter::GetBytesPerPixel unneeed.
2023-11-04 16:08:34 +01:00
Peter Nelson
bbd64bbe2b
Fix #9545: Crash when all cargo types are disabled. (#11432)
This is not a very useful state, but it's nice to not crash.

Some parts of the game don't (yet) check for cargo types being redefined, that is out-of-scope here.
2023-11-04 14:42:47 +00:00
Patric Stout
c059ce0c97
Fix cda6f24f: don't ignore binary-dir if it happens to be working-dir (#11431)
Some of our code ignores the SP_WORKING_DIR for some actions, which
means that if, for example, your SP_BINARY_DIR is the same as your
SP_WORKING_DIR, neither is scanned.

Instead, only add SP_WORKING_DIR if it is unique.
2023-11-04 10:39:18 +00:00
Peter Nelson
db6b32e421
Codechange: Avoid pointers and lengthof in ExpensesList. (#11427)
Use std::initializer_list which allows iteration.
2023-11-03 23:15:37 +00:00
Michael Lutz
86e28e79fb Fix #11402: Make string filter locale-aware. 2023-11-03 22:34:01 +01:00
Michael Lutz
c294eaacc1 Fix: char_traits::find needs to return nullptr if nothing was found. 2023-11-03 22:34:01 +01:00
Peter Nelson
7d4a91ef9e
Cleanup: Remove some unused functions. (#11429)
These were picked up with cppcheck.
2023-11-03 21:21:00 +00:00
translators
4c58df75fd Update: Translations from eints
english (au): 1 change by krysclarke
russian: 1 change by Ln-Wolf
dutch: 3 changes by Afoklala
portuguese: 1 change by azulcosta
2023-11-03 18:38:51 +00:00
Peter Nelson
ce6e739491 Codechange: Add unit-test to check if nested widget parts of properly closed.
Properly closed means exactly one EndContainer for every Container widget.
2023-11-03 09:38:41 +00:00
Peter Nelson
e8db137135 Codechange: Move test for Container WidgetType to helper function. 2023-11-03 09:38:41 +00:00
Peter Nelson
d4a77411a5
Fix: Some NWidget lists were not properly closed. (#11425) 2023-11-03 08:17:26 +00:00
Peter Nelson
e563057478 Add: WindowDesc unit test to validate ini-key value.
ini-key must be present if WWT_DEFSIZEBOX or WWT_STICKYBOX is present.
This was previously enforced by a workflow, however that parsed the source
code with regex which turned out to be error-prone.
2023-11-02 22:25:01 +00:00
Peter Nelson
18fb8e153f Codechange: Add __FILE__/__LINE__ of WindowDesc to WindowDesc.
This is to allow unit-tests to produce more useful output.
2023-11-02 22:25:01 +00:00
Peter Nelson
873f93cab1
Fix: AI config window should not have an ini_key. (#11423)
This was missed by the workflow script that enforces this constraint.
2023-11-02 21:28:24 +00:00
translators
82ebc9860b Update: Translations from eints
finnish: 2 changes by hpiirai
danish: 1 change by bscargo
2023-11-02 18:38:58 +00:00
Rubidium
a849b4e175 Fix: allow same length server password in the UI 2023-11-02 17:19:38 +01:00
Rubidium
c6411168d8 Cleanup: missing spaces before continuation * in some comments 2023-11-01 22:56:11 +01:00
Peter Nelson
c687b59efc Codechange: Use unique_ptr for SmallMapWindow's overlay. 2023-11-01 21:49:06 +00:00
Peter Nelson
53845bc024 Codechange: Move includes to correct place.
Some other source file inadvertently included things via smallmap_gui.h
2023-11-01 21:49:06 +00:00
Peter Nelson
ed8df72c49 Revert 6b68956: Move declaration of SmallMapWindow out of header file.
This split needlessly complicates `SmallMapWindow` for the sake of one method (no longer) used by `LinkGraphOverlay`.
2023-11-01 21:49:06 +00:00
Peter Nelson
f91462f54b Codechange: Don't access SmallMapWindow method directly from LinkGraphOverlay. 2023-11-01 21:49:06 +00:00
Peter Nelson
ff5e8bb9a3 Fix #11413: Incorrect sorting by industry production.
Error caused by single character mistake. However this algorithm was inefficent if a filter was specified, and clearly the flow was error-prone.

Now using separately-scoped loops to avoid similar.
2023-11-01 21:37:53 +00:00
Peter Nelson
278b42d078 Codechange: Document Industry::GetCargoProduced/Accepted and add const-variant. 2023-11-01 21:37:53 +00:00
Peter Nelson
4f3adc038a Cleanup: Use standard comment codestyle. 2023-11-01 21:37:53 +00:00
Tyler Trahan
49d53c41ab
Doc: Don't use other names for road vehicle bay stops (#11418) 2023-11-01 21:19:31 +00:00
Peter Nelson
d3cb6e1e67
Codechange: Call Widget::SetDirty/SetLowered directly. (#11417)
In these instances we already have the widget to hand, so don't need to look it up by index again.
2023-11-01 20:12:08 +00:00
Tyler Trahan
89480f3531
Change: Don't set vehicle on time if timetable not started (#11359) 2023-11-01 15:26:39 -04:00
Peter Nelson
bb50cbb772
Codechange: Assign/StoreSizePosition x/y can be negative. (#11416)
AssignSizePosition is used with negative values when an NWidgetMatrix is
scrolled, but they were passed as unsigned and then stored as signed.

Widget pos_x/pos_y were already made signed.
2023-11-01 18:44:23 +00:00
translators
c97120f003 Update: Translations from eints
english (au): 1 change by krysclarke
chinese (simplified): 5 changes by WenSimEHRP
korean: 2 changes by telk5093
russian: 1 change by Ln-Wolf
portuguese: 1 change by azulcosta
portuguese (brazilian): 1 change by pasantoro
polish: 1 change by pAter-exe
2023-11-01 18:38:53 +00:00
Peter Nelson
35a7770fde
Fix 233aac5: Set newline default comment for new groups. (#11411)
The newline space between ini groups is actually recorded as a comment of the group. This got inadvertantly dropped in #11364.
2023-10-31 01:19:04 +00:00
frosch
e81313e93e Feature: Base graphics can offer parameters for additional settings. 2023-10-31 01:41:50 +01:00
frosch
de3f29d7b2 Add: store base graphics parameters in openttd.cfg. 2023-10-31 01:41:50 +01:00
frosch
f09fda1ff0 Codechange: store the GRFConfig of the base graphics, once loaded. 2023-10-31 01:41:50 +01:00
frosch
0b7ecf6102 Codechange: use the shortname as unique id to identify the base graphics in openttd.cfg. 2023-10-31 01:41:50 +01:00
frosch
97df27e41f Codechange: Store base graphics settings in a separate section in openttd.cfg. 2023-10-31 01:41:50 +01:00
Peter Nelson
2d3fef3113 Fix: Incorrect padding for smallmap legend 'icon'.
The size of this icon is based off FONT_HEIGHT_SMALL - 1, so it makes sense to use a scaled 1 here.
2023-10-30 22:11:31 +00:00
Peter Nelson
a8aba06a07 Fix: Insufficient space for labels on smallmap legend. 2023-10-30 22:11:31 +00:00
translators
186829b99f Update: Translations from eints
english (au): 1 change by krysclarke
dutch: 1 change by TrueBrain
portuguese: 1 change by azulcosta
polish: 4 changes by pAter-exe
2023-10-30 18:38:55 +00:00
translators
40f52afac2 Update: Translations from eints
indonesian: 1 change by liimee
russian: 2 changes by Ln-Wolf
finnish: 1 change by hpiirai
danish: 1 change by bscargo
french: 1 change by ottdfevr
portuguese (brazilian): 1 change by pasantoro
2023-10-29 18:37:50 +00:00
translators
9e6ea16ca7 Update: Translations from eints 2023-10-28 18:37:45 +00:00
Peter Nelson
c0aa9a5f87
Add: Debug tool to draw widget outlines. (#11401)
This is considered a developer tool and is controlled from the help menu (or default hotkey Ctrl-O).

This draws a white dashed outline around widgets. NWidgetSpacer and (unused) WWT_EMPTY widgets are also filled with check pattern to highlight them, as they usually indicate a design issue.
2023-10-28 19:07:50 +01:00
Peter Nelson
129e98fbab
Fix d42a78f: Some raw drop down list strings may need token processing. (#11400)
Storing the raw string without processing though GetString() caused token
processing to be skipped.
2023-10-28 16:08:44 +01:00
Peter Nelson
062c19830b
Fix: OpenTTD can fail to exit on an error due to mutex locks in threads. (#11398) 2023-10-28 16:08:08 +01:00
translators
7b376493a2 Update: Translations from eints
dutch: 3 changes by Afoklala
french: 1 change by ottdfevr
2023-10-27 18:38:08 +00:00
translators
7b4ecb5241 Update: Translations from eints
korean: 3 changes by telk5093
slovak: 1 change by legitalk
polish: 4 changes by pAter-exe
2023-10-26 18:38:26 +00:00
Peter Nelson
5ae5c35f38 Codechange: Remove redundant WWT_PANEL from bootstrap error windows. 2023-10-26 12:43:20 +01:00
Peter Nelson
a601a1f406 Change: Use modalpopup spacing for goal question windows. 2023-10-26 12:43:20 +01:00
Peter Nelson
616fb48e25 Change: Use modalpopup spacing for engine preview window. 2023-10-26 12:43:20 +01:00
Peter Nelson
19c314ea1f Change: Use modalpopup spacing for buy company window. 2023-10-26 12:43:20 +01:00
Peter Nelson
8a49c0eb2c Change: Use modalpopup spacing for network relay and survey windows. 2023-10-26 12:43:20 +01:00
Peter Nelson
f78c2c9810 Fix: Incorrect title on framerate windows for AIs. 2023-10-25 19:35:42 +01:00
Peter Nelson
d19832569e
Cleanup: No need to cast const Font * to itself. (#11395) 2023-10-25 13:08:07 +00:00
translators
3d7f54472d Update: Translations from eints
english (us): 3 changes by 2TallTyler
danish: 3 changes by bscargo
polish: 1 change by pAter-exe
2023-10-24 18:38:34 +00:00
translators
9cdf66d3a1 Update: Translations from eints
czech: 18 changes by vladoschreiner
german: 27 changes by Wuzzy2
2023-10-23 18:38:04 +00:00
translators
d1351fa0d2 Update: Translations from eints
english (au): 3 changes by krysclarke
russian: 3 changes by Ln-Wolf
finnish: 3 changes by hpiirai
turkish: 4 changes by BeratSJ
french: 3 changes by ottdfevr
portuguese: 3 changes by azulcosta
portuguese (brazilian): 3 changes by pasantoro
2023-10-22 18:37:20 +00:00
Tyler Trahan
92ab114e13
Fix f49ffaa: Use DateAtStartOfYear() to calculate max timetable start date (#11388) 2023-10-22 10:51:06 -04:00
translators
f32058e4e5 Update: Translations from eints 2023-10-21 18:37:29 +00:00
Bernhard Reutner-Fischer
ac42dea7b2 Codechange: Remove unused parameter for Height()
DropDownListItem::Height does not need to take an argument so remove it

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2023-10-21 18:53:35 +02:00
Peter Nelson
59a2abd298 Codechange: Use unified NWidgetContainer methods instead of duplicating.
Most NWidgetContainer derivatives implemented Draw() and GetWidgetFromPos()
the same way. Move this these to NWidgetContainer itself to avoid repeating.
2023-10-21 14:26:36 +01:00
Peter Nelson
af41c5cb4e Codechange: Hide toolbar buttons by setting width to zero.
Zero-width is how widgets are hidden elsewhere.
This removes the need for an extra array to lookup if a button is hidden.
2023-10-21 14:26:36 +01:00
Peter Nelson
81ecbaaa33 Codechange: Hide multiplayer headers by setting width to zero.
Zero-width is how widgets are hidden elsewhere.
This removes the need for an extra array to lookup if a header is hidden.
2023-10-21 14:26:36 +01:00
Tyler Trahan
2dd2910ab3
Feature: Cheat to fix station ratings at 100% (#11346) 2023-10-21 08:35:52 -04:00
Rubidium
37f84b7372 Codechange: replace x.size() != 0 with !x.empty() 2023-10-20 23:05:43 +02:00
Rubidium
f16399f4c9 Codechange: replace x.size() > 0 with !x.empty() 2023-10-20 23:05:43 +02:00
Rubidium
c9276c2959 Codechange: replace x.size() == 0 with x.empty() 2023-10-20 23:05:43 +02:00
Peter Nelson
f06b3e9846
Change: Use CARGO_LIST to show station cargo acceptance changes. (#11379)
This simplifies construction of the news message and allows for more than
two changes to be show in one line.
2023-10-20 20:14:46 +01:00
translators
4c24334fda Update: Translations from eints 2023-10-20 18:38:26 +00:00
Peter Nelson
fd6f1e844a
Codechange: Avoid emplace_back(new()) into a unique_ptr. (#11384)
This could theoretically leave an unmanaged pointer in certain circumstances, and directly using
make_unique shows intent.
2023-10-20 18:40:48 +01:00
Peter Nelson
429a6f58e7
Codechange: Use max_element to find best cargo (sub-)type in NewGRF var 42. (#11370)
This replaces two manual loops to find the best cargo (sub-)type.
2023-10-20 18:40:26 +01:00
Peter Nelson
90351578a6 Codechange: Use std::map instead of fixed array to store refit options.
This simplifies handling of available refit options.
2023-10-20 18:39:32 +01:00
Peter Nelson
e4f94747f3 Codechange: Use comparator struct to sort cargo ID by predefined sort order.
This allows reuse of the comparator where a typename is used instead.
2023-10-20 18:39:32 +01:00
Peter Nelson
bc8e26f4e7
Codechange: Simplify usage of GRFFile cargo_map. (#11349) 2023-10-20 18:38:54 +01:00
Peter Nelson
69e20e79ab Codechange: Add const versions of GetItem/GetGroup, and sprinkle liberally.
Non-const version of GetItem is not needed.
2023-10-20 18:37:27 +01:00
Peter Nelson
17ba9d8c96 Codechange: Use range-for instead of nullptr-terminated list in settingsgen.
This simplifies iteration and avoids use of pointers.
2023-10-20 18:37:27 +01:00
Peter Nelson
233aac567b Codechange: Use std::list instead of C-linked list for ini files.
This removes self-management of memory with new/delete and allows simpler iteration.
2023-10-20 18:37:27 +01:00
Peter Nelson
ec1cf96b62 Codechange: Move initialization of group-type to CreateGroup function. 2023-10-20 18:37:27 +01:00
Peter Nelson
8bd06807e4 Codechange: Pass initializer list instead of null-terminated list of group types. 2023-10-20 18:37:27 +01:00
Peter Nelson
1fecbeff76 Codechange: Remove create parameter from IniLoadFile::GetGroup.
GetGroup now only returns nullptr if the group does not exist.
Use GetOrCreateGroup to create a group.

This avoids creating groups while reading ini files.
2023-10-20 18:37:27 +01:00
Peter Nelson
c47a0e1578 Codechange: Correct scope of IniItem for for-loop. 2023-10-20 18:37:27 +01:00
Peter Nelson
6ce7195ef1 Codechange: Split GetGroup into GetGroup/GetOrCreateGroup.
This follows the pattern used for GetItem/GetOrCreateItem, and allows use
of references where we know the group must exist.
2023-10-20 18:37:27 +01:00
Peter Nelson
54b1a067eb Codechange: Test for nullptr instead of treating pointer as boolean. 2023-10-20 18:37:27 +01:00
Peter Nelson
d3c5ae2648 Codechange: Add CreateGroup/CreateItem methods for ini files.
This abstracts the internals a bit.
2023-10-20 18:37:27 +01:00
Peter Nelson
0c85ce29ea Codechange: Pass ini file by reference and prefer automatic storage.
This avoids new/delete operations, and (not) checking for nullptr.
2023-10-20 18:37:27 +01:00
Peter Nelson
3961318974 Codechange: Accept std::string in RemoveGroup(). 2023-10-20 18:37:27 +01:00
Peter Nelson
bb6fa9bf3b
Change: Display cargo lists in sorted cargo order. (#11383) 2023-10-20 17:32:17 +01:00
Tyler Trahan
088db62dba
Change: Always allow expanding towns in Scenario Editor to build new roads (#11377) 2023-10-19 17:01:45 -04:00
Jonathan G Rennison
4df2640f87 Fix: Tile slope missing from road stops varact2 variable 0x42 2023-10-19 20:05:36 +02:00
Peter Nelson
e1c83869ed
Fix: Scale minimum width for server name by interface scale. (#11381) 2023-10-19 17:06:47 +00:00
Peter Nelson
9602de474d Codechange: Use iterators and/or range-for on cargo related loops. 2023-10-19 17:03:25 +01:00
Peter Nelson
2a88e0fab3 Codechange: Use bitmask instead of array for cargo consistency check.
We only need to know if a cargo type is accepted, not how much.
2023-10-19 17:03:25 +01:00
Jonathan G Rennison
a1c6923c63
Fix: Assertion in sprite aligner window (#11371)
When clicking sprite number after re-opening window having previously used sprite picker tool
2023-10-17 16:25:48 -04:00
Loïc Guilloux
ab805c4e9e
Fix #11375, 7c37dcb: Use STRING2 when the passed string can have 2 parameters (#11376) 2023-10-16 17:49:44 +00:00
Tyler Trahan
f49ffaaaea
Fix e4fd99a, Fix #11270: Vehicle max age is not subject to leap years (#11372) 2023-10-15 22:34:03 +00:00
Peter Nelson
356a5d5773
Codechange: Use std::vector in fallback layouter, and shorten accessors. (#11355)
This avoids use of malloc/free (and custom move constructors), and follows how the exist layouters are written.
2023-10-15 21:59:10 +01:00
translators
2be1b72a5b Update: Translations from eints
hungarian: 50 changes by Norodix
2023-10-15 18:36:51 +00:00
translators
a73ef95a2b Update: Translations from eints
chinese (simplified): 5 changes by WenSimEHRP
2023-10-14 18:37:25 +00:00
Rubidium
adad078b55 Fix #11367, 7c37dcb: use STRING1 when the passed string can have a parameter 2023-10-14 12:15:25 +02:00
Peter Nelson
bdcf6b6acd Fix: Treat closing network relay window as a choice of "No".
Issue ConnectFailure when closing the window if the relay request is
considered unhandled.
2023-10-13 20:47:28 +01:00
Peter Nelson
f379b31e28 Add: data parameter in Window::Close method.
This allows passing data when closing a window, e.g. to indicate how it was closed.
2023-10-13 20:47:28 +01:00
Peter Nelson
cda6f24fe8
Change: Filter duplicate paths from valid search path list. (#11363) 2023-10-09 21:38:13 +00:00
Loïc Guilloux
0458c15060
Cleanup: [MacOS] Remove unneeded WITH_SDL checks (#11360) 2023-10-09 19:35:15 +02:00
Peter Nelson
ac9db3f5aa
Codechange: Don't use bit-field in Yapf rail node. (#11362)
Compacting 3 booleans into 3 bits could save memory allocation, however this data is inside a union which also contains a 4-byte integer. As such this gives the cost penalty of a bit-field without any benefit.
2023-10-09 12:11:55 +00:00
translators
84201a8520 Update: Translations from eints
chinese (traditional): 80 changes by wpi3
chinese (simplified): 1 change by WenSimEHRP
2023-10-07 18:37:44 +00:00
Peter Nelson
2fd3d943aa
Fix 94167dfd: Don't shade the currently selected engine in autoreplace window. (#11354)
This breaks #7729 which specifically allows autoreplace of same engine types, and also did not work properly if the engine had been built during the current game session.
2023-10-06 21:09:24 +01:00
translators
89acfc7ff9 Update: Translations from eints
chinese (simplified): 1 change by WenSimEHRP
indonesian: 12 changes by liimee
2023-10-04 18:39:06 +00:00
Peter Nelson
d1a94d75e1
Fix: Incorrect include path for timers. (#11351) 2023-10-04 17:02:16 +01:00
translators
7145b7060a Update: Translations from eints
romanian: 3 changes by bnegrut
2023-10-03 18:39:41 +00:00
merni-ns
c794676928
Fix #10763, Fix #11168: Display variant groups that consist only of unavailable sub-groups (#11342) 2023-10-03 12:43:15 +00:00
Peter Nelson
5869f790d8
Fix: Check for engine variant loops during NewGRF initialization. (#11343)
Invalid NewGRFs could set up an engine variant loop that never ends. This
was checked for in some places that evaluated variants, but not all. In
most cases this would result in the engines not appearing, but could
potentially cause an infinite loop and crash.

Instead, during NewGRF initialization detect loops and remove invalid
variants before setting display flags.
2023-10-03 12:14:32 +01:00
merni-ns
077b08bbfa
Fix #11261: Set number of items correctly when choosing available airport set (#11344) 2023-10-03 12:58:44 +02:00
frosch
82c8720814 Fix #8846: When upgrading NewGRF presets, copy NewGRF parameters only if the NewGRF are compatible. Otherwise reset to defaults. 2023-10-02 22:32:30 +02:00
frosch
d75a5e1a9a Fix: Upgrading NewGRF presets could result in incomplete display of NewGRF parameters until restart. 2023-10-02 22:32:30 +02:00
translators
c84219a42e Update: Translations from eints
english (us): 1 change by 2TallTyler
vietnamese: 21 changes by KhoiCanDev
2023-09-30 18:37:10 +00:00
Peter Nelson
b5dc9328f2
Change: Store station blocked/wires/pylons flags in map. (#11337)
This stores three flags in unused map bits, and avoids having to look up
station graphics and custom station specs to determine blocked/wires/pylons
status.

This potentially affects rail pathfinding performance.

Savegame version is not bumped, as the flags can just be updated every
time.
2023-09-30 12:30:25 +01:00
translators
fd79d34ba9 Update: Translations from eints
korean: 1 change by telk5093
2023-09-27 18:39:05 +00:00
translators
beafdadde4 Update: Translations from eints
italian: 25 changes by Rivarossi
2023-09-26 18:39:04 +00:00
Peter Nelson
015fbafe34 Codechange: Add missing override specifiers to squirrel. 2023-09-25 21:27:45 +01:00
Peter Nelson
49dae08a3b Codechange: Add missing override specifiers. 2023-09-25 21:27:45 +01:00
translators
a650194227 Update: Translations from eints
finnish: 1 change by hpiirai
2023-09-25 18:38:49 +00:00
translators
976f8c474f Update: Translations from eints
chinese (simplified): 139 changes by BYXxiaonanhui
catalan: 23 changes by J0anJosep
portuguese (brazilian): 1 change by pasantoro
2023-09-24 18:36:59 +00:00
translators
f8303b0397 Update: Translations from eints
english (au): 1 change by krysclarke
russian: 1 change by Ln-Wolf
danish: 1 change by bscargo
dutch: 1 change by Afoklala
french: 1 change by ottdfevr
portuguese: 1 change by azulcosta
polish: 68 changes by pAter-exe
2023-09-22 18:37:34 +00:00
Peter Nelson
398c7e5f9d Codechange: Use new function to get a bitmask of empty cargo types. 2023-09-21 18:29:02 +01:00
Peter Nelson
69ee38bd43 Codechange: Use GetAcceptanceMask() instead of duplicating it. 2023-09-21 18:29:02 +01:00
PeterN
6d675c8acf
Fix: #11329: Don't assert vehicle list length is non-zero when only asked to set string parameter. (#11330)
Since #11321, the vehicle list is not yet initialized when SetStringParameters is called, so a test that the vehicle list size is zero is triggered. However, doing this check in the SetStringParameters function is a bit out of its remit, so just remove it.
2023-09-21 13:24:53 +01:00
PeterN
cef6a5f79c
Fix #11326: Update autoreplace scrollbar count after clearing engine list. (#11327) 2023-09-21 07:42:49 +01:00
Joan Josep
6b7537646d
Fix: Allow NewGRF inspection of road tiles. (#11323) 2023-09-20 22:54:34 +01:00
Peter Nelson
122bfa2afd Codechange: Use less locals for station free names bitmask. 2023-09-20 21:57:51 +01:00
Peter Nelson
aeaa552385 Codechange: Use std::bitset instead of bool array.
This avoids use of C-style pointers and memset.
2023-09-20 21:57:51 +01:00
Peter Nelson
2eacf36d0a Codechange: List fallback station names by ID instead of magic number.
This improves readability and intention of the station name generator.
2023-09-20 21:57:51 +01:00
frosch
f40816503f Codechange: Add enum items for dynmically created setting dropdowns. 2023-09-20 22:35:32 +02:00
frosch
39e67b6f4c Codechange: Use existing widget ids instead of raw numbers. 2023-09-20 22:35:32 +02:00
frosch
e0df937247 Fix b5885295: NewGRF preset dropdown was broken. 2023-09-20 22:35:32 +02:00
translators
72323ae9e6 Update: Translations from eints
danish: 20 changes by bscargo
2023-09-20 18:38:51 +00:00
Joan Josep
b9a1cb5d7c
Fix: Spelling of NIHAirport. (#11322) 2023-09-20 20:22:37 +02:00
PeterN
a0c6259e33
Codechange: Don't access cargo filter before it is initialized. (#11321)
The cargo filter list is initialized during window OnInit, but the first
build of the filtered list occurred before this.
2023-09-20 08:58:08 +01:00
PeterN
48dc4219ea
Codechange: Don't pass GUI cargo filter constants to command system. (#11320)
CMD_BUILD_VEHICLE expects CT_INVALID to indicate a new vehicle should not
be refitted on build, but the code passed CF_NONE instead. CF_NONE has the
same numeric value at CT_INVALID, so the test passed, but...
2023-09-20 08:56:53 +01:00
frosch
6b586dddad Cleanup: TransmitNotesOff is only called with buffer==_buffer. 2023-09-19 22:49:59 +02:00
frosch
c84fd30317 Codechange: Add missing 'override'. 2023-09-19 22:49:59 +02:00
frosch
a7707302e6 Codechange: silence false warning. 2023-09-19 22:49:59 +02:00
frosch
55da426d44 Codechange: All ParagraphLayoutFactory::AppendToBuffer assume that the buffer has at least some space.
Assert on that.
2023-09-19 22:49:59 +02:00
frosch
baf7cc858b Codechange: Rename ship docking tile related functions. 2023-09-19 22:49:59 +02:00
frosch
5733145c59 Cleanup: Remove unneeded parameters. 2023-09-19 22:49:59 +02:00
frosch
b5885295f0 Codechange: Use parameters, which should be used. 2023-09-19 22:49:59 +02:00
frosch
b6c8f301be Codechange: Silence warnings about intentionally unused parameters. 2023-09-19 22:49:59 +02:00
Patric Stout
df400ef84a
Fix: only count distance traveled in vehicles for cargo payment (#11283)
No longer you can utilize the free (and instant) labour of station
workers, transporting your cargo from one part of the station to
the other. No more!

Based on patch by dP.
2023-09-19 22:16:31 +02:00
translators
710722e3c1 Update: Translations from eints
korean: 1 change by telk5093
2023-09-19 18:38:46 +00:00
Peter Nelson
6fb89b189f Fix #11315: Sort industries and cargoes by name* in industry chain window.
*Cargo types are sorted by the normal method so it's not strictly alphabetical.
2023-09-19 12:25:20 +01:00
Peter Nelson
106f29f761 Codechange: Use iteration to copy cargo list into CFT_CARGO. 2023-09-19 12:25:20 +01:00
Peter Nelson
4f8d06ff73 Codechange: Use uint8_t instead of byte for numeric values. 2023-09-19 12:25:20 +01:00
Peter Nelson
9457bda614 Codechange: Use std::fill instead of memset when initializing GUI cargo fields. 2023-09-19 12:25:20 +01:00
PeterN
18e75dbc88
Fix: Don't produce invalid cargo. (#11314)
Production for secondary industries did not always check that the produced cargo type isn't valid.
2023-09-18 22:43:03 +01:00
Peter Nelson
fd2dd4397f Codechange: Use range-for and iterator to populate default cargo table. 2023-09-17 21:26:01 +01:00
Peter Nelson
280dce9543 Codechange: Reorder CargoSpec to reduce alignment padding. 2023-09-17 21:26:01 +01:00
Peter Nelson
e8cbc3c2c7 Codechange: Simplify initialization of default cargoes. 2023-09-17 21:26:01 +01:00
Rubidium
3a2509198f Codechange: use better location for the "invalid" action sentinel value
It used to be a random sentinel for end-of-(widget-)list that was used to tell
that no action has taken place yet. Since the last action is practically the
widget that was pressed, add the sentinel to that enumeration.
2023-09-17 19:44:20 +02:00
Rubidium
09a7902d36 Fix 8ab0936: missed WIDGET_LIST_END removals 2023-09-17 19:44:20 +02:00
Jonathan G Rennison
3afb732c37 Fix #11307: Incorrect GroupStatistics after selling leading wagon
When this results in a countable consist
2023-09-17 18:42:37 +01:00
Peter Nelson
14bcfff6f5 Codechange: Rename INVALID_CARGO to INVALID_CARGO_BITNUM
... to avoid future ambiguity.
2023-09-17 16:56:07 +01:00
Peter Nelson
9d1b131c44 Codechange: Use correct constant for invalid cargo type. 2023-09-17 16:56:07 +01:00
Rubidium
7ef22af2bb Codechange: introduce and use function to raise and dirty a set of widgets when they are lowered 2023-09-17 16:03:01 +02:00
PeterN
6580ff1adb
Fix #11230: Widget layout also failed for group-less vehicle list window. (#11310) 2023-09-17 10:03:24 +00:00
Rubidium
4cf88e068a Remove: unused include of cstdarg/stdarg.h 2023-09-16 23:09:53 +02:00
Rubidium
8ab0936491 Codechange: use parameter pack/folding instead of va_arg macros for widget states 2023-09-16 23:09:53 +02:00
translators
30eba33f1e Update: Translations from eints
english (us): 20 changes by 2TallTyler
2023-09-16 18:37:38 +00:00
frosch
c6f5b57f13
Fix #11297, 4e9a871: SCC_GENDER_LIST tried to determine the gender from the wrong sub-string. (#11299) 2023-09-15 15:25:25 -04:00
Patric Stout
39ef4b503f
Fix: also apply cargo filters on shared groups in vehicle listing (#11294) 2023-09-15 21:22:58 +02:00
translators
8d90448153 Update: Translations from eints
romanian: 18 changes by bnegrut
turkish: 22 changes by densxd
dutch: 20 changes by Afoklala
portuguese: 21 changes by azulcosta
2023-09-15 18:37:57 +00:00
Jonathan G Rennison
42170e6c2b Codechange: Rename RoadType parameter of MakeRoadDepot
See: #9642
2023-09-15 18:21:12 +02:00
frosch
a3f661cb66
Fix: compilation failed on gcc 10.2 due to missing include. (#11300)
'_exit' is defined in 'unistd.h'.
2023-09-15 09:26:03 +01:00
translators
ba51a34b4c Update: Translations from eints
english (au): 20 changes by krysclarke
korean: 25 changes by telk5093
russian: 20 changes by Ln-Wolf
finnish: 20 changes by hpiirai
french: 20 changes by glx22
portuguese (brazilian): 20 changes by pasantoro
2023-09-14 18:37:08 +00:00
Patric Stout
37e2f99c09
Change: store crash logs in JSON format (#11232) 2023-09-14 20:13:27 +02:00
Peter Nelson
a0353af223 Codechange: Shuffle Depot members to reduce padding. 2023-09-14 09:50:58 +01:00
Peter Nelson
2fdc22e7ea Codechange: Shuffle CargoPayment members to reduce padding. 2023-09-14 09:50:58 +01:00
PeterN
a3c70ee6fb
Codechange: Pass by reference and use emplace-at-end for CargoSummary. (#11296) 2023-09-14 08:41:33 +00:00
Loïc Guilloux
b4ff06b6ef
Fix: marked text was not updated during text deletion (#11293) 2023-09-13 20:59:34 +00:00
translators
fca62c245f Update: Translations from eints 2023-09-13 18:38:58 +00:00
Loïc Guilloux
220f93f552
Fix: IConsoleWindow:GetTextBoundingRect() is incorrect (#11292) 2023-09-13 16:07:55 +00:00
Daniel Robinson
71c2878799
Fix #10600: 'Replace Vehicles' didn't show numbers >999 (#10680) 2023-09-13 15:19:44 +00:00
Patric Stout
9c49a61249
Fix: base cargo payment on load/unload tile, instead of station sign location (#11281) 2023-09-13 14:41:09 +00:00
Patric Stout
ba67f39db6
Codechange: vendor the nlohmann-json library (#11290) 2023-09-13 16:11:34 +02:00
Niels Martin Hansen
41de0d46f3 Feature: Help and manuals access window 2023-09-13 16:11:08 +02:00
Niels Martin Hansen
4765d0f8c2 Change: Text Layouter support querying all lines for character at pixel 2023-09-13 16:11:08 +02:00
Patric Stout
d1a0ca67be
Codechange: simplify splitting of CargoPacket (#11286) 2023-09-13 09:40:01 -04:00
translators
a16aa3ef7d Update: Translations from eints
swedish: 1 change by joeax910
2023-09-12 18:38:00 +00:00
translators
3fd50c2949 Update: Translations from eints
swedish: 2 changes by optiedev
vietnamese: 11 changes by KhoiCanDev
romanian: 5 changes by bnegrut
danish: 2 changes by bscargo
dutch: 2 changes by Afoklala
portuguese: 2 changes by azulcosta
polish: 15 changes by pAter-exe
2023-09-11 18:38:29 +00:00
PeterN
acd7d3c913
Codechange: Rename *Railtype* to *RailType* for consistency. (#11287) 2023-09-11 08:55:12 +00:00
PeterN
a0b2f28f9c
Codechange: Use std::copy/fill pattern to initialize rail and road specs. (#11285)
This avoids use of lengthof and array indices.
2023-09-10 23:01:08 +00:00
Patric Stout
7e3cdbaf62 Fix: mark next_station as INVALID_STATION when loading from older savegames 2023-09-11 00:25:47 +02:00
Patric Stout
9e3763cfb3 Fix b0e73277: save/load next_station for CargoPacket again 2023-09-11 00:25:47 +02:00
Patric Stout
1243c331b6 Fix: don't compare next_station when trying to merge CargoPackets
For vehicle packets they shouldn't be compared, and for station
packets they are already in a bucket per next_station.
2023-09-11 00:25:47 +02:00
Patric Stout
9f8c1ea552 Codechange: rename next_station to next_hop to avoid confusing with another next_station 2023-09-11 00:25:47 +02:00
Patric Stout
a0f6983be4 Codechange: remove parameter from VehicleCargoList::Reassign that is always INVALID_STATION 2023-09-11 00:25:47 +02:00
PeterN
6643c010bd
Fix: NewGRF house class mappings were not reset between games. (#11279) 2023-09-10 18:55:37 +01:00
Michael Lutz
1c620b349f Feature: [NewGRF] Related Act2 objects for airports and airport tiles.
Airports are similar two stations and industries, both of which have the town as related object.
Airport tiles are similar to industry tiles, which have the industry as related object.
This seems a sensible structure, so let's make it Airport Tile -> Airport -> Town.
2023-09-10 19:38:18 +02:00
Michael Lutz
a6f2f3c042 Add: [NewGRF] Inspection window for airports.
As as the station window combines all station types, accessing the
debug view is via the parent of the airport tile only.
2023-09-10 19:38:18 +02:00
Patric Stout
e6c02ebee6
Fix b0e73277: cargodist information got lost when splitting of cargo (#11280)
During b0e73277 we removed loaded_at_xy, but I kinda forgot that
it was a union with next_station. Now next_station wasn't copied
anymore, or checked in AreMergable.
2023-09-10 15:20:58 +02:00
Tyler Trahan
701a61c9af Codechange: Delete date_type.h 2023-09-10 08:40:25 -04:00
Tyler Trahan
77173a6a10 Codechange: Move date consts and functions to CalendarTime and TimerGameCalendar classes 2023-09-10 08:40:25 -04:00
Tyler Trahan
fca2b37726 Codechange: Move Ticks into their own class 2023-09-10 08:40:25 -04:00
Patric Stout
30172fc037
Codechange: cleanup CargoPacket in terms of variable/function names (#11278)
Over the years, things got reused and changed, making the current
names somewhat unclear in what they actually mean and do.
2023-09-09 23:21:21 +02:00
Patric Stout
b0e73277d6
Codechange: remove loaded_at_xy from CargoPacket as it was unused (#11276) 2023-09-09 20:24:46 +01:00
Peter Nelson
f3b4f9d640 Codechange: Reduce size of TextEffectMode and TextEffectID.
TextEffectID was promoted to size_t in #9235, when it was used in loops.
However since then the relevant code uses range-for or iterators instead.
2023-09-09 19:26:47 +01:00
Peter Nelson
f6939d6c4d Codechange: Make INVALID_TE_ID a TextEffectID instead of a TextEffectMode.
Type-correctness?
2023-09-09 19:26:47 +01:00
Peter Nelson
3c61c642a9 Codechange: Don't allocate a text effect with INVALID_TE_ID.
Previously, despite INVALID_TE_ID existing, it was not checked during allocation and there was no limit to the number of text effects.
2023-09-09 19:26:47 +01:00
Peter Nelson
78b841d14e Codechange: Take reference to text effect instead of pointer when updating. 2023-09-09 19:26:47 +01:00
Peter Nelson
7519f7ad79 Codechange: Use std::find_if to find or assign a text effect slot.
This replaces an index-based loop.
2023-09-09 19:26:47 +01:00
Peter Nelson
7bd019df90 Codechange: Use std::array for TemporaryStorageArray.
This removes the need for initialisation with memset().
2023-09-09 15:26:03 +01:00
Peter Nelson
9040d7813d Codechange: Use std::array and std::unique_ptr for PersistentStorageArrays.
This (mostly) avoids the need for manual memory management and copying.
2023-09-09 15:26:03 +01:00
Patric Stout
c3918838f6
Fix: crash when opening a damaged base-graphics (#11275) 2023-09-09 14:06:00 +00:00
PeterN
afc1ea8135
Codechange: Using alias and std::array for company expense storage. (#11273)
This simplifies passing yearly expenses to functions and use of std algorithms.
2023-09-09 13:15:53 +00:00
Patric Stout
00f13282a9
Codechange: keep how we convert string <-> JSON private (#11269) 2023-09-08 19:03:10 +02:00
Patric Stout
d725fa14a2
Fix: asserts unintentially being partially disabled in release-builds (#11268)
The nlohmann-json header file includes assert.h, which rudely resets
the assert macro to what that header thinks is right. As we set the
assert macro to be active with release builds when WITH_ASSERT is
active, this means that every file including nlohmann-json has their
asserts disabled (for release-builds) but files that don't do no.

Let's avoid this issue, by telling nlohmann to not include assert.h.
2023-09-08 10:11:37 +00:00
Rubidium
8c742b456f Codechange: use Textbuf directly, instead via several virtual functions in Window 2023-09-06 23:07:04 +02:00
Jonathan G Rennison
0316940fe8
Fix: Inaccurate waiting cargo total in station window when using cargodist (#11213)
For stations with many flows and/or small cargo packets,
due to accumulated inaccuracies in DivideApprox.

The displayed total should match GoodsEntry::TotalCount().
2023-09-06 21:36:26 +02:00
Patric Stout
5f9b8aaa95
Codechange: [Script] use nlohmann for Squirrel <-> JSON conversion (#11251) 2023-09-06 13:14:12 +02:00
translators
6e8d7964ed Update: Translations from eints
english (us): 4 changes by 2TallTyler
2023-09-05 18:38:17 +00:00
translators
9d2920e9c5 Update: Translations from eints
french: 2 changes by ottdfevr
2023-09-04 18:38:09 +00:00
Patric Stout
337b7b0c63
Fix 8c9ecde9: actually remove autosave_interval from setting window (#11260) 2023-09-04 11:18:47 +00:00
Peter Nelson
152b0cac34 Codechange: Return update nwid_begin instead of count.
This avoids needing to keep track of how many widget parts have been consumed, instead we only to ensure nwid_begin < nwid_end.
2023-09-04 10:20:45 +01:00
Peter Nelson
e8015e497d Codechange: Use begin/end of nwidget parts of begin/length.
This simplifies processing nwidget parts as, unlike the remaining length, the pointer to the end of the list never changes. This is the same principle as we use(d) for tracking end instead of length for C-style strings.

And this removes 160~ instances of the lengthof() macro.
2023-09-04 10:20:45 +01:00
Peter Nelson
e4613fc04c Codechange: Allow using more than 65536 NewGRF string IDs.
NewGRF string allocation allowed up to 524288 strings, however stringid was passed as uint16_t which limits to 2^16.
2023-09-04 09:49:09 +01:00
Peter Nelson
3e762af2d1 Change: Replace fixed length _grf_text array with vector.
Additionally reshuffle GRFTextEntry for better alignment.

This removes a mostly-unused static 20MB allocation.
2023-09-04 09:49:09 +01:00
translators
dadf5182d8 Update: Translations from eints
english (au): 2 changes by krysclarke
russian: 3 changes by Ln-Wolf
finnish: 2 changes by hpiirai
portuguese (brazilian): 2 changes by pasantoro
2023-09-03 18:38:15 +00:00
PeterN
bd150df914
Codechange: Reorder some high-use structs to reduce their size. (#11201)
This reduces GoodsEntry from 144 to 136 bytes (thereby reducing Station from 9704 bytes to 9192 bytes), and CargoPacket from 40 bytes to 32 bytes.
2023-09-02 20:56:36 +00:00
translators
5c2e4ee6fe Update: Translations from eints 2023-09-02 18:38:13 +00:00
Bouke Haarsma
7e54418022
Codechange: workaround CMake/Xcode duplicate file name issue (#11186)
Having a library with files with the same name isn't supported in CMake's Xcode project file generation: https://gitlab.kitware.com/cmake/cmake/-/issues/20501. One of the files is renamed to work around this bug.
2023-09-02 19:46:52 +02:00
Michael Lutz
0089323542 Add: [Script] Custom news message text for industry SetProductionLevel. 2023-09-02 16:20:59 +02:00
Michael Lutz
1c56991213 Add: [Script] Game script control of industry production level. 2023-09-02 16:20:59 +02:00
mrmbernardi
a5c8365aa4
Feature: Setting to disallow level crossings with competitors (#10755) 2023-09-02 12:46:24 +02:00
frosch
236ec41fa2
Fix #11230: Group list widget layout failed, if dropdown widgets were higher than the font height. (#11231) 2023-09-02 12:45:19 +02:00
translators
6ab169fbe0 Update: Translations from eints
dutch: 1 change by Afoklala
2023-09-01 18:38:57 +00:00
Patric Stout
7afd686541
Codechange: add tests for GS <-> AdminPort JSON conversion (#11252)
While at it, fix a bug where booleans were made integers.
2023-08-31 19:38:15 +00:00
Patric Stout
993e7be707
Fix: [Script] GSAdmin.Send() could generate invalid JSON (#11250) 2023-08-31 16:52:52 +00:00
glx22
4eddec9e79 Add: [Emscripten] Support for bootstrapping 2023-08-31 12:59:12 +02:00
glx22
3d1c4a8589 Codechange: [Emscripten] Improve syncfs synchronisation on exit/abort 2023-08-31 12:59:12 +02:00
Patric Stout
502414b567
Fix: [Emscripten] config not saved on exit game (#11248)
When changing a Game Option and pressing Exit Game, the changes
were not actually stored. This because the post-mainloop code
was never executed for Emscripten.
2023-08-31 10:10:11 +01:00
Patric Stout
ecb4bb5161
Change: for surveys capture more information about the OpenTTD version (#11244) 2023-08-30 12:14:32 +02:00
translators
5e75afb628 Update: Translations from eints
catalan: 2 changes by J0anJosep
2023-08-28 18:38:07 +00:00
Patric Stout
a3d631ffed
Change: make nlohmann a mandatory library to build OpenTTD (#11235) 2023-08-28 19:04:36 +02:00
Patric Stout
abc060525d
Add: calendar date for Survey results
This means no heuristics is possible on around which date people
play the game.
2023-08-28 13:02:52 +02:00
Patric Stout
b0d7cfaa3d
Change: [Win32] don't allocate 192KiB of memory on the stack on crash (#11240)
Heap is out of the question, as it might be corrupted.
Allocating this much on stack is silly.

So instead, allocate virtual pages to write the information in.
2023-08-28 12:14:11 +02:00
Patric Stout
de5e338a76
Change: mention in MacOS / Windows crashlog popup when files couldn't be generated (#11239)
For example, if the crash.sav couldn't be created, and the TryExcept
detected an issue, write out that the file is not available in
the popup.
2023-08-27 22:49:12 +00:00
Joan Josep
be9a690f41
Fix #9642: Keep infrastructure totals when overbuilding road depots. (#11229) 2023-08-28 00:20:37 +02:00
Patric Stout
d4312c59a4
Codechange: [MacOS] use backtrace() instead of our custom variant (#11233)
As mentioned in the comment, we only did it ourselves as we once
were compatible with versions before 10.5. But that time has long
gone. So let's update the code to a bit more modern approach.
2023-08-27 22:32:11 +02:00
Joan Josep
5e6b5d981f
Codechange: Use existing functions in GetMonthlyInfrastructureCosts. (#11237) 2023-08-27 22:12:44 +02:00
Patric Stout
b00e483b0f
Change: recover when possible from crashes during a crash (#11238) 2023-08-27 21:54:05 +02:00
translators
99e4a14cdf Update: Translations from eints
english (au): 1 change by krysclarke
finnish: 3 changes by hpiirai
danish: 1 change by bscargo
french: 1 change by glx22
portuguese (brazilian): 1 change by pasantoro
2023-08-27 18:39:02 +00:00
Patric Stout
29a37c2e0b
Change: [Win32] unify the crashlog handler with the other OSes (#11236)
While at it, make the crash text a bit more readable, and sync
this with MacOS.
2023-08-27 17:58:31 +00:00
translators
f2841e62d9 Update: Translations from eints
russian: 1 change by Ln-Wolf
turkish: 1 change by densxd
portuguese: 1 change by azulcosta
polish: 3 changes by pAter-exe
2023-08-26 18:38:15 +00:00
translators
6726918ab0 Update: Translations from eints
catalan: 30 changes by J0anJosep
2023-08-25 18:38:04 +00:00
Richard Wheeler
96fdfb941a
Feature: Transparency option for cost and income indicators (#11001) 2023-08-25 16:04:40 +02:00
Joan Josep
a938067d6b
Codechange: Invalid depot value is unrelated to invalid station value. (#11227) 2023-08-25 14:29:51 +02:00
translators
9aef380c99 Update: Translations from eints
italian: 43 changes by Rivarossi
french: 1 change by ottdfevr
2023-08-24 18:38:24 +00:00
translators
4d4a046d23 Update: Translations from eints
polish: 2 changes by pAter-exe
2023-08-22 18:39:08 +00:00
Jonathan G Rennison
2cbd76593a
Fix #11215: Assert in NewGRF parameters window (manual parameter mode) (#11217) 2023-08-21 12:42:33 +02:00
Rubidium
6635f809dd Fix #11181: attempting to read string as int triggers assertion 2023-08-20 23:57:42 +02:00
Jonathan G Rennison
8df4aa7979
Fix: Road stops should not draw a ground sprite of 0 (#11214) 2023-08-20 15:46:19 -04:00
Patric Stout
45cc3acaf5
Codechange: [Win32] unify AppendDecodedStacktrace and LogStacktrace (#11220)
AppendDecodedStacktrace was already doing the same as LogStacktrace,
just with a different name.
2023-08-20 18:57:01 +00:00
translators
bc2dfc4691 Update: Translations from eints
turkish: 2 changes by BeratSJ
2023-08-20 18:39:09 +00:00
Patric Stout
352ac264a5
Remove: [Win32] module-list from crash.log (#11219)
Only Windows implemented this, and it opens the files to read them
to get a CRC. Doing this in a crash-handler is strange at best.

Lastly, nobody has actually ever used this information to come to
some sort of conclusion. The module-list is used in combination
with the crash.dmp, but this information is already embedded in
there.
2023-08-20 17:09:21 +00:00
Patric Stout
f120d2beb8
Add: use breakpad to create crash.dmp on MacOS / Linux too (#11202)
Normally only the Windows platform could create a crash.dmp, making
analysing crash-reports from MacOS / Linux rather tricky.
2023-08-20 17:16:08 +02:00
Patric Stout
8f6df242c4
Remove: [Win32] (pointer-only) stack trace in crash.log (#11211)
It only contains pointers, which nobody can decipher anyway.
So instead, just report "Not supported", like other targets do
when they can't print a sane stack trace.
2023-08-20 17:08:16 +02:00
Patric Stout
a5aebeb1b5
Remove: [Win32] register values in crash.log (#11212) 2023-08-20 16:59:22 +02:00
Loïc Guilloux
8c9ecde964
Change: Remove autosave from settings window (#11218)
It is broken since 4f4810d and it's also in game options.
2023-08-20 14:33:02 +00:00
translators
93f4f1e83a Update: Translations from eints
german: 40 changes by Wuzzy2
2023-08-19 18:38:46 +00:00
Patric Stout
cd10ddf9ae
Remove: last remnants of SunOS (#11210)
We have no evidence SunOS has been tried in the last few years,
and the code is awkward enough to just remove.
2023-08-19 00:52:58 +02:00
translators
7f5c0aab60 Update: Translations from eints
dutch: 2 changes by Afoklala
2023-08-18 18:38:21 +00:00
Patric Stout
5ac333c2cc
Fix: [MacOS] screen looks blue-ish when using newer SDKs (#11207)
The define kCGBitmapByteOrder32Host changed (around SDK 12?)
into an enum, which means an old #ifndef was triggering,
overwriting the value to 0. Sadly, 0 means Order16Big, causing
RGBA to become GRAB, which results in strange colours.

As we no longer support PPC, drop that piece of code completely.
2023-08-18 13:22:00 +02:00
Loïc Guilloux
2bf3c02fbf
Fix: no fast forward in network was ensured only from GUI side (#11206) 2023-08-17 21:14:39 +02:00
translators
e8c49d3543 Update: Translations from eints
swedish: 1 change by joeax910
2023-08-17 18:38:20 +00:00
Jonathan G Rennison
9061fef59c
Fix #11203: [ICU] Glyph to char mapping with multiple runs (#11204) 2023-08-16 19:17:02 +00:00
translators
db1a9f00c0 Update: Translations from eints
dutch: 1 change by Bouke
2023-08-16 18:38:51 +00:00
Patric Stout
07730584d7
Codechange: make explicit when a TileIndex is cast to its basetype (#11190)
This prevents people accidentially assigning a TileIndex to a Date
or any other type they shouldn't.
2023-08-15 18:12:05 +02:00
arikover
5d3f7939e2
Fix d42a78f: Show correct road speed in construction dropdowns (#11196) 2023-08-15 10:34:36 +02:00
Loïc Guilloux
7ef55bdfb0
Cleanup: [CMake] don't add strgen.h twice (#11199) 2023-08-14 21:29:03 +00:00
translators
e652cd6434 Update: Translations from eints
swedish: 1 change by Brickblock1
english (us): 2 changes by 2TallTyler
2023-08-14 18:38:20 +00:00
Tyler Trahan
61dfd74e44
Codechange: Use correct type for max timetable start years constant (#11197) 2023-08-13 21:03:45 +02:00
translators
0726835735 Update: Translations from eints
english (au): 2 changes by krysclarke
french: 1 change by Lishouuu
portuguese (brazilian): 2 changes by pasantoro
2023-08-13 18:38:43 +00:00
Patric Stout
9dc2fbe4fa
Fix 0238a2b5: crash when news message is displayed (#11195) 2023-08-13 10:16:36 +00:00
Rubidium
40195e689d Change: improve wording of help (host instead of IP) and update man page 2023-08-12 22:01:22 +02:00
Rubidium
a8e4d35bde Fix: crash when not passing parameter for -n 2023-08-12 22:01:22 +02:00
translators
56e0d0c7ef Update: Translations from eints
korean: 3 changes by telk5093
russian: 2 changes by Ln-Wolf
portuguese: 3 changes by azulcosta
2023-08-12 18:38:26 +00:00
Patric Stout
9624017fc2
Codechange: be more type-specific about types in NPFs queue (#11192) 2023-08-12 18:18:22 +00:00
Patric Stout
299570b2c1
Codechange: make TimerGameCalendar Date and Year types strongly typed (#10761) 2023-08-12 18:14:21 +00:00
Patric Stout
0238a2b567
Codechange: use std::variant instead of using bitflags in the value (#11191) 2023-08-12 16:05:00 +00:00
Patric Stout
a9ed590ca7
Codechange: use TimerGameCalendar::Date for variables in linkgraph that are dates (#11187) 2023-08-12 16:02:38 +02:00
Patric Stout
b7acf9e50e
Codechange: use TimerGameCalendar::Year and friends when working with years (#11188) 2023-08-12 16:02:31 +02:00
Patric Stout
01f55eb734
Codechange: introduce week/quarter triggers for TimerGameCalendar (#11189)
This simplifies code that triggers on these periods.
2023-08-12 16:02:11 +02:00
Loïc Guilloux
02be6ab6ba
Fix #11179, a979d9c: Don't start more competitors than allowed (#11185) 2023-08-11 22:30:01 +02:00
Tyler Trahan
8ea01c0bfb
Fix #11180: Use TileVirtXY for aircraft crash tile (#11184) 2023-08-11 14:05:16 +00:00
Tyler Trahan
c7b51a8c3a
Codechange: Use proper date types in various places (#11177) 2023-08-11 13:32:42 +00:00
Patric Stout
c9c9cfa4fd
Codechange: simplify the type of loaded_at_xy / next_station (#11182)
It was TileOrStationID, most likely to make sure both types in
the union are identical. But as TileIndex is a StrongTypeDef
that becomes a bit weird. So instead, still make sure they are
of equal size, but define their individual types better.
2023-08-11 12:55:55 +00:00
Patric Stout
5fba47b0f7
Codechange: make no assumptions on how the internals of TileIndex work (#11183)
Basically, avoid ".value", and just cast it to its original type
if you want to retrieve this.
2023-08-11 14:53:51 +02:00
Tyler Trahan
6190f48df0
Codechange: Add a DateToYear function instead of dividing each time (#11173) 2023-08-11 08:19:54 -04:00
Tyler Trahan
4928ccf916
Fix #10478: Clarify airport noise control setting texts (#11169) 2023-08-11 08:19:26 -04:00
Tyler Trahan
e4fd99a33a
Codechange: Use DateAtStartOfYear() instead of multiplying by DAYS_IN_LEAP_YEAR (#11174) 2023-08-11 08:18:59 -04:00
Tyler Trahan
93069066f9
Codechange: Use auto type when sorting dates (#11175) 2023-08-11 08:18:32 -04:00
Tyler Trahan
6f057cbe6a
Codechange: Use proper date type in ClickChangeDateCheat (#11176) 2023-08-11 07:52:59 -04:00
translators
c2fc2d2ed5 Update: Translations from eints
romanian: 48 changes by bnegrut
2023-08-09 18:40:24 +00:00
translators
4daa00c22a Update: Translations from eints
slovak: 53 changes by legitalk
2023-08-07 18:38:52 +00:00
translators
2bc97fae66 Update: Translations from eints
swedish: 45 changes by joeax910
portuguese: 106 changes by azulcosta
2023-08-06 18:38:21 +00:00
Tyler Trahan
9a602ff304
Fix #10334: Store separate newgrf-safe version of date_of_last_service. (#11124)
This value is not changed when the date cheat is used, which caused issues with changing properties based on service date.

Co-authored-by: Peter Nelson <peter1138@openttd.org>
2023-08-06 12:57:10 -04:00
translators
77c00dfe98 Update: Translations from eints
slovak: 9 changes by legitalk
dutch: 3 changes by Afoklala
2023-08-04 18:38:28 +00:00
translators
9d376dc8e0 Update: Translations from eints
finnish: 1 change by hpiirai
portuguese (brazilian): 1 change by pasantoro
2023-08-03 18:38:02 +00:00
translators
11ba39b435 Update: Translations from eints
korean: 21 changes by telk5093
polish: 1 change by pAter-exe
2023-08-02 18:38:24 +00:00
Jonathan G Rennison
6a048bc168 Fix #11164: Duplicate town names when using the many random towns function 2023-08-02 20:07:59 +02:00
translators
4213a2c909 Update: Translations from eints
russian: 1 change by Ln-Wolf
turkish: 33 changes by densxd
danish: 1 change by bscargo
french: 1 change by Lishouuu
polish: 21 changes by pAter-exe
2023-08-01 18:38:22 +00:00
PeterN
4acb68e539
Fix #11162: Get colour map of correct train part. (#11163) 2023-08-01 15:05:42 +01:00
translators
43559524eb Update: Translations from eints
english (au): 1 change by krysclarke
english (us): 1 change by 2TallTyler
portuguese: 1 change by azulcosta
2023-07-31 18:39:05 +00:00
Tyler Trahan
9876c861e4 Remove: Unused ship pathfinder invalidation setting callback 2023-07-30 18:21:13 -04:00
Tyler Trahan
4decd2aa48 Change: Enable "Forbid 90 degree turns" setting by default 2023-07-30 18:21:13 -04:00
translators
5a2e9be9d3 Update: Translations from eints
vietnamese: 10 changes by KhoiCanDev
french: 15 changes by Lishouuu, 9 changes by ottdfevr
2023-07-30 18:38:12 +00:00
Tyler Trahan
f57296a033
Change: Only show platform stopping location in orders when other than default (#11102) 2023-07-29 17:59:02 -04:00
translators
536d2cb75b Update: Translations from eints
english (au): 4 changes by krysclarke
english (us): 4 changes by 2TallTyler
vietnamese: 2 changes by KhoiCanDev
russian: 21 changes by Ln-Wolf
finnish: 37 changes by hpiirai
portuguese: 24 changes by azulcosta
portuguese (brazilian): 6 changes by pasantoro
2023-07-29 18:38:24 +00:00
Loïc Guilloux
a979d9cdda
Fix #11067, ed83c4b: Don't start competitors during map generation (#11069) 2023-07-29 12:31:33 +02:00
translators
760a194d31 Update: Translations from eints
english (us): 19 changes by 2TallTyler
dutch: 20 changes by Afoklala
2023-07-28 18:38:29 +00:00
Tyler Trahan
6e99326ad2
Fix: Missing hyphenation in various ownership strings (#11155) 2023-07-27 16:40:47 -04:00
translators
41faae8c59 Update: Translations from eints
english (au): 19 changes by krysclarke
vietnamese: 12 changes by KhoiCanDev
danish: 19 changes by bscargo
portuguese: 20 changes by azulcosta
portuguese (brazilian): 19 changes by pasantoro
2023-07-27 18:45:51 +00:00
translators
abc3a96e9d Update: Translations from eints
czech: 6 changes by JakMel
danish: 6 changes by bscargo
2023-07-26 18:38:42 +00:00
Henry Wilson
a9c65a69d0 Feature: Add config option to set default company secondary colour for new games
This does duplicate translation strings for the colours
2023-07-26 16:22:30 +02:00
translators
5653a94490 Update: Translations from eints
czech: 16 changes by JakMel
2023-07-25 18:38:34 +00:00
translators
974e6e220c Update: Translations from eints
korean: 3 changes by telk5093
french: 3 changes by ottdfevr
2023-07-24 18:40:15 +00:00
translators
74fac454d0 Update: Translations from eints
vietnamese: 1 change by KhoiCanDev
2023-07-23 18:38:30 +00:00
translators
d9d0a2c842 Update: Translations from eints
english (au): 3 changes by krysclarke
portuguese (brazilian): 22 changes by pasantoro
2023-07-22 18:38:34 +00:00
PeterN
fd155dfb40
Change: Scale bridge GUI by interface scale. (#11152) 2023-07-22 17:10:18 +01:00
translators
96e937c6cd Update: Translations from eints
norwegian (bokmal): 1 change by buzzCraft
chinese (traditional): 1 change by wpi3
spanish (mexican): 1 change by absay
english (us): 3 changes by 2TallTyler
vietnamese: 13 changes by KhoiCanDev
russian: 3 changes by Ln-Wolf
dutch: 23 changes by Afoklala
lithuanian: 1 change by devbotas
portuguese: 6 changes by azulcosta
polish: 3 changes by pAter-exe
2023-07-21 18:38:52 +00:00
PeterN
44a86e796f
Fix #11061: Missed currency-code suffix removal for some translations. (#11149) 2023-07-21 06:31:04 +01:00
translators
5d27d00821 Update: Translations from eints 2023-07-20 18:39:13 +00:00
Andy
ce9305a5ee
Add: [Script] GSIndustry.GetConstructionDate() method (#11145) 2023-07-20 20:35:37 +02:00
MasonGulu
0be27778af
Add: alternative setting for right-click close window option to exclude pinned windows (#10204) 2023-07-19 23:24:22 +02:00
translators
092a3db745 Update: Translations from eints
finnish: 3 changes by hpiirai
polish: 15 changes by pAter-exe
2023-07-19 18:38:55 +00:00
Jonathan G Rennison
f31a25cd59
Change: Do not allow mixing road/tram types in powered road type list (#11148)
Road/tram property 0F
2023-07-19 19:51:21 +02:00
Rubidium
461b4b8861 Cleanup: remove typedefs for non _t (u)int types and WChar 2023-07-19 19:30:14 +02:00
Rubidium
eaae0bb5e7 Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Patric Stout
4f4810dc28 Fix: store autosave settings under the new names 2023-07-19 13:17:50 +02:00
Patric Stout
790c1b1b02 Codechange: refactor setting conversions and make sure it only happens once
By forcing it only happens once, the first time you upgrade to
a newer client, means you are free to jump between older and newer
versions after that. As they will not resync, the newer setting
can take on any of the (newer) values, without breaking the old
client. And when going to an old client and back, it doesn't
change it back to the converted value anymore.
2023-07-19 13:17:50 +02:00
Patric Stout
ece50d5a1d Codechange: use BoolSettingDesc to parse settings in conversion code 2023-07-19 13:17:50 +02:00
translators
335c7ddac7 Update: Translations from eints
swedish: 22 changes by Brickblock1
2023-07-18 18:40:57 +00:00
translators
61b0143c87 Update: Translations from eints
english (us): 21 changes by 2TallTyler
korean: 3 changes by telk5093
catalan: 27 changes by J0anJosep
turkish: 12 changes by densxd
french: 13 changes by Lishouuu
2023-07-17 18:40:04 +00:00
translators
9c262b0d92 Update: Translations from eints
english (au): 3 changes by krysclarke
russian: 3 changes by Ln-Wolf
portuguese: 3 changes by azulcosta
2023-07-16 18:39:47 +00:00
Jonathan G Rennison
864d2352c2 Fix: Integer overflow in LinkGraphOverlay::ShowTooltip for long links
In particular when fully zoomed in
This could result in tooltips not being shown at all, or being shown
when not appropriate
2023-07-16 10:10:04 +02:00
translators
756c469b8f Update: Translations from eints
english (au): 20 changes by krysclarke
swedish: 2 changes by SkogisREAL
japanese: 2 changes by fmang
welsh: 1 change by Ansbaradigeidfran
english (us): 2 changes by 2TallTyler
galician: 2 changes by pvillaverde
vietnamese: 2 changes by KhoiCanDev
korean: 8 changes by telk5093
hungarian: 1 change by PstasDev
indonesian: 1 change by ecolortest
italian: 2 changes by Rivarossi
german: 2 changes by Wuzzy2
russian: 9 changes by Ln-Wolf
finnish: 2 changes by hpiirai
catalan: 2 changes by J0anJosep
turkish: 2 changes by densxd
danish: 2 changes by bscargo
dutch: 2 changes by Afoklala
french: 2 changes by ZarTek-Creole
portuguese: 28 changes by azulcosta
esperanto: 2 changes by legoscia
portuguese (brazilian): 2 changes by ericandradex
polish: 2 changes by pAter-exe
2023-07-15 18:39:54 +00:00
Rubidium
bfbdaf8723 Update: force remove outdated strings as they can still trigger #11137 for other languages 2023-07-15 06:33:12 +02:00
Rubidium
a184e7f793 Fix #11137: assertion failure due to interpreting string as number 2023-07-15 06:33:12 +02:00
Tyler Trahan
e4be7f4a45
Change: Clean up window title and button capitalization and wording (#11134)
* Change: Use consistent window title format for industry/cargo chains

* Change: Don't capitalize dropdown entry for cargo flow legend

* Change: Use consistent window titles for AI and GS settings

* Change: Use consistent window title for company value graph

* Change: Use consistent window title for industry funding

* Change: Use consistent button title to display industry chain

* Change: Use consistent button capitalization for local authority button on town window

* Fix: Don't capitalize random words in vehicle list management dropdown

* Fix: Use title case for Frame Rate window caption

* Fix: Use title case for Detailed Performance Rating window caption
2023-07-14 10:25:01 -04:00
glx22
46b504a700 Fix: ini_key issues reported by the script 2023-07-14 14:32:46 +02:00
Björn Wärmedal
7de37e07b6
Change: make Exclusive Transport Rights more exclusive (#11076)
Now, exclusive transport rights can only be bought if no company
currently owns them. A successful bribe will void any exclusive
transport rights that any *other* company currently has in the town.
2023-07-14 14:00:28 +02:00
merni-ns
fc9afb2d32
Fix #11115: Focus the abandon game/exit game windows (#11125) 2023-07-14 13:57:45 +02:00
PeterN
c3d1264a4b
Change: Don't save industry history if cargo slot isn't used. (#11133)
This avoids saving history of 16 slots per industry when in many cases (NewGRF dependent) only a couple are used.
2023-07-14 11:12:22 +01:00
Jonathan G Rennison
3ac663e619
Fix: Build road/tram stop windows did not set WindowDesc::ini_key (#11126)
Saved default window sizes were not persisted in the configuration file
2023-07-12 22:07:31 +02:00
translators
7996752fb1 Update: Translations from eints
indonesian: 71 changes by ecolortest
2023-07-12 18:43:54 +00:00
rubidium42
9f6fec01cd
Codechange: rename cargo aging days to periods, as they are not really days (#11112) 2023-07-12 13:20:02 -04:00
Patric Stout
ab19882e94
Codechange: hint in all branches of ClampTo to resolve compile-time (#11130) 2023-07-12 13:54:44 +00:00
Patric Stout
97138acc8a
Codechange: make date-related variables constexpr (#11129)
This hints the compiler even more to result math-related questions
compile-time.
2023-07-12 13:15:24 +00:00
translators
d3181375a4 Update: Translations from eints
danish: 2 changes by bscargo
french: 2 changes by Lishouuu
2023-07-09 18:39:28 +00:00
translators
a54c28f2c3 Update: Translations from eints
polish: 3 changes by pAter-exe
2023-07-08 18:39:43 +00:00
Loïc Guilloux
119ac66c5c
Fix: [Bootstrap] don't crash when failing to connect to content server (#11122) 2023-07-08 14:54:39 +00:00
translators
bd91d249ea Update: Translations from eints
dutch: 3 changes by Afoklala
2023-07-07 18:41:15 +00:00
translators
b2ccc19f2d Update: Translations from eints
vietnamese: 2 changes by KhoiCanDev
2023-07-06 18:40:33 +00:00
Rubidium
18a31cca7c Codechange: do not make a string valid in place, to then copy it 2023-07-06 19:59:50 +02:00
Rubidium
b958a343fe Codechange: the templated StrMakeValidInPlace is not in place 2023-07-06 19:59:41 +02:00
Rubidium
968de827d6 Fix #11108, e2f583a: missing argument for SCC_CARGO_SHORT formatting 2023-07-06 19:46:54 +02:00
translators
9f28da4e33 Update: Translations from eints
tamil: 3 changes by merni-ns
2023-07-05 18:42:59 +00:00
translators
48f25427bc Update: Translations from eints
english (us): 15 changes by 2TallTyler
korean: 2 changes by telk5093
german: 41 changes by Wuzzy2
portuguese (brazilian): 2 changes by pasantoro
2023-07-04 18:43:15 +00:00
Koen Bussemaker
381fa36450 Change: Autorail / autoroad tools can start dragging from invalid tiles 2023-07-04 14:08:32 +02:00
merni-ns
a8a4737c5b
Fix #11096: Increase priority of error and confirmation windows (#11104) 2023-07-03 23:24:44 +02:00
translators
bcaa60612e Update: Translations from eints
portuguese: 3 changes by azulcosta
2023-07-03 18:40:35 +00:00
Rubidium
af9b9327af Codechange: do not keep local variable for temporary string parameters 2023-07-03 18:08:03 +02:00
Rubidium
e04d43f396 Remove: now unused stredup 2023-07-03 18:08:03 +02:00
Rubidium
2ec4ea2b99 Codechange: use the string temporaries for game script strings 2023-07-03 18:08:03 +02:00
Rubidium
3e488465f8 Codechange: allow string temporaries in a StringParameter 2023-07-03 18:08:03 +02:00
Rubidium
78f5d58dc6 Codechange: use std::string without const as return
Otherwise some compilers, e.g. MSVC, do not pick up that these are temporaries
and as such it will pass the temporaries to `const std::string &` instead of
the wanted `std::string &&`
2023-07-03 18:08:03 +02:00
Rubidium
b2edf82b69 Cleanup: remove unneeded CopyOutDParam version with StringID 2023-07-03 06:56:08 +02:00
Rubidium
4654b2b0aa Codechange: separate integer and string usage in StringParameters 2023-07-03 06:56:08 +02:00
Rubidium
8b7c34d7d4 Codechange: use string parameter backps for the text effects 2023-07-03 00:00:12 +02:00
Rubidium
7ed90a859f Codechange: function to check whether string parameters have changed since the backup 2023-07-03 00:00:12 +02:00
Rubidium
05ef3f0998 Cleanup: remove old backup/restore of string parameters 2023-07-02 22:31:01 +02:00
Rubidium
6313b8a4cb Codechange: move errors over to the new StringParameterBackup type 2023-07-02 22:31:01 +02:00
Rubidium
0943402bab Codechange: move news over to the new StringParameterBackup type 2023-07-02 22:31:01 +02:00
Rubidium
f4a3032985 Codechange: move tooltip and query window over to the new StringParameterBackup type 2023-07-02 22:31:01 +02:00
Rubidium
2687704afc Codechange: introduce new type and functions for StringParameter backups 2023-07-02 22:31:01 +02:00
translators
26f3efb419 Update: Translations from eints
english (au): 2 changes by krysclarke
italian: 14 changes by Rivarossi
russian: 2 changes by Ln-Wolf
finnish: 2 changes by hpiirai
tamil: 8 changes by merni-ns
2023-07-02 18:39:30 +00:00
PeterN
115f6cf8ea
Fix #4575: Use Latin 'l' in English translation of zloty. (#11090)
This avoids many truetype fonts being unusable due to this single character not being available.
2023-07-01 20:12:28 +01:00
translators
10dd3119b1 Update: Translations from eints
welsh: 163 changes by Ansbaradigeidfran
2023-07-01 18:39:07 +00:00
merni-ns
161cc04b8a Fix #11087: Disable base graphics/sound dropdown outside main menu 2023-07-01 19:03:45 +02:00
merni-ns
4ae9ebf582 Change: Tooltip for base graphic/sound dropdown 2023-07-01 19:03:45 +02:00
Kuhnovic
6169e7f4bc
Feature: Orientation of rail and road depots can be changed (#9642) 2023-07-01 08:11:31 -04:00
PeterN
c3fbe7bea8
Cleanup: Use FS enum instead of magic numbers. (#11088) 2023-06-30 20:11:09 +00:00
translators
082c47a4f9 Update: Translations from eints
dutch: 1 change by Afoklala
2023-06-30 18:40:38 +00:00
Rubidium
d5c75bd655 Codechange: use std::string instead of a temporary buffer for iconv calls 2023-06-30 19:15:21 +02:00
Rubidium
0ea3e338ab Codechange: replace buffer+strecpy with std::string 2023-06-29 17:32:27 +02:00
Rubidium
3f18a8863a Codechange: use std::getline to read strings from stdin 2023-06-29 16:49:10 +02:00
Rubidium
f333372dd1 Codechange: let IConsoleCmdExec accept std::string 2023-06-29 06:06:15 +02:00
Rubidium
fd380127f0 Codechange: use SignalObjectAndWait since we do not support older than Windows XP anymore 2023-06-28 23:22:14 +02:00
Rubidium
69d5b9d326 Cleanup: unused NO_THREADS #ifdefs 2023-06-28 19:07:10 +02:00
translators
55979b612e Update: Translations from eints
welsh: 28 changes by Ansbaradigeidfran
portuguese: 1 change by azulcosta
polish: 1 change by pAter-exe
2023-06-27 18:43:13 +00:00
Richard Wheeler
3b2934c479
Change: Make terraforming point selection sprite visible at >2x zoom out (#11017) 2023-06-27 10:47:42 -04:00
Johannes E. Krause
5b0cfc7ea5 Add: show fallback sprites with debuglevel sprite=4 2023-06-27 15:12:27 +02:00
Jonathan G Rennison
55c07eed59
Change: Add separate setting for server sent commands per frame limit (#11023)
Set a higher default value for this setting.
Use the higher of this and existing commands per frame limit
setting for server-originating commands, e.g. GS.

This is to support the GSAsyncMode class.
This also avoids undue throttling when more than one
script is in operation (e.g. AIs).
2023-06-27 12:32:45 +01:00
PeterN
8465559488
Codechange: Pass face index as font os_handle for FreeType fonts. (#11073)
This allows fallback font detection to test the specific face within the
font rather instead of only the first.
2023-06-27 12:30:46 +01:00
Rubidium
794b642b9a Codechange: use std::string/std::vector over stredup/strecpy/CallocT/free 2023-06-27 12:35:31 +02:00
Rubidium
700241410b Remove: support for not having getifaddrs 2023-06-27 12:35:07 +02:00
Rubidium
7ad487eeee Cleanup: remove now unused GetInt32/64 functions 2023-06-27 12:34:40 +02:00
Rubidium
75a22a1c83 Codechange: move from GetIntXY to GetNextParameter<XYY> 2023-06-27 12:34:40 +02:00
Rubidium
e7937efb01 Codechange: add clearer named function to get the next (string) parameter 2023-06-27 12:34:40 +02:00
translators
ee34fae09a Update: Translations from eints
korean: 3 changes by telk5093
danish: 3 changes by bscargo
2023-06-26 18:42:58 +00:00
Niels Martin Hansen
103d88ee33 Fix: Layouter not taking stripped formatting codes into account when mapping visual coordinates to/from original string 2023-06-26 17:31:17 +02:00
Niels Martin Hansen
b52e526017 Fix: FallbackParagraphLayouter wasn't reverse-mapping glyphs to character indexes right 2023-06-26 17:31:17 +02:00
translators
5db4473ae8 Update: Translations from eints
vietnamese: 1 change by KhoiCanDev
finnish: 3 changes by hpiirai
french: 5 changes by Naeso
2023-06-25 18:41:23 +00:00
PeterN
d140acf34e
Fix: Setting tree lines drawn incorrectly for RTL languages. (#11070) 2023-06-25 19:32:53 +01:00
Peter Nelson
fac317b139 Cleanup: Remove {ORANGE} from settings page strings. 2023-06-25 17:22:02 +01:00
Peter Nelson
40a9b080aa Fix: Ensure settings page label is orange. 2023-06-25 17:22:02 +01:00
Loïc Guilloux
55e3dd9409
Cleanup 6298b96: Left-over function declaration (#11072) 2023-06-25 15:51:15 +00:00
Jonathan G Rennison
4f6d75f97d Fix #11016: Defer deletion of client and server game socket handlers
This fixes various use after free scenarios in error handling paths
2023-06-25 12:02:32 +01:00
Jonathan G Rennison
19ae88fb63 Fix: Error logging in game and admin server HandlePacket
Don't invent a packet type in the log message if we can't/don't
read a packet type at all.
Fix packet type not being logged when appropriate.
2023-06-25 12:02:32 +01:00
PeterN
43ddf19df3
Change: Allow text shadow on WWT_EMPTY/WWT_TEXT to extend horizontally. (#11065)
This alleviates text shadows of truetype fonts being cropped in some
window layouts.
2023-06-25 11:58:39 +01:00
PeterN
509471f7f8
Codechange: Use std::optional for GRFConfig::GRFError (#11066)
This changes the semantics from "object pointer ownership" to "optional object", and simplifies copies.
2023-06-25 11:57:58 +01:00
translators
71f241ffe1 Update: Translations from eints
english (au): 1 change by krysclarke
russian: 1 change by Ln-Wolf
turkish: 1 change by BeratSJ
french: 1 change by glx22
portuguese (brazilian): 4 changes by pasantoro
2023-06-24 18:40:40 +00:00
translators
78c9446aef Update: Translations from eints
norwegian (bokmal): 1 change by buzzCraft
chinese (traditional): 1 change by wpi3
spanish (mexican): 1 change by absay
lithuanian: 1 change by devbotas
portuguese (brazilian): 3 changes by Greavez
2023-06-23 18:41:29 +00:00
Peter Nelson
6f36f1d912 Change: Remove currency code/symbol suffix from language files. 2023-06-23 16:47:32 +01:00
Peter Nelson
9dd9b8ec74 Fix #11054: Prevent translation of currency codes.
Most languages stick with the 3-letter latin currency codes in the name
string, however some translations are... clever... and use the currency
symbol instead. Whilst this may look nice, it can cause issues with fonts
as some scripts have a specific limited set of fonts which do not include
these symbols.

Instead, hard code the currency code list and add it when drawing the
currency name.
2023-06-23 16:47:32 +01:00
PeterN
d42a78f3e8
Codechange: Make DropDownListStringItem preformat and remove other implementations. (#11063)
Having to choose between DropDownListStringItem, DropDownListCharStringItem, and DropDownListParamStringItem depending on whether to draw a StringID, a raw string, or a StringID with extra parameters was needlessly complex.

Instead, allow passing a StringID or raw string to DropDownListStringItem. This will preformat the StringID into a raw string, and can therefore accept parameters via the normal SetDParam mechanism.

This also means that strings no longer need to be formatted on every draw.
2023-06-23 08:30:13 +00:00
Rubidium
321f01602a Codechange: reduce passing around parameters, but formatting strings earlier 2023-06-23 06:48:13 +02:00
Rubidium
f48baa7d00 Codechange: move sign invisibility check out of loop 2023-06-23 06:48:13 +02:00
translators
9016d4a5b5 Update: Translations from eints
arabic (egypt): 8 changes by AviationGamerX
turkish: 5 changes by densxd
danish: 3 changes by bscargo
2023-06-22 18:38:02 +00:00
translators
c316d9ecb7 Update: Translations from eints
english (au): 2 changes by krysclarke
vietnamese: 3 changes by KhoiCanDev
russian: 2 changes by Ln-Wolf
dutch: 5 changes by Afoklala
french: 2 changes by Lishouuu
portuguese: 2 changes by azulcosta
esperanto: 51 changes by legoscia
polish: 3 changes by pAter-exe
2023-06-21 18:37:58 +00:00
Rubidium
4e9a871718 Codechange: merge multiple string parameter arrays to single array of structs 2023-06-21 05:46:11 +02:00
Rubidium
fa8c50758b Codechange: replace memcpy when copying DParams 2023-06-21 05:46:11 +02:00
Rubidium
2aa48bfcb3 Add: subspan function to span 2023-06-21 05:46:11 +02:00
Rubidium
7a785a4224 Codechange: simplify StringParameters now type cannot be nullptr 2023-06-20 22:25:25 +02:00
Rubidium
428333aeba Codechange: let AllocatedStringParameters allocated types too 2023-06-20 22:25:25 +02:00
Finn Willard
f23249f8f1
Fix #10917: Pay loan interest before generating statistics (#11040) 2023-06-20 22:02:09 +02:00
PeterN
b68d56d94d
Fix #11043: Don't choose toolbar dropdown option if focus is lost. (#11044)
Since dropdown menus now get closed if they lose focus, 'instant close' dropdowns (i.e. the toolbar dropdowns) should no longer execute their action to avoid unintended actions.
2023-06-20 20:34:05 +01:00
Rubidium
9f3254b72a Fix b1fb209: build failure due to removed parameter 2023-06-20 21:32:04 +02:00
translators
4d0369ea9c Update: Translations from eints
finnish: 1 change by hpiirai
portuguese (brazilian): 1 change by pasantoro
2023-06-20 18:38:55 +00:00
glx22
6c7f977197 Codechange: Use {COLOUR} to simplify drawing of timetables 2023-06-20 19:05:10 +02:00
glx22
b1fb209bed Add: {COLOUR} control code to allow colour changes at runtime 2023-06-20 19:05:10 +02:00
Rubidium
88138c55f8 Codechange: make offset protected and guard against invalid offsets 2023-06-20 17:37:49 +02:00
Rubidium
9c3c90effa Codechange: rename ClearTypeInformation so it can be used for preparing for the next run 2023-06-20 17:37:49 +02:00
Rubidium
01abcdfcac Codechange: make StringParameters#next_type only writable from outside the class 2023-06-20 17:37:49 +02:00
Rubidium
3e8f8c55c2 Codechange: make creating temporary StringParameters easier 2023-06-20 17:37:24 +02:00
translators
aaf6811a2c Update: Translations from eints
english (au): 1 change by krysclarke
korean: 1 change by telk5093
russian: 1 change by Ln-Wolf
french: 1 change by Lishouuu
portuguese: 1 change by azulcosta
2023-06-20 13:37:22 +00:00
Rubidium
8caacb5a49 Codechange: use std::deque for console history 2023-06-20 15:25:29 +02:00
Rubidium
4fbc81003f Codechange: make SQString::Create that supports std::string and use that 2023-06-20 15:25:17 +02:00
translators
ea54408e1d Update: Translations from eints
french: 1 change by Lishouuu
2023-06-19 18:40:36 +00:00
merni-ns
b3669a8795
Fix #11026: Use real engine name instead of default name for filtering (#11033) 2023-06-19 01:03:32 +02:00
Rubidium
714ff35e9d Codechange: move to std::string over stredup + free 2023-06-18 22:55:15 +02:00
PeterN
2a2443dd01
Feature: Create group of vehicles from manage vehicle list button. (#10890) 2023-06-18 20:48:04 +01:00
Rubidium
70de70bdcd Codechange: refactor code to remove need for stredup 2023-06-18 21:22:28 +02:00
Rubidium
74924c8186 Codechange: includes must be before 'safeguards.h' 2023-06-18 21:22:14 +02:00
Niels Martin Hansen
ed3f14686d Fix: Layouter::GetCharAtPosition counting wrong
Bug introduced in commit 60399e
2023-06-18 21:07:40 +02:00
translators
31cc349a09 Update: Translations from eints
swedish: 51 changes by SkogisREAL
2023-06-18 18:43:02 +00:00
Rubidium
09f585b772 Codechange: use std::string over stredup+free for splitting font name 2023-06-18 18:32:20 +02:00
Loïc Guilloux
1d9bc23525
Fix #10868: [Script] Handle errors when loading savegame data on stack (#11029) 2023-06-18 12:03:59 +02:00
Rubidium
381e8b69d2 Codechange: make size and offset size_t 2023-06-18 09:50:11 +02:00
Rubidium
4e6733cc6e Codechange: use args.GetParam(offset) over *args.GetPointerToOffset(offset) 2023-06-18 07:10:10 +02:00
Rubidium
e404ba0631 Codechange: generify GetRemainingParameters to allow custom offsets 2023-06-18 07:09:59 +02:00
translators
9215e36300 Update: Translations from eints
vietnamese: 2 changes by KhoiCanDev
finnish: 2 changes by hpiirai
danish: 2 changes by bscargo
2023-06-17 18:40:32 +00:00
Jonathan G Rennison
a6b625eea3
Fix #10993: Crash log when font caches not initialised (#11024)
See also: #10836
2023-06-17 17:56:27 +01:00
Rubidium
1d902a97ce Codechange: move StringParameters to strings_internal.h 2023-06-17 12:14:11 +02:00
Rubidium
ad048b143a Codechange: move implementation of Set/GetDParam to strings.cpp 2023-06-17 12:14:11 +02:00
Rubidium
dd53a738bb Codechange: automatically set/check the correct type for string parameters/genders 2023-06-17 11:02:31 +02:00
Rubidium
836541b41c Codechange: use SetDParam and CopyOutDParam for tooltips 2023-06-17 10:01:19 +02:00
Rubidium
ac0c932ce7 Codechange: use SetDParam to set measurement tooltip parameters 2023-06-17 10:01:19 +02:00
Jonathan G Rennison
ee8b03e8da
Fix: Crash when failing to load a game into a dedicated server at startup (#11021)
Using the -g switch
2023-06-16 19:41:26 +01:00
PeterN
ed06c6bdcf
Codechange: Use vector when migrating old savegame orders. (#11020) 2023-06-16 19:40:24 +01:00
PeterN
fc2510e2ba
Codechange: Use std::vector for midifile's ByteBuffer. (#11019) 2023-06-16 17:04:46 +01:00
Owen Rudge
1a3d1bca59 Remove: OS/2 port 2023-06-16 14:29:14 +01:00
Rubidium
d4c2043294 Codechange: remove a number of unneeded c_str() calls 2023-06-15 22:14:45 +02:00
translators
aae8f40b9f Update: Translations from eints
english (au): 2 changes by krysclarke
korean: 2 changes by telk5093
russian: 2 changes by Ln-Wolf
french: 2 changes by ottdfevr
portuguese: 2 changes by azulcosta
portuguese (brazilian): 2 changes by ericandradex
polish: 2 changes by pAter-exe
2023-06-15 18:41:48 +00:00
Loïc Guilloux
1cd49bf5e5
Fix ca1e34c: [Script] Wrong value printed for {RAW_STRING} (#11011) 2023-06-14 22:07:11 +00:00
Jonathan G Rennison
864d3c9c16
Fix: CMD_CHANGE_SETTING did not reject SF_NO_NETWORK_SYNC settings (#11009) 2023-06-14 19:44:10 +02:00
PeterN
f51f117b00
Change: Add window description flag to disallow interactive window closing. (#11008)
This replaces/simplifies testing for a closebox to allow closing a window with right-click, and testing for specific window classes when closing all windows by hotkey.

This allows right-click closing of dropdowns and the high-score window.
2023-06-14 17:24:14 +01:00
Rubidium
7c37dcb8e3 Fix: do not use {STRING} when {STRING1} or {STRING2} is needed 2023-06-14 09:44:06 +02:00
Rubidium
0a5e58451b Codechange: pass string parameters by reference 2023-06-14 06:14:08 +02:00
Rubidium
43f91bc50c Cleanup: unused GetDataPointer function 2023-06-13 23:53:13 +02:00
Rubidium
e332810231 Codechange: pass zero length arguments for {STRING}, instead of the remaining arguments 2023-06-13 23:53:13 +02:00
Rubidium
82851a9bef Codechange: do not mess with global string params to get pointer to first element 2023-06-13 23:53:13 +02:00
Rubidium
aba0d27a28 Codechange: use StringParameters for remapping the NewGRF string control codes 2023-06-13 22:11:21 +02:00
Rubidium
1146904d45 Fix: when a string consumes more parameters than allowed, nullptr is attempted to be formatted 2023-06-13 20:58:45 +02:00
translators
f1ec2f274c Update: Translations from eints
vietnamese: 6 changes by KhoiCanDev
korean: 4 changes by telk5093
german: 33 changes by SecretIdetity
romanian: 69 changes by kneekoo
russian: 2 changes by Ln-Wolf
finnish: 4 changes by hpiirai
turkish: 4 changes by BeratSJ
danish: 1 change by bscargo
dutch: 6 changes by Afoklala
french: 4 changes by ottdfevr
portuguese (brazilian): 6 changes by pasantoro
polish: 6 changes by pAter-exe
2023-06-13 18:40:34 +00:00
Andrii
f26de0d2f9
Fix #10982: No help text for gamelog command (#10984) 2023-06-13 08:33:33 +00:00
PeterN
ebc451b071
Fix #10987: Double-close of dropdown stopped land-info tool working as default. (#11000)
Clicking and releasing on the query toolbar icon is meant to select the land-info tool.

This did not work as during closing a window, OnFocusLost() is called, which then closes the window again. These two calls toggled the land-info tool one and off in the same action.

Resolve by not calling Window::Close in OnFocusLost() if the window is already closing.
2023-06-12 08:42:02 +01:00
Rubidium
613ad80581 Codechange: remove need for GetDParamX 2023-06-12 09:12:11 +02:00
Rubidium
82b434b589 Codechange: rename function to better describe what it is doing 2023-06-12 09:12:11 +02:00
Rubidium
f86500df92 Codechange: remove need for SetDParamX 2023-06-12 09:12:11 +02:00
Rubidium
6c6f365d2f Codechange: remove offset parameter for copying DParams in and out 2023-06-11 17:03:31 +02:00
Rubidium
d42ef3a0ef Codechange: inject the query window caption into the widget 2023-06-11 17:03:31 +02:00