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
12 months ago
Rubidium
da21772f2d
Fix #11108 , e2f583a: missing argument for SCC_CARGO_SHORT formatting
...
(cherry picked from commit 968de827d6
)
1 year ago
Rubidium
968de827d6
Fix #11108 , e2f583a: missing argument for SCC_CARGO_SHORT formatting
1 year ago
Rubidium
2ec4ea2b99
Codechange: use the string temporaries for game script strings
1 year ago
Rubidium
3e488465f8
Codechange: allow string temporaries in a StringParameter
1 year ago
Rubidium
b2edf82b69
Cleanup: remove unneeded CopyOutDParam version with StringID
1 year ago
Rubidium
4654b2b0aa
Codechange: separate integer and string usage in StringParameters
1 year ago
Rubidium
7ed90a859f
Codechange: function to check whether string parameters have changed since the backup
1 year ago
Rubidium
05ef3f0998
Cleanup: remove old backup/restore of string parameters
1 year ago
Rubidium
2687704afc
Codechange: introduce new type and functions for StringParameter backups
1 year ago
Jonathan G Rennison
d09b504bc5
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-source.yml
# .github/workflows/release.yml
# CMakeLists.txt
# COMPILING.md
# src/ai/ai_core.cpp
# src/ai/ai_gui.cpp
# src/bridge_gui.cpp
# src/company_gui.cpp
# src/console_cmds.cpp
# src/core/CMakeLists.txt
# src/core/smallmap_type.hpp
# src/disaster_vehicle.h
# src/effectvehicle_base.h
# src/fontcache.cpp
# src/game/game_core.cpp
# src/game/game_gui.cpp
# src/gamelog.cpp
# src/gamelog_internal.h
# src/group_gui.cpp
# src/linkgraph/linkgraph.h
# src/misc.cpp
# src/network/core/config.h
# src/network/core/udp.cpp
# src/network/network_chat_gui.cpp
# src/network/network_content_gui.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/newgrf_gui.cpp
# src/newgrf_profiling.cpp
# src/newgrf_profiling.h
# src/object_gui.cpp
# src/openttd.cpp
# src/openttd.h
# src/order_gui.cpp
# src/os/windows/font_win32.cpp
# src/rail_gui.cpp
# src/road.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.h
# src/script/api/script_controller.cpp
# src/script/api/script_roadtypelist.cpp
# src/script/script_config.cpp
# src/script/script_config.hpp
# src/script/script_instance.cpp
# src/script/script_scanner.cpp
# src/script/squirrel.cpp
# src/script/squirrel_helper.hpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/table/settings/network_private_settings.ini
# src/timetable_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/window_gui.h
1 year ago
PeterN
c3fbe7bea8
Cleanup: Use FS enum instead of magic numbers. ( #11088 )
1 year ago
Rubidium
75a22a1c83
Codechange: move from GetIntXY to GetNextParameter<XYY>
1 year ago
Rubidium
e7937efb01
Codechange: add clearer named function to get the next (string) parameter
1 year ago
Rubidium
4e9a871718
Codechange: merge multiple string parameter arrays to single array of structs
1 year ago
Rubidium
fa8c50758b
Codechange: replace memcpy when copying DParams
1 year ago
Rubidium
7a785a4224
Codechange: simplify StringParameters now type cannot be nullptr
1 year ago
Rubidium
428333aeba
Codechange: let AllocatedStringParameters allocated types too
1 year ago
Rubidium
9f3254b72a
Fix b1fb209: build failure due to removed parameter
1 year ago
glx22
b1fb209bed
Add: {COLOUR} control code to allow colour changes at runtime
1 year ago
Rubidium
88138c55f8
Codechange: make offset protected and guard against invalid offsets
1 year ago
Rubidium
9c3c90effa
Codechange: rename ClearTypeInformation so it can be used for preparing for the next run
1 year ago
Rubidium
01abcdfcac
Codechange: make StringParameters#next_type only writable from outside the class
1 year ago
Rubidium
3e8f8c55c2
Codechange: make creating temporary StringParameters easier
1 year ago
Rubidium
381e8b69d2
Codechange: make size and offset size_t
1 year ago
Rubidium
4e6733cc6e
Codechange: use args.GetParam(offset) over *args.GetPointerToOffset(offset)
1 year ago
Rubidium
e404ba0631
Codechange: generify GetRemainingParameters to allow custom offsets
1 year ago
Rubidium
ad048b143a
Codechange: move implementation of Set/GetDParam to strings.cpp
1 year ago
Rubidium
dd53a738bb
Codechange: automatically set/check the correct type for string parameters/genders
1 year ago
Rubidium
0a5e58451b
Codechange: pass string parameters by reference
1 year ago
Rubidium
e332810231
Codechange: pass zero length arguments for {STRING}, instead of the remaining arguments
1 year ago
Rubidium
aba0d27a28
Codechange: use StringParameters for remapping the NewGRF string control codes
1 year ago
Rubidium
1146904d45
Fix: when a string consumes more parameters than allowed, nullptr is attempted to be formatted
1 year ago
Rubidium
6c6f365d2f
Codechange: remove offset parameter for copying DParams in and out
1 year ago
Rubidium
66a984afd7
Codechange: rename function to better describe its functionality
1 year ago
Rubidium
13cdf5fffa
Codechange: use std::filesystem::path for the language file's path
1 year ago
Jonathan G Rennison
02549c5224
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/CompileFlags.cmake
# src/cargomonitor.cpp
# src/core/CMakeLists.txt
# src/economy.cpp
# src/landscape.cpp
# src/linkgraph/flowmapper.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/linkgraph/linkgraphschedule.cpp
# src/misc_gui.cpp
# src/newgrf_generic.cpp
# src/newgrf_storage.cpp
# src/rail_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/station_sl.cpp
# src/script/script_gui.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/string_func.h
# src/terraform_cmd.cpp
1 year ago
Rubidium
b2a8d8aea4
Codechange: use std::string for Windows' ISO code mangling
1 year ago
Rubidium
edb21620ea
Cleanup: remove unneeded checks on remaining buffer size
1 year ago
Rubidium
affceea0ae
Codechange: switch StringBuilder to use std::string as backend
1 year ago
Jonathan G Rennison
bc07331056
Remove src/3rdparty/optional
1 year ago
Jonathan G Rennison
ffb4548f1b
Fix std::optional related compilation errors on some platforms
1 year ago
Rubidium
14915526ad
Cleanup: remove stre-style GetString
1 year ago
Rubidium
4e39a58c59
Codechange: let town name generation use StringBuilder
1 year ago
rubidium42
bfcb027cb9
Fix 2dffa7d: fmt::format_to copies the iterator, so some text does not remain during formatting ( #10940 )
1 year ago
Rubidium
36aaa9d683
Codechange: let GetStringWithArgs use StringBuilder
1 year ago
Rubidium
2dffa7d0c6
Codechange: let FormatString use StringBuilder
1 year ago
PeterN
ac1d042550
Remove: obsolete NewGRF text unprinting. ( #10884 )
...
Co-authored-by: Rubidium <rubidium@openttd.org>
1 year ago
Rubidium
c384d829fe
Codechange: let number formatting use StringBuilder
1 year ago
Jonathan G Rennison
3a47b421b0
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/company_cmd.cpp
# src/core/overflowsafe_type.hpp
# src/economy.cpp
# src/engine_base.h
# src/ground_vehicle.cpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/newgrf_commons.cpp
# src/newgrf_engine.cpp
# src/newgrf_industries.cpp
# src/newgrf_object.cpp
# src/newgrf_roadstop.cpp
# src/newgrf_station.cpp
# src/rail_gui.cpp
# src/road_cmd.h
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/script/api/script_log.cpp
# src/script/api/script_log.hpp
# src/settings_gui.cpp
# src/settingsgen/settingsgen.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/station_gui.cpp
# src/strgen/strgen.cpp
# src/string_func.h
# src/string_type.h
# src/table/settings/network_private_settings.ini
# src/tests/math_func.cpp
# src/textfile_gui.cpp
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/waypoint_cmd.h
# src/widgets/dropdown.cpp
1 year ago
Jonathan G Rennison
a10c5a62c9
Factor out function to get value with broadest digits
1 year ago
Jonathan G Rennison
2ed248a61d
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# src/aircraft_cmd.cpp
# src/airport_gui.cpp
# src/articulated_vehicles.cpp
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/genworld_gui.cpp
# src/gfx_layout.cpp
# src/misc_gui.cpp
# src/newgrf.cpp
# src/newgrf_config.h
# src/newgrf_engine.cpp
# src/news_gui.cpp
# src/order_gui.cpp
# src/roadveh_cmd.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/ship_cmd.cpp
# src/statusbar_gui.cpp
# src/table/settings/network_private_settings.ini
# src/table/settings/network_settings.ini
# src/toolbar_gui.cpp
# src/train_cmd.cpp
# src/vehicle_gui.cpp
1 year ago
Jonathan G Rennison
94c422499f
Use last pointer in std::string returning GetString
1 year ago
Jonathan G Rennison
02fe4af934
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-windows.yml
# src/company_base.h
# src/company_cmd.cpp
# src/company_gui.cpp
# src/console_cmds.cpp
# src/economy.cpp
# src/economy_cmd.h
# src/fios.h
# src/goal.cpp
# src/group_gui.cpp
# src/network/core/config.h
# src/network/network_admin.cpp
# src/newgrf_config.cpp
# src/os/windows/win32.cpp
# src/saveload/afterload.cpp
# src/saveload/company_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload_error.hpp
# src/settings_gui.cpp
# src/ship_cmd.cpp
# src/stdafx.h
# src/story.cpp
# src/story_base.h
# src/string.cpp
# src/table/settings/economy_settings.ini
# src/tests/CMakeLists.txt
# src/tests/math_func.cpp
1 year ago
Jonathan G Rennison
6091d7470c
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-macos.yml
# src/company_gui.cpp
# src/linkgraph/linkgraph.cpp
# src/newgrf_debug_gui.cpp
# src/strgen/strgen_base.cpp
# src/timetable_gui.cpp
1 year ago
Jonathan G Rennison
fd4d4d341d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/animated_tile.cpp
# src/cargopacket.h
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/date.cpp
# src/disaster_vehicle.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/engine.cpp
# src/error_gui.cpp
# src/fontcache/spritefontcache.cpp
# src/game/game_gui.cpp
# src/game/game_text.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/highscore_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/english_AU.txt
# src/lang/english_US.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/italian.txt
# src/lang/portuguese.txt
# src/lang/russian.txt
# src/lang/turkish.txt
# src/lang/vietnamese.txt
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_generic.cpp
# src/news_gui.cpp
# src/openttd.cpp
# src/os/unix/unix.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/misc_sl.cpp
# src/saveload/oldloader_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spritecache.cpp
# src/spritecache.h
# src/spriteloader/grf.cpp
# src/station_cmd.cpp
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen_base.cpp
# src/subsidy.cpp
# src/table/settings/difficulty_settings.ini
# src/texteff.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/townname.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/widgets/dropdown.cpp
# src/window.cpp
1 year ago
Peter Nelson
76516d7f70
Codechange: Use IsValidCargoID/IsValidCargoType.
...
IsValidCargoType() is used only for unmapped IDs.
1 year ago
Rubidium
63d9bb93b8
Codechange: migrate from C-style GetString to C++-style GetString
1 year ago
Jonathan G Rennison
4c18a193e7
Simplify timetable long duration hours and minutes suffix string
1 year ago
Jonathan G Rennison
7941eb5187
Simplify timetable leftover ticks string
1 year ago
Jonathan G Rennison
e7f7cd06bd
Simplify timetable time/duration string management
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
Tyler Trahan
6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar ( #10753 )
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
Rubidium
8665404fe0
Codechange: use std::string instead of stredup for missing glyph error messages
1 year ago
Tyler Trahan
ba3de0383a
Codechange: Pass more std::string to StringFilter::AddLine() ( #10743 )
1 year ago
Rubidium
c829930440
Codechange: replace strnatcmp with C++ string capable version
1 year ago
Rubidium
75cd790ab9
Codechange: use fmt::format for FormatHexNumber
1 year ago
Charles Pigott
80bd5ad727
Codechange: Use std::strto* variants everywhere ( #10720 )
1 year ago
Tyler Trahan
930f0a16d8
Codechange: Define Date/Year/Month/Day within TimerGameCalendar class
1 year ago
Rubidium
f74e26ca7e
Codechange: replace error/usererror printf variant with fmt variant and rename
1 year ago
Charles Pigott
67101ccdc9
Codechange: Optimise FormatNumber by removing seprintf calls ( #10659 )
...
(cherry picked from commit e20a6f8ebb
)
1 year ago
Charles Pigott
e20a6f8ebb
Codechange: Optimise FormatNumber by removing seprintf calls ( #10659 )
1 year ago
Jonathan G Rennison
e7687da4cc
Departure boards: Change long vehicle names to traditional if group also shown
1 year ago
Rubidium
29b09523d1
Codechange: Use {ZEROFILL_NUM} instead of custom seprintf + {RAW_STRING}
1 year ago
Jonathan G Rennison
c89079a210
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/saveload/cargopacket_sl.cpp
# src/saveload/saveload.h
# src/strings.cpp
# src/vehicle.cpp
1 year ago
PeterN
3b2eb11fe8
Codechange: Use cached name for all station/industry/town name formatting. ( #10634 )
...
This reuses an existing name caching mechanism to avoid "recalculating" names every time.
1 year ago
Jonathan G Rennison
82803b98e0
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/game/game_gui.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.h
# src/newgrf.cpp
# src/order_gui.cpp
# src/saveload/engine_sl.cpp
# src/saveload/saveload.h
# src/script/api/script_text.cpp
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/strings.cpp
# src/table/settings/economy_settings.ini
# src/table/settings/locale_settings.ini
# src/timetable_gui.cpp
1 year ago
PeterN
f1144de509
Feature: Separate rail/road and sea/air velocity units, and add knots. ( #10594 )
...
This is achieved by packing vehicle type along with the velocity so that
the string system can decode and pick the appropriate unit.
1 year ago
Jonathan G Rennison
43cea852a6
Fix 41b414b: Validate RAW_STRING parameter values in game_script mode
1 year ago
Jonathan G Rennison
887d474a2e
Validate RAW_STRING parameter values in game_script mode
1 year ago
Jonathan G Rennison
2ea1766677
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/commit-checker.yml
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/landscape.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/order_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/league_sl.cpp
# src/saveload/saveload.h
# src/script/api/script_object.hpp
# src/script/squirrel_helper.hpp
# src/settings_table.cpp
# src/station_cmd.cpp
# src/table/settings.h.preamble
# src/tree_cmd.cpp
# src/tree_map.h
# src/vehicle.cpp
# src/waypoint_cmd.cpp
1 year ago
glx22
41b414bc1c
Change: [Script] Restore support of {RAW_STRING} in ScriptText
1 year ago
Jonathan G Rennison
36722592b4
Fix scrollbars of text windows not being inited at window creation
1 year ago
Jonathan G Rennison
483e3172af
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/strong_typedef_type.hpp
# src/gfx.cpp
# src/group_cmd.cpp
# src/industry_cmd.cpp
# src/map_func.h
# src/newgrf_debug_gui.cpp
# src/order_cmd.cpp
# src/pathfinder/follow_track.hpp
# src/rail_cmd.cpp
# src/road_cmd.cpp
# src/road_gui.cpp
# src/saveload/saveload.cpp
# src/screenshot.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/strings.cpp
# src/tile_type.h
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/viewport.cpp
1 year ago
Michael Lutz
07c923eceb
Feature: [NewGRF] Engine name callback.
...
(cherry picked from commit 05ed9f56fd
)
1 year ago
Michael Lutz
05ed9f56fd
Feature: [NewGRF] Engine name callback.
1 year ago
Jonathan G Rennison
7a7c688b11
Do not call ReInitAllWindows from within LoadStringWidthTable
1 year ago
rubidium42
6ba55e663e
Codechange: do not hide variables with other variables
1 year ago
Jonathan G Rennison
3877bb31ef
Changing day length or date no longer changes time in minutes
...
Add offset variables for scaled date ticks.
Adjust offset when changing day length or date, such that scaled
date ticks remain the same.
Store _scaled_tick_counter and scaled date ticks offset in the savagame.
2 years ago
Jonathan G Rennison
2eecf19edb
Fix engine changes not updating build template train windows
2 years ago
Jonathan G Rennison
1f36c3f3e4
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/ai/ai_gui.cpp
# src/build_vehicle_gui.cpp
# src/genworld_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/newgrf_sound.cpp
# src/roadveh.h
# src/sound.cpp
# src/station_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_gui.cpp
2 years ago
Henry Wilson
59dbcdb5ba
Feature: Display power-to-weight ratio in ground vehicle details GUI
2 years ago
Jonathan G Rennison
23b974fb39
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/fontcache.cpp
# src/openttd.cpp
# src/os/macosx/font_osx.cpp
# src/os/unix/font_unix.cpp
# src/os/windows/font_win32.cpp
# src/strings.cpp
2 years ago
Peter Nelson
f6ad8e1c9c
Change: Rename some freetype things to fontcache.
...
The font cache supports more than just FreeType as a font provider, but still used freetype in some naming.
This now uses more suitable terms.
2 years ago
Jonathan G Rennison
84da7ad7b6
Add setting to show group hierarchy in vehicle names
...
See: #405
2 years ago
Jonathan G Rennison
d48912aa15
Add setting to show full group hierarchy in group names
2 years ago