Jonathan G Rennison
28c115fc33
Fix false positive cache check error on MinGW/GCC 10 builds
...
Due to incorrect default operator== on structs with C arrays.
See: #709
See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94924
2024-07-03 00:25:16 +01:00
Jonathan G Rennison
e53998ec01
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/industry_gui.cpp
# src/linkgraph/linkgraphschedule.cpp
# src/misc/getoptdata.h
# src/music/dmusic.cpp
# src/network/core/os_abstraction.cpp
# src/newgrf_engine.cpp
# src/openttd.cpp
# src/order_gui.cpp
# src/os/windows/win32.cpp
# src/pathfinder/npf/queue.cpp
# src/smallmap_gui.cpp
# src/strgen/strgen.cpp
2024-06-08 22:57:36 +01:00
Jonathan G Rennison
32b8ec34ff
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/autoreplace_gui.cpp
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/debug.cpp
# src/engine_gui.h
# src/error_gui.cpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/newgrf_debug_gui.cpp
# src/newgrf_gui.cpp
# src/order_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/saveload.cpp
# src/screenshot_gui.cpp
# src/sound/win32_s.cpp
# src/statusbar_gui.cpp
# src/strgen/strgen.cpp
# src/table/newgrf_debug_data.h
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_gui.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/sdl_v.cpp
# src/viewport.cpp
2024-05-31 22:57:16 +01:00
Jonathan G Rennison
853ed272be
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/airport_gui.cpp
# src/blitter/32bpp_optimized.cpp
# src/blitter/32bpp_simple.cpp
# src/blitter/32bpp_sse2.cpp
# src/blitter/8bpp_optimized.cpp
# src/blitter/8bpp_simple.cpp
# src/blitter/null.cpp
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/crashlog.cpp
# src/dropdown.cpp
# src/dropdown_type.h
# src/genworld_gui.cpp
# src/gfx.cpp
# src/main_gui.cpp
# src/newgrf_debug_gui.cpp
# src/news_gui.cpp
# src/news_type.h
# src/openttd.cpp
# src/order_gui.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/signs.cpp
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/spriteloader/grf.cpp
# src/texteff.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/video/opengl.cpp
# src/viewport.cpp
# src/waypoint_cmd.cpp
# src/zoom_type.h
2024-05-30 17:54:01 +01:00
Jonathan G Rennison
1e9fb74451
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-windows.yml
# src/autoreplace_gui.cpp
# src/cargotype.cpp
# src/company_base.h
# src/company_cmd.cpp
# src/company_gui.cpp
# src/currency.h
# src/date_gui.cpp
# src/dropdown.cpp
# src/dropdown_func.h
# src/dropdown_type.h
# src/game/game_gui.cpp
# src/genworld.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/house.h
# src/industry_gui.cpp
# src/network/network_client.cpp
# src/network/network_server.cpp
# src/network/network_type.h
# src/newgrf_class_func.h
# src/newgrf_house.cpp
# src/newgrf_roadstop.h
# src/openttd.cpp
# src/order_gui.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/screenshot_gui.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/slider.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/survey.cpp
# src/tile_map.h
# src/town_cmd.cpp
# src/town_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
2024-05-28 20:33:35 +01:00
Jonathan G Rennison
18a42664fc
Merge branch 'master' into jgrpp
...
Remove 'byte' typedef
2024-05-07 17:21:50 +01:00
Rubidium
4f2412a272
Codechange: range based for loops instead of C-style for loops
2024-04-11 07:05:04 +02:00
Peter Nelson
de4e00c93f
Codechange: Pass by reference to UpdateWidgetSize. ( #12457 )
...
These parameters are always provided and not optional.
2024-04-09 08:34:45 +01:00
Jonathan G Rennison
28e74005d0
Remove various uses of lengthof on std::array
2024-04-08 19:55:58 +01:00
Peter Nelson
2cc700d606
Codechange: Replace colour_dropdown array with StringID arithmetic. ( #12426 )
...
This assumes that the string colours are in order, but that is already assumed elsewhere.
Removes old C-style array access.
2024-04-05 21:51:36 +01:00
Peter Nelson
197fb00d31
Fix #12395 : Ensure president name widget is tall enough. ( #12419 )
2024-04-04 17:56:16 +01:00
Peter Nelson
2047c27445
Codechange: Move drop down list item definitions to separate header.
...
This reduces the scope of the definitions which are no longer needed to create the common lists.
2024-04-01 22:33:16 +01:00
Peter Nelson
d683ec0183
Codechange: Move dropdown and slider out of widgets directory. ( #12403 )
...
Also shuffle headers to place widget includes near end.
This leaves the widgets directory solely for defining Widget IDs.
2024-03-31 19:37:16 +01:00
Peter Nelson
8d312b305b
Codechange: Replace currency macros with functions. ( #12396 )
2024-03-29 14:49:48 +00:00
Peter Nelson
107c208d87
Codechange: Use single list for hierarchical group lists. ( #12330 )
...
Replace both group list implementations (vehicle group list and company colour group list) with a single implementation, using a struct to hold the group and indentation level instead of two separate lists. Parts that were previously duplicated are now shared.
2024-03-18 17:49:51 +00:00
Patric Stout
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2024-03-16 23:59:32 +01:00
Rubidium
86cb184eb4
Codechange: use std::source_location over __FILE__ and __LINE__ for WindowDesc
2024-03-10 10:14:20 +01:00
Jonathan G Rennison
c09fdb0444
Fix company infrastructure windows not being marked as a company window
...
Fixes it not being removed on company deletion, which could cause a crash
2024-02-26 01:03:30 +00:00
Jonathan G Rennison
090656bd7f
Adjust handling of year display in wallclock mode and company inauguration years
...
See: #657
2024-02-25 03:27:45 +00:00
Jonathan G Rennison
a98a56669b
Merge branch 'master' into jgrpp
...
# Conflicts:
# regression/regression/result.txt
# src/autoreplace_cmd.cpp
# src/industry_gui.cpp
# src/landscape.cpp
# src/network/network_content.cpp
# src/newgrf_roadstop.cpp
# src/pathfinder/yapf/yapf_ship.cpp
# src/road_gui.cpp
# src/saveload/ai_sl.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/station.cpp
# src/station_gui.cpp
# src/video/cocoa/cocoa_ogl.h
# src/video/sdl2_opengl_v.h
# src/video/video_driver.hpp
# src/video/win32_v.h
# src/widget_type.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
# src/window.cpp
2024-02-19 23:11:00 +00:00
Jonathan G Rennison
fdd666f66a
Merge tag '14.0-beta1' into jgrpp
...
# Conflicts:
# src/3rdparty/squirrel/squirrel/sqcompiler.cpp
# src/aircraft.h
# src/animated_tile.h
# src/base_consist.h
# src/cargotype.h
# src/company_gui.cpp
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/engine_gui.cpp
# src/industry_gui.cpp
# src/lang/english.txt
# src/music/extmidi.cpp
# src/network/core/network_game_info.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf_industries.cpp
# src/order_base.h
# src/order_cmd.cpp
# src/order_gui.cpp
# src/order_type.h
# src/os/macosx/misc_osx.cpp
# src/os/windows/crashlog_win.cpp
# src/rail_gui.cpp
# src/rail_gui.h
# src/roadveh.h
# src/roadveh_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/company_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/saveload_error.hpp
# src/script/api/script_town.cpp
# src/settingsgen/settingsgen.cpp
# src/ship.h
# src/ship_cmd.cpp
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/strgen/strgen.cpp
# src/strgen/strgen.h
# src/table/settings/script_settings.ini
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/town.h
# src/town_cmd.cpp
# src/town_cmd.h
# src/town_gui.cpp
# src/train.h
# src/train_cmd.cpp
# src/tree_cmd.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_cmd.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/waypoint_base.h
# src/widget.cpp
2024-02-18 22:22:29 +00:00
Jonathan G Rennison
838b166726
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/command.cpp
# src/command_func.h
# src/company_base.h
# src/debug.cpp
# src/debug.h
# src/economy.cpp
# src/engine_type.h
# src/graph_gui.cpp
# src/misc_cmd.cpp
# src/misc_cmd.h
# src/network/core/os_abstraction.cpp
# src/openttd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/settings_type.h
# src/ship_cmd.cpp
# src/stdafx.h
# src/tests/bitmath_func.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
2024-02-17 11:53:35 +00:00
Jonathan G Rennison
b13b2781bd
Add string codes for upstream wallclock mode, add upstream language changes
2024-02-14 23:22:28 +00:00
Jonathan G Rennison
7ce06e22b8
Split date types into calendar and economy dates
...
See: 735abfe1
2024-02-13 21:34:09 +00:00
Florian
02b59920ed
Fix #12050 : Add default size, shade and pin control buttons to company livery widget. ( #12080 )
2024-02-13 15:55:13 +00:00
Jonathan G Rennison
cfebbfac8c
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/autoreplace_cmd.cpp
# src/company_base.h
# src/company_gui.cpp
# src/cpu.cpp
# src/debug.h
# src/group.h
# src/group_cmd.cpp
# src/house.h
# src/industry.h
# src/newgrf_house.cpp
# src/news_type.h
# src/openttd.cpp
# src/saveload/company_sl.cpp
# src/settings_type.h
# src/sl/oldloader_sl.cpp
# src/story.cpp
# src/table/town_land.h
# src/viewport.cpp
2024-02-09 18:50:49 +00:00
frosch
b1718478c8
Codechange: Replace old non-standard attributes with C++17/20 standard attributes.
2024-02-02 22:29:28 +01:00
dP
897b59c158
Add: [GS] Allow to set max loan for each company separately ( #11224 )
2024-01-30 19:15:19 +01:00
Jonathan G Rennison
e148f7653b
Use scaled.vsep_sparse for EXP_SPACING in company infrastructure window
2024-01-29 18:01:19 +00:00
frosch
68c64d2511
Codechange: Remove TKM string codes by duplicating strings.
2024-01-28 14:44:24 +01:00
Tyler Trahan
fd9e72a7e7
Feature: Use real-time "wallclock" timekeeping units ( #11341 )
2024-01-23 11:36:09 -05:00
Tyler Trahan
735abfe111
Codechange: Split dates and timers into Economy and Calendar time ( #10700 )
2024-01-22 09:04:34 -05:00
Jonathan G Rennison
606d7cd814
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/airport_gui.cpp
# src/build_vehicle_gui.cpp
# src/direction_type.h
# src/gfx_type.h
# src/group_gui.cpp
# src/misc_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/signs_gui.cpp
# src/slope_func.h
# src/smallmap_gui.cpp
# src/terraform_gui.cpp
# src/toolbar_gui.cpp
# src/town_gui.cpp
# src/town_type.h
# src/vehicle_type.h
# src/widget_type.h
2024-01-21 23:03:08 +00:00
Peter Nelson
c0ab436077
Codechange: Store Colours in Colours type. ( #11625 )
...
This reduces casts, some magic numbers, and introduces a bit of type-safety.
2024-01-21 13:23:04 +00:00
Rubidium
aa5ba5bd7f
Codechange: allow certain enumeration to be added
...
Otherwise C++20 doesn't like it.
2024-01-16 23:30:23 +01:00
Peter Nelson
7737aa6640
Codechange: Make all NWidgetPart arrays constexpr.
...
This ensures that the arrays are not created at runtime and prevents using non-constexpr values.
2024-01-16 21:57:05 +00:00
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
42c8f50551
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-windows.yml
# .gitignore
# COMPILING.md
# src/company_gui.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/engine_func.h
# src/fileio.cpp
# src/linkgraph/linkgraph_gui.h
# src/newgrf_debug_gui.cpp
# src/newgrf_gui.cpp
# src/order_gui.cpp
# src/osk_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/script/api/script_event_types.hpp
# src/sl/oldloader_sl.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/toolbar_gui.cpp
# src/town_gui.cpp
# src/transparency_gui.cpp
# src/vehicle_gui.cpp
# src/widget.cpp
# src/widget_type.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_func.h
# src/widgets/dropdown_type.h
# src/widgets/group_widget.h
# src/widgets/vehicle_widget.h
# src/window.cpp
# src/window_gui.h
# src/window_type.h
2024-01-02 14:44:33 +00:00
Peter Nelson
a0dfb76e34
Codechange: Replace mishmash of types for widget index with WidgetID.
...
Indices were stored as int, but often passed around as uint/uint8_t and casts.
Now they should all use WidgetID.
2023-12-30 00:23:57 +00:00
Jonathan G Rennison
ffff696b4e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/console_cmds.cpp
# src/crashlog.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/group_cmd.cpp
# src/landscape.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/saveload/afterload.cpp
# src/script/api/script_date.cpp
# src/sl/oldloader_sl.cpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/strings.cpp
# src/subsidy_gui.cpp
# src/survey.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_game_calendar.h
2023-12-29 14:46:53 +00:00
Peter Nelson
bfb4254226
Fix: Changing default livery did not propagate to group liveries.
...
#11614 attempted to address this but did not handle 2CC properly, and changes to the default livery were not handled.
2023-12-28 23:16:19 +00:00
Jonathan G Rennison
b72366419b
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/blitter/32bpp_anim.cpp
# src/blitter/8bpp_optimized.cpp
# src/gfx.cpp
# src/gfx_func.h
# src/gfxinit.cpp
# src/network/core/os_abstraction.cpp
# src/spritecache.cpp
2023-12-28 16:56:54 +00:00
Peter Nelson
3436b5f090
Change: Show a message in livery window if vehicle type has no groups.
2023-12-23 13:45:35 +00:00
Peter Nelson
513c7e7b53
Change: Add distinct tooltips for vehicle group colour schemes.
2023-12-23 13:45:35 +00:00
Peter Nelson
eda0dd24fe
Change: Remove hardcoded minimum sizes and allow resize.
...
This stops the window being needlessly large.
2023-12-23 13:45:35 +00:00
Peter Nelson
0949eddd55
Change: Move colour selection dropdowns to bottom of window.
...
This stops them looking similar to how filter controls are used elsewhere,
and matches action dropdowns on other windows.
2023-12-23 13:45:35 +00:00
Jonathan G Rennison
d5a7a67b8c
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# src/ai/ai_gui.cpp
# src/blitter/32bpp_optimized.cpp
# src/blitter/32bpp_simple.cpp
# src/blitter/32bpp_sse2.cpp
# src/blitter/8bpp_optimized.cpp
# src/blitter/8bpp_simple.cpp
# src/blitter/null.cpp
# src/blitter/null.hpp
# src/company_gui.cpp
# src/game/game_gui.cpp
# src/genworld_gui.cpp
# src/gfx.cpp
# src/gfx_func.h
# src/graph_gui.cpp
# src/industry_gui.cpp
# src/linkgraph/linkgraphjob.cpp
# src/network/network_gui.cpp
# src/newgrf_debug_gui.cpp
# src/openttd.cpp
# src/pathfinder/npf/aystar.h
# src/road_gui.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/api/script_log.cpp
# src/script/api/script_town.cpp
# src/script/script_gui.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_table.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/sortlist_type.h
# src/spritecache.cpp
# src/spriteloader/grf.cpp
# src/spriteloader/grf.hpp
# src/spriteloader/spriteloader.hpp
# src/station_cmd.cpp
# src/station_cmd.h
# src/station_gui.cpp
# src/strings.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/video/opengl.cpp
# src/video/opengl.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
# src/window_gui.h
2023-12-23 13:26:55 +00:00
Darragh
acfe367507
Fix #11442 : "default" colour in group colour window is not updated when changing master colour ( #11614 )
...
Updated SelectCompanyLiveryWindow.DrawWidget method to check if a group's livery.in_use 0 bit is set, rendering the company's default colour if it has not been.
2023-12-22 17:56:09 +01:00
Jonathan G Rennison
03e0ec8276
Strong typedef: Use strong typedefs for date, date tick, minutes types
...
Add delta types
Adjust/add type conversion functions
Add various utility methods on types
Remove the various minute macros
Fix some minute conversion inconsistencies
2023-12-19 02:39:54 +00:00
Jonathan G Rennison
2e06374f6f
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/gfx_func.h
# src/group_gui.cpp
# src/industry_gui.cpp
# src/misc_gui.cpp
# src/news_gui.cpp
# src/settings_gui.cpp
# src/ship_gui.cpp
# src/smallmap_gui.cpp
# src/station_gui.cpp
# src/subsidy_gui.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_gui.cpp
# src/vehicle_gui.cpp
# src/viewport.cpp
# src/widget.cpp
# src/widgets/dropdown.cpp
# src/window.cpp
2023-12-17 01:16:48 +00:00