Rubidium
f29606fd14
Codechange: use std::string to cache engine/group/vehicle names
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
b381a30d2d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/base_media_func.h
# src/cargopacket.h
# src/gfxinit.cpp
# src/industry_cmd.cpp
# src/window_gui.h
1 year ago
Peter Nelson
76516d7f70
Codechange: Use IsValidCargoID/IsValidCargoType.
...
IsValidCargoType() is used only for unmapped IDs.
1 year ago
PeterN
64930c343a
Codechange: Pass reference instead of pointer to GUI*Lists. ( #10822 )
...
Pointer-avoidance.
1 year ago
Peter Nelson
941dbadf9e
Codechange: Add and use GetScrolledItemFromWidget to get a list item.
...
This function returns an iterator, either to the selected item or the
container's end.
This makes handling the result more robust as indices are not used.
1 year ago
Tyler Trahan
61d1b330d1
Change: Add padding to build vehicle text filter ( #10792 )
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
Rubidium
19ec4e8beb
Codechange: replace ClampToI32/U16 with ClampTo<int32_t/uint16_t>
1 year ago
Peter Nelson
0880616851
Codechange: Remove various STRING strings.
1 year ago
Peter Nelson
e18f688db5
Codechange: Remove various COMMA strings.
1 year ago
Tyler Trahan
6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar ( #10753 )
1 year ago
Tyler Trahan
aa8830f57a
Feature: Filter engine build menu by name and NewGRF extra text ( #10519 )
1 year ago
Rubidium
c829930440
Codechange: replace strnatcmp with C++ string capable version
1 year ago
Peter Nelson
1a24016964
Fix: Set TC_NO_SHADE only for shaded engine in purchase list.
...
Additionally use TC_FORCE to prevent additional colours in the shaded text.
1 year ago
PeterN
1697dff744
Change: Hide all variants from UI when (display) parent is hidden. ( #10708 )
1 year ago
Patric Stout
1c76e0904d
Codechange: revive STR_TINY_BLACK_COMMA from its coma ( #10714 )
1 year ago
Jonathan G Rennison
a967cc4de2
Fix: Violation of strict weak ordering in engine value/running cost sorter
1 year ago
Jonathan G Rennison
dde4761e9d
Fix: Violation of strict weak ordering in engine value/running cost sorter
1 year ago
Andy
89959bf178
Change: extend callback 161 (engine name) with bit 0x22 for context 'Autoreplace - Vehicles in use' ( #10666 )
...
(cherry picked from commit 15c3bc456f
)
1 year ago
Andy
15c3bc456f
Change: extend callback 161 (engine name) with bit 0x22 for context 'Autoreplace - Vehicles in use' ( #10666 )
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
e061fa06fd
Fix template train build window not being refreshed for variants changes
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
80f0250de6
Merge branch 'master' into jgrpp
1 year ago
PeterN
4dfd6a096f
Fix #10220 : Don't select unselectable engine as default. ( #10404 )
1 year ago
Jonathan G Rennison
a9100e93cb
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/group_cmd.cpp
# src/lang/korean.txt
# src/lang/simplified_chinese.txt
# src/script/api/script_rail.cpp
# src/tunnelbridge_cmd.cpp
1 year ago
Rubidium
8aeef665c7
Fix #10377 , Fix 94167df: bad sorting of rail vehicles when primary variant is missing
1 year ago
Jonathan G Rennison
1bfd96c7f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/3rdparty/fmt/core.h
# src/command_type.h
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/landscape.cpp
# src/network/network.cpp
# src/newgrf_object.h
# src/object_cmd.cpp
# src/order_gui.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_industrytype.cpp
# src/script/api/script_object.hpp
# src/script/api/script_town.cpp
# src/table/object_land.h
# src/timetable_cmd.cpp
# src/tree_cmd.cpp
# src/vehicle_gui.cpp
# src/window.cpp
1 year ago
Rubidium
90f1768006
Codechange: add non-nullptr asserts in cases where it should never be nullptr
...
Though where similar calls are checked for nullptr as in those instances of
the use of that function it can actually return nullptr. In other words, write
down the assumption that the function never returns nullptr in an assert.
1 year ago
Jonathan G Rennison
10e76b2788
Fix #10032 : Capacities of articulated vehicles in build window
...
See also: #9954
1 year ago
Jonathan G Rennison
d3e1c2695e
Fix freight weight multiplier not being applied in train build window
2 years ago
Jonathan G Rennison
9cff3666ae
Fix artic engines with no capacity on leading part in build window
...
Engines were being shown as not having any capacity overall
2 years ago
Jonathan G Rennison
a1f6aaa58f
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/korean.txt
# src/saveload/afterload.cpp
# src/saveload/ai_sl.cpp
# src/saveload/game_sl.cpp
# src/script/script_instance.cpp
2 years ago
PeterN
5e22788664
Fix #10220 : Adding unavailable variants failed for non-rail engines. ( #10297 )
...
Unavailable parent variant engine for non-rail engines was added to the
wrong (temporary) list so the hierarchy was not added correctly.
2 years ago
Jonathan G Rennison
64c210f770
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/engine.cpp
# src/engine_func.h
# src/group_gui.cpp
# src/lang/english.txt
# src/newgrf.cpp
# src/saveload/oldloader_sl.cpp
# src/timetable_cmd.cpp
# src/timetable_cmd.h
# src/timetable_gui.cpp
2 years ago
Peter Nelson
85814b29d4
Feature: Vehicle add-ons can now group engines in purchase list.
...
Grouped engines are collapsed by default but can be expanded. This allows
similar engines to be grouped together to avoid cluttering the list.
Suggested uses for this are e.g.:
* Liveries; same stats but different paint job.
* Re-gearing; engine design is mostly the same but different stats.
... but avoiding complex hidden cargo subtype refit systems.
Grouped engines are otherwise separate, so can be independently
autoreplaced, even between variants.
2 years ago
peter1138
94167dfd34
Change: Add variant hierarchy to build vehicle window list.
2 years ago
Jonathan G Rennison
6d4474b84e
Merge tag '13.0-beta2' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/console_gui.cpp
# src/depot_gui.cpp
# src/error_gui.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/korean.txt
# src/lang/polish.txt
# src/misc_gui.cpp
# src/network/network_content_gui.h
# src/newgrf_debug_gui.cpp
# src/order_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/station_gui.cpp
# src/subsidy_gui.cpp
# src/table/settings/gui_settings.ini
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_cmd.cpp
# src/vehicle_gui.cpp
# src/viewport.cpp
# src/water_cmd.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2 years ago
Jonathan G Rennison
02e19521bc
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/error_gui.cpp
# src/fios_gui.cpp
# src/gfx_func.h
# src/graph_gui.cpp
# src/group_gui.cpp
# src/misc_gui.cpp
# src/newgrf_debug_gui.cpp
# src/order_gui.cpp
# src/road_gui.cpp
# src/roadveh_gui.cpp
# src/settings_gui.cpp
# src/ship_gui.cpp
# src/station_gui.cpp
# src/statusbar_gui.cpp
# src/subsidy_gui.cpp
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/tree_gui.cpp
# src/vehicle_gui.cpp
# src/widget.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2 years ago
Jonathan G Rennison
2832fc16f5
Template replacement: Use more descriptive strings for add vehicle button
2 years ago
Jonathan G Rennison
5d171e0023
Add setting for whether dual pane train purchase window uses combined buttons
...
See: #421
2 years ago
Jonathan G Rennison
7b78a4f1ad
Build vehicle window: Fix spelling errors in widget IDs
2 years ago
Jonathan G Rennison
728b902e9f
No longer use CDECL for GUIList::FilterFunction
2 years ago
Peter Nelson
ed60c88b0a
Change: Use power-of-2 scaling for some dimensions in GUI.
...
These are related to drawing sprites that are normally drawn on the
landscape, and should therefore still follow power-of-2 scaling to fit
correctly.
2 years ago
Peter Nelson
890b2666d3
Change: Use scaled WidgetDimensions.
2 years ago
Peter Nelson
5786d49143
Change: Use Rect when drawing build engine list.
2 years ago
Peter Nelson
6f95e04005
Change: Use Rect helpers for widget drawing.
...
This replaces repetitive and sometimes unwieldy use of constants.
2 years ago
Henry Wilson
89cf0d5da8
Codechange: Factor cargotype weight conversion magic numbers
2 years ago
Jonathan G Rennison
fdf2d3dfe1
Fix vehicles with no cargo being shown with last cargo in build window
2 years ago
Jonathan G Rennison
c7e4dbf2f6
Fix displayed capacities/weights of articulated vehicles in build window
...
Simplify handling of multi-part capacities and refits
See: https://github.com/OpenTTD/OpenTTD/issues/9954
See: https://github.com/OpenTTD/OpenTTD/issues/10032
2 years ago
Jonathan G Rennison
839746d2bb
Fix template train move/sell command category for build while paused
2 years ago
Jonathan G Rennison
ad00f5032a
Add a setting to show the introduction year for train wagons
2 years ago
Jonathan G Rennison
a6e3467d58
Fix virtual train consist change callbacks being run before cargotype set
...
When instantiating virtual train from non-buildable template train
See: #402
Also fixes instantiating virtual train from train not refitting leading
vehicle.
2 years ago
Jonathan G Rennison
0a7a7ebcf0
Add build vehicle window sort mode: cargo capacity / running cost
2 years ago
Jonathan G Rennison
96d789dfbf
Fix window preference save/load of build vehicle windows
2 years ago
Michael Lutz
41fa16f325
Codechange: Don't use globals for return values from vehicle command procs.
3 years ago
Michael Lutz
21675ec7e2
Codechange: Un-bitstuff vehicle/engine commands.
3 years ago
Michael Lutz
4f3ea3907e
Codechange: Un-bitstuff commands taking a ClientID (i.e. CMD_CLIENT_ID).
3 years ago
Michael Lutz
0f64ee5ce1
Codechange: Template DoCommandP to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz
e740c24eb7
Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz
b0990fcff7
Codechange: Make TileIndex a "strong" typedef to give it a distinct type.
...
This is accomplished by changing it to a single member struct with the
appropriate operator overloads to make it all work with not too much
source modifications.
3 years ago
Michael Lutz
123c7f99c3
Codechange: Move command callback declarations to the cmd header files.
3 years ago
Michael Lutz
a38bbefe1b
Codechange: Untangle command code, flags and error string for DoCommand*.
3 years ago
Michael Lutz
549caca39c
Codechange: Move command arguments to the back of the networked command function calls.
3 years ago
Michael Lutz
b6933a2ebd
Codechange: Move command arguments to the back of the DoCommand function call.
3 years ago
Jonathan G Rennison
faf32200cf
Merge tag '12.0-beta1' into jgrpp-beta
...
# Conflicts:
# CMakeLists.txt
# bin/ai/CMakeLists.txt
# bin/game/CMakeLists.txt
# src/build_vehicle_gui.cpp
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/fios.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/lang/polish.txt
# src/network/core/game_info.cpp
# src/network/core/game_info.h
# src/network/core/tcp_game.cpp
# src/network/core/tcp_game.h
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_client.h
# src/network/network_coordinator.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf_engine.cpp
# src/openttd.cpp
# src/rev.cpp.in
# src/settings_type.h
# src/train.h
# src/train_cmd.cpp
3 years ago
Jonathan G Rennison
f54d69a60a
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/economy.cpp
# src/elrail.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/network/core/game_info.cpp
# src/newgrf_station.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/strings_func.h
# src/table/settings/network_settings.ini
# src/table/settings/settings.ini
3 years ago
Jonathan G Rennison
072e3ff5fc
Show refitted capacity when adding template vehicles with cargo filter
...
See: #312
3 years ago
Jonathan G Rennison
e76c5dfda7
Revert "Temporarily mark dual pane train purchase window as experimental"
...
This reverts commit f9bb004b05
.
3 years ago
Jonathan G Rennison
4d99c501b3
Add defensive checks to DrawVehiclePurchaseInfo
3 years ago
Loïc Guilloux
9b0bb21f3b
Fix 57734fd: Don't enable rename button for network clients in build vehicle window ( #9452 )
3 years ago
glx22
5844027eb8
Codechange: Remove FOR_ALL_SORTED_STANDARD_CARGOSPECS
3 years ago
Jonathan G Rennison
0d80b4450d
Fix engine selection from click in new train purchase window
...
See: #287 , #296 , #297
3 years ago
Jonathan G Rennison
f9bb004b05
Temporarily mark dual pane train purchase window as experimental
...
See: #287 , #296 , #297
3 years ago
Jonathan G Rennison
44e9a746b7
Fix sorting by TE being always disabled in new train purchase window
3 years ago
Jonathan G Rennison
d027b70575
Fix 5230ff5e: wagon/logo sort and filter saved state mixup
3 years ago
Jonathan G Rennison
5230ff5e8d
Fix crashes and wrong vehicle info in dual pane train purchase window
...
Reduce code duplication/redundancy
3 years ago
Jonathan G Rennison
0b4dc151d5
Rename to BuildVehicleWindowCommon to BuildVehicleWindowBase
...
See: #287
3 years ago
Jonathan G Rennison
dd5866c2c2
Fix loco and wagon button rows having different heights
3 years ago
Jonathan G Rennison
5e418128da
Add setting for whether to use dual pane train purchase window
3 years ago
Jonathan G Rennison
70f7509126
Create common base class for build vehicle windows
3 years ago
Jonathan G Rennison
d1114b6b79
Fix build wagon button building locomotives instead
3 years ago
Jonathan G Rennison
ab5cee70ec
Fix whitespace/code style issues
3 years ago
Jonathan G Rennison
42d1987713
Fix crash when building template vehicles
3 years ago
Jonathan G Rennison
1a7ebfd06c
Fix duplication of sorter functions
3 years ago
Jonathan G Rennison
b4856d3164
Trim trailing whitespace
3 years ago
Andreas Schmitt
225e1ca634
Rearrange file to increase diff readability
3 years ago
Andreas Schmitt
081131c298
Make final adjustments and cleanup
3 years ago
Andreas Schmitt
58c00d169e
Adjust OnClick
3 years ago
Andreas Schmitt
790b73ea3d
Cleanup some code
3 years ago
Andreas Schmitt
92276518dd
Adjust further to new API
3 years ago
Andreas Schmitt
40c9be0c02
Fix sorter functions
3 years ago
Andreas Schmitt
7ffd65c3e6
Add initial implementation
3 years ago
glx22
5799402f7a
Codechange: Rename window related DeleteXXX to match new behaviour
3 years ago
rubidium42
2e136285e1
Codechange: move from C-string to std::string for DoCommand
3 years ago
Jonathan G Rennison
8eb27e1ac7
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/company_cmd.cpp
# src/lang/japanese.txt
# src/network/core/config.h
# src/network/core/packet.cpp
# src/network/core/tcp.cpp
# src/network/network_content.cpp
# src/network/network_server.cpp
# src/network/network_udp.cpp
# src/toolbar_gui.cpp
# src/vehicle_gui_base.h
3 years ago