Commit Graph

20548 Commits (389b66bd1653520cf11b3ff44dc481efb1585ace)

Author SHA1 Message Date
translators ca31976da0 Update: Translations from eints
english (au): 4 changes by krysclarke
english (us): 4 changes by 2TallTyler
russian: 4 changes by Ln-Wolf
portuguese: 4 changes by azulcosta
polish: 8 changes by pAter-exe
1 year ago
PeterN 61516627ad
Add: NewGRF string code "9A 21" to display force from textstack. (#10782) 1 year ago
Peter Nelson 59811ec780 Codechange: Use find_if when finding things. 1 year ago
Peter Nelson e6740046ee Codechange: Use range-for iteration. 1 year ago
Peter Nelson cef3a2570d Codechange: Use standard iterator-erase-loop pattern. 1 year ago
Peter Nelson a8c0d16371 Cleanup: Use std::advance instead of for-loop. 1 year ago
Peter Nelson 68782f951b Cleanup: Vector supports random access. 1 year ago
Rubidium 6d1586dd49 Codechange: use std::string instead of char* for original editor strings 1 year ago
translators 7e1123c731 Update: Translations from eints
portuguese (brazilian): 30 changes by ericandradex
1 year ago
Patric Stout 922d7aa773
Update: help out translators and do the COMMA -> DECIMAL for them (#10802) 1 year ago
Michael Lutz 7e906c7c59 Change: Preserve orders and related settings where possible when moving engines around in a train. 1 year ago
Michael Lutz 07449be876 Codechange: A vehicle that is not a front engine can't be removed from a vehicle group, so just remove a pointless function call. 1 year ago
Rubidium 1ae7eb1594 Codechange: use std::map over SmallMap and std::string of stredup(char*) 1 year ago
Rubidium 12085d088c Cleanup: remove obsolete string_compare_type 1 year ago
Rubidium bc389a86c9 Codechange: use std::string as std::map key, instead of stredup string 1 year ago
Rubidium 72082aa7d3 Codechange: use std::string for getting a script's name 1 year ago
Rubidium f1fb6c95fe Add: case insensitive string comparator 1 year ago
Rubidium 6e3d3c0e7c Codechange: introduce std::string variant of sq_pushstring 1 year ago
Peter Nelson f5158c8b79 Feature: Add search filter and name text to build waypoint window. 1 year ago
Peter Nelson dc50ff807c Change: Remove incorrect minimal size. 1 year ago
Peter Nelson b54d7f15ac Change: Reduce size of waypoint matrix to 3 x 2. 1 year ago
Peter Nelson 0513a6ccb0 Change: Use separate names for default stations/roadstops. 1 year ago
Peter Nelson 93d49fa8b3 Fix: Make scrollwheel work on panel behind waypoint matrix. 1 year ago
Peter Nelson bf9caa425b Change: Units-system can convert from N to kN, don't preconvert.
This allows force to passed as is and avoid premature rounding.

The AI function "GetMaxTractiveEffort" still needs to return kN to avoid breaking the API.
1 year ago
Peter Nelson e2f583a34f Change: Standardise unit conversions and allow decimal places.
Previously the decimal_places member was mostly ignored except for
specific conversions. {DECIMAL} with 0 is the same as {COMMA} so there
is no downside to allowing any conversion to have decimals.
1 year ago
Peter Nelson 3c2f87ce1f Change: Perform unit convert with a double-precision constant.
Unit conversion is only performed for display purposes, this does not
affect lock-step mechanics.

This replaces the old multiply and shift algorithm which relies on
choosing a multipler and shift combination that gets close. Some of these
multiply/shift combinations were quite inaccurate. We can just
use (close-to) real-world numbers instead.
1 year ago
Patric Stout febe394806
Codechange: replace C-style strings with C++-style strings in textfile (#10772) 1 year ago
translators 90529ea48b Update: Translations from eints
catalan: 30 changes by J0anJosep
french: 25 changes by glx22
polish: 5 changes by pAter-exe
1 year ago
PeterN 6998fbf71d
Fix: WWT_TEXT with SetTextStyle did not work. (#10797)
FontSize was passed to incorrect parameter of DrawString function.
1 year ago
Peter Nelson d68c4bbd2f Change: Use iterator when drawing industry cargo window. 1 year ago
Peter Nelson cccf4953f7 Fix: Incorrect padding on industry cargo window. 1 year ago
PeterN 882f06bf14
Fix: Support more than 256 stations/waypoints/roadstops per class. (#10793)
It was already possible to define more than 256 per class, but not possible
to use them as the index used in GUI and passed through commands was limited
to a byte.
1 year ago
Patric Stout a05ae2497f Codechange: simplify how GetCharPosition() works 1 year ago
Patric Stout 60399e17bd Codechange: C++-ify the Layouter and related functions
They all now access a std::string_view, instead of a "const char *"
or std::string (in some cases).

Additionally, GetCharAtPosition and friends now return an index
instead of a "const char *", as it makes for a more clear interface.
1 year ago
Tyler Trahan 61d1b330d1
Change: Add padding to build vehicle text filter (#10792) 1 year ago
Patric Stout aed36a609c
Fix: [ICU] crash when trying to break a non-breaking run (#10791)
Clusters from harfbuzz are indexed from the start of the buffer,
not from the start of the run analyzed. This confuses other parts
of the code that do assume they are from the start of the run.
1 year ago
PeterN bc6a4b1d08
Fix: Set up default station/waypoint classes properly. (#10789) 1 year ago
J0anJosep c4e6d80ecf Cleanup: Remove unnecessary hangar check. 1 year ago
Rubidium 68ff3fd062 Change: include fmt.h C++ headers in stdafx.h
This to prevent compilation issues between runs with and without precompiled
headers. Also remove the headers from the rest of the code base as they are
not needed there anymore, although they do relatively little harm.
1 year ago
Peter Nelson 878c5d8d85 Codechange: Use SetPosition() to clamp after changing count/capacity. 1 year ago
Peter Nelson 6202eae9d5 Codechange: Rely on Scrollbar::SetPosition to clamp.
Manually clamping scrollbar bounds before calling `SetPosition()` is doubling up work that the function already does.
1 year ago
Peter Nelson d2034d9c38 Codechange: Scrollbar methods now accept size_t.
This clears up a lot of casts from size_t to int.
1 year ago
translators 923d1b0846 Update: Translations from eints
vietnamese: 5 changes by KhoiCanDev
1 year ago
kiwitreekor 3375f25b70
Fix: Var68 for station and roadstop was broken (#10784) 1 year ago
Tyler Trahan 98d809c33b
Codechange: Don't use macros for DAYS_TILL and friends (#10746) 1 year ago
PeterN 8bf62dac81
Codechange: Clean up build industry window. (#10779)
* Remove left-over code that treated an invalid list selection as 'fund
many', which is actually implemented as a separate button.
* Manual list management replaced with std::vector.
* Enabled state is only needed for the current selection.
* Selected index is not required only selected type.
1 year ago
PeterN a836edd5a7
Codechange: Scrollbar::UpdatePosition() will tell if the position changed. (#10777)
So we don't need to check this manually.
1 year ago
Rubidium fb856e16c1 Codechange: replace some min/clamp constructs to ClampTo 1 year ago
Rubidium 19ec4e8beb Codechange: replace ClampToI32/U16 with ClampTo<int32_t/uint16_t> 1 year ago
Rubidium 969a3dc0f3 Codechange: introduce generic ClampTo function to clamp to the range of a type 1 year ago
Rubidium e33b2afd87 Codechange: pass (uint) money as Money for CmdGiveMoney 1 year ago
Rubidium 4a5a9f57c4 Fix: conversion to smaller type warnings 1 year ago
translators 97b77f0251 Update: Translations from eints
english (au): 5 changes by krysclarke
english (us): 5 changes by 2TallTyler
korean: 5 changes by telk5093
italian: 5 changes by Rivarossi
russian: 5 changes by Ln-Wolf
finnish: 5 changes by hpiirai
turkish: 5 changes by densxd
portuguese: 5 changes by azulcosta
1 year ago
Michael Lutz b14c5aff1f
Fix: [Win32] Text line breaking did not properly handle punctuation characters. (#10775) 1 year ago
Tyler Trahan 0fc21b5686
Fix: Engine age is in months, not days (#10773) 1 year ago
Loïc Guilloux 31d1a323ef
Fix #10771, 3901ef9: GRFConfig.filename is now a std::string (#10774) 1 year ago
PeterN b67cf7f94a
Change: Replace ScriptLog data array with std::deque. (#10770)
Due to cyclic header dependency this requires moving the data types used
by ScriptLog out of the ScriptLog class.
1 year ago
translators 5dd54e2708 Update: Translations from eints
japanese: 10 changes by fmang
vietnamese: 14 changes by KhoiCanDev
dutch: 14 changes by Afoklala
polish: 1 change by pAter-exe
1 year ago
PeterN bda754ec83
Fix: Make all settingsgen 'warnings' fatal. (#10766)
Compilation should stop If settingsgen fails to complete properly.
1 year ago
Patric Stout a7d3c79d79
Fix c6c3d0e6: restore string-based settings in network-private settings (#10765)
By accident the SDTC_SSTR got replaced with SDTC_VAR, which breaks
many of the settings in this file.
1 year ago
Rubidium 877349c13d Codechange: use std::string for text file name resolution 1 year ago
Peter Nelson 0b72297d57 Feature: Increase number of stations/roadstops per NewGRF. 1 year ago
Peter Nelson bc7dfd7b46 Add: Station property 1C/1D to set name/classname.
These are an alternative to the original "generic" C4xx/C5xx method,
which can only assign strings to IDs up to 256.
1 year ago
Peter Nelson d6f35a9fd6 Change: Add placeholders for unimplemented NewGRF station properties. 1 year ago
Peter Nelson 7a86615007 Feature: Remove limit of objects per NewGRF. 1 year ago
Peter Nelson 912eb68981 Change: Extend entity override manager and station spec lists to support 16 bit IDs. 1 year ago
Peter Nelson e5c9a3e527 Change: Read Action 3 IDs as extended-bytes for all features.
This can be done because previous the value 0xFF (which indicates an
extended byte) was reserved for this purpose. Other features which may
not have mentioned reserving 0xFF do not allow this many IDs anyway.

This makes Action 3 consistent across all features. The allowable limits
for each feature do not change.
1 year ago
Peter Nelson 10baecd81f Change: Make Action 3 debug messages more consistent. 1 year ago
glx22 045a99dd23 Codechange: Remove STR_TINY_RIGHT_ARROW 1 year ago
glx22 222e37d319 Codechange: Remove TINY_BLACK_STATION 1 year ago
glx22 b2a36ff3cc Codechange: Remove STR_TINY_GROUP and STR_TINY_BLACK_VEHICLE 1 year ago
glx22 999057a4d8 Codechange: Remove STR_SHORT_DATE 1 year ago
glx22 49eb638563 Codechange: Remove STR_ORANGE_STRING1_WHITE and STR_ORANGE_STRING1_LTBLUE. 1 year ago
Peter Nelson 61407840c6 Codechange: Remove STR_BLACK_RAW_STRING. 1 year ago
Peter Nelson 0880616851 Codechange: Remove various STRING strings. 1 year ago
Peter Nelson 4767641c8c Codechange: Remove various INT strings. 1 year ago
Peter Nelson d5fb9e7dc6 Codechange: Remove various DATE_LONG strings. 1 year ago
Peter Nelson a2d7642195 Codechange: Remove STR_COMPANY_MONEY. 1 year ago
Peter Nelson f1d0a26324 Codechange: Remove STR_TINY_BLACK_DECIMAL. 1 year ago
Peter Nelson e18f688db5 Codechange: Remove various COMMA strings. 1 year ago
Peter Nelson 5e185d5328 Codechange: Draw tooltip text in black. 1 year ago
Rubidium 3901ef9760 Codechange: use std::string for the GRF filenames 1 year ago
Rubidium f78aa1e720 Codechange: use std::unique_ptr to manager GRFErrors in GRFConfig 1 year ago
Rubidium a312a6c1b2 Codechange: make md5sumToString std::string compatible 1 year ago
Rubidium 51c6b8c1e4 Codechange: use fmt::format_to for gamelog message creation over seprintf 1 year ago
Patric Stout c6c3d0e6fa
Fix: no_http_content_downloads and use_relay_service as private settings (#10762)
Basically, we don't need to know those values when people send in
crash reports.
1 year ago
Jonathan G Rennison 8d501f2db1
Fix #10741: Rail platforms left partially reserved after train crash (#10751) 1 year ago
Peter Nelson 7ccdefa1c1 Change: Increase vehicle random data from 8 to 16 bits. 1 year ago
Peter Nelson 4a5e413a6c Cleanup: Remove unnecessary VehicleRandomBits()
Simple Random() assignment to byte does the same.
1 year ago
translators ca497ce356 Update: Translations from eints
japanese: 29 changes by fmang
danish: 25 changes by bscargo
polish: 29 changes by pAter-exe
1 year ago
Tyler Trahan 6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar (#10753) 1 year ago
translators 7669aac865 Update: Translations from eints
english (us): 14 changes by 2TallTyler
1 year ago
Patric Stout 018a26d9b6
Fix: crash in emscripten when saving games (#10758)
Don't allocate 128KB on stack, but rather on the heap.
1 year ago
Peter Nelson 39eff18754 Codechange: Use std::vector for gamelog GRFConfig comparisons. 1 year ago
Peter Nelson 00bf42353a Codechange: Place gamelog into its own class, along with internal data.
Data is now stored in vectors to avoid manual memory management and
passing lengths around.
1 year ago
translators 47a8d12f0e Update: Translations from eints
english (au): 14 changes by krysclarke
korean: 14 changes by telk5093
italian: 14 changes by Rivarossi
russian: 15 changes by Ln-Wolf
finnish: 14 changes by hpiirai
turkish: 14 changes by densxd
portuguese: 16 changes by azulcosta
1 year ago
Patric Stout 81d4fa6999 Feature: drop ICU-lx in favour of directly interfacing with harfbuzz
This means we have RTL support again with ICU 58+. It makes use of:
- ICU for bidi-itemization
- ICU for script-itemization
- OpenTTD for style-itemization
- harfbuzz for shaping
1 year ago
Patric Stout 9cb60768fe Codechange: split implementations of ParagraphLayouterFactory into their own file 1 year ago
translators 4cceaae8dc Update: Translations from eints 1 year ago
Tyler Trahan aa8830f57a
Feature: Filter engine build menu by name and NewGRF extra text (#10519) 1 year ago