Peter Nelson
e4cf6ca0ba
Fix: Mis-sized widgets due to missing widget fill. ( #14370 )
...
In most places where we calculate and set widget resize step we neglect
to set widget fill step to match. Initial widget sizing uses fill step
instead of resize step, which means the initial size may not be a
multiple of the resize step as intended. In particular this will cause
WWT_MATRIX to be misrendered.
Whether or not this matters depends on the widget type being resized and
the window layout, however for consistency always set fill step to the
same as resize step when calculating.
2025-06-17 17:40:11 +01:00
Henry
56bc391763
Codechange: Remove manual memory management of AIScannerInfo::info_dummy ( #14338 )
...
Co-authored-by: Henry Wilson <henry@henryandlizzy.uk >
2025-06-16 10:30:22 +01:00
glx22
ccffbb4142
Codechange: Remove manual param count for constructors too
2025-06-14 12:41:39 +02:00
SamuXarick
484f18f987
Codechange: Code style changes to AI/GS GUI files ( #13665 )
2025-06-08 16:48:36 -04:00
Loïc Guilloux
5e765a2787
Codechange: [CMake] Use ".sq.hpp" instead of ".hpp.sq" for API exports ( #14297 )
2025-05-24 22:38:37 +02:00
Peter Nelson
ac76212b80
Fix: Closing the Game Options window closes all textfile windows.
...
Record the parent window that opens a textfile window so only child windows are closed instead of all.
2025-05-04 19:36:46 +01:00
Rubidium
ec79ceb2be
Codechange: use std::string_view for sq_pushstring
2025-05-03 23:02:09 +02:00
Rubidium
7805c1c189
Codechange: use std::string_view for ini_key
2025-05-01 23:24:43 +02:00
Peter Nelson
a5578166bb
Codechange: Pass Script Info by reference.
2025-04-28 23:08:20 +01:00
Peter Nelson
341cdbc16b
Codechange: Pass Script engine by reference.
2025-04-28 23:08:20 +01:00
Rubidium
c7056866a3
Codechange: remove manual param count; in all cases strlen(params) == nparams
2025-04-27 17:57:53 +02:00
Rubidium
b9667ec3d1
Codechange: use std::string_view for scripts
2025-04-27 17:00:25 +02:00
Loïc Guilloux
28d0e6dfc0
Change: [Script] Reject scripts using negative version ( #14096 )
2025-04-26 14:02:36 +02:00
Peter Nelson
7b31f26611
Codechange: Pass ContentInfo by reference.
...
Many functions take a ContentInfo pointer, but do not check for nullptr.
Pass by reference instead to assure it is present.
2025-04-11 23:08:59 +01:00
Peter Nelson
936d78fefc
Codefix: Avoid uppercase characters in variable names. ( #13985 )
2025-04-10 07:19:27 +01:00
Peter Nelson
6a3d17923b
Codechange: Use range filter to simplify picking a random AI. ( #13897 )
2025-03-31 20:32:16 +01:00
Peter Nelson
ff08a22aa4
Codechange: Simplify AI/GameConfig::GetConfig. ( #13900 )
...
Reorganise these methods to reduce nesting and remove a raw pointer to a unique_ptr.
2025-03-26 21:53:05 +00:00
Peter Nelson
422ff9dbd8
Codechange: Use std::unique_ptr for ai/game config.
2025-03-26 10:54:11 +00:00
Peter Nelson
fb008436b8
Codechange: Use std::unique_ptr for script info/library instances. ( #13892 )
2025-03-25 21:07:02 +00:00
Peter Nelson
79ef4e98fe
Codechange: Use std::swap() instead of Swap() ( #13883 )
2025-03-24 23:47:34 +00:00
Peter Nelson
2909a14374
Codechange: Include table/strings.h in files that use StringIDs.
...
Be consistent with how and where the file is incldued.
2025-03-21 12:53:40 +00:00
Peter Nelson
3d95a7813f
Codechange: Drop default widget strings for AI config window.
2025-03-04 08:23:28 +00:00
Rubidium
8d63aea929
Codechange: replace SetStringParameters with GetWidgetString for AI, airport and autoreplace windows
2025-03-02 11:04:15 +01:00
Peter Nelson
94783fe2ed
Codechange: Use EnumBitSet for ScriptConfigFlags. ( #13669 )
2025-02-28 18:57:40 +00:00
Peter Nelson
ddb502d097
Codechange: Use parameterised GetString() for script-related windows. ( #13671 )
2025-02-27 23:53:04 +00:00
Rubidium
0afae7c546
Codechange: explicitly initialise member variables of Windows
2025-02-23 14:53:42 +01:00
SamuXarick
847fbe3348
Fix: [Script] Set DummyAI Api version to last available ( #13610 )
2025-02-22 12:58:29 +01:00
glx22
a577229e95
Revert d7bd67cda3: [Scripts] "_typeof" metamethod negatively affects old scripts
2025-02-19 19:21:50 +01:00
glx22
d7bd67cda3
Add: [Scripts] "_typeof" metamethod
2025-02-18 21:19:15 +01:00
Rubidium
fd4adc55e3
Codechange: replace INVALID_X with XID::Invalid() for PoolIDs
2025-02-16 20:23:00 +01:00
Rubidium
ab8177ea77
Codechange: strongly type CompanyID
2025-02-16 14:02:18 +01:00
Rubidium
1ffc950e22
Codechange: use prefix operator++ for CompanyID iterations
2025-02-16 14:02:18 +01:00
Peter Nelson
2d7d085e8e
Codechange: Use EncodedString for error messages. ( #13569 )
2025-02-16 10:04:32 +00:00
Rubidium
77bf3084da
Codefix f60b3d7f79: compilation failure using GCC-12
2025-02-09 22:51:02 +01:00
Patric Stout
f60b3d7f79
Codechange: [Script] rework how compat-scripts work and are loaded ( #13504 )
...
- compat_NNN.nut files now only defines what is needed to downgrade from API NNN + 1 to NNN.
- Automatically load all required compatibility files based on the API version of the script, starting with the latest.
2025-02-09 15:04:04 +00:00
Peter Nelson
28eb5e05c8
Codechange: Use EnumBitSet for NWidContainerFlags.
2025-02-06 19:43:35 +00:00
Peter Nelson
fe31538a27
Codechange: Use EnumBitSet for Scanner::Modes. ( #13471 )
2025-02-05 20:08:12 +00:00
Peter Nelson
d30e8dd1c1
Codechange: Use EnumBitSet for WindowDefaultFlags.
2025-01-30 08:40:42 +00:00
Rubidium
ef87acc1ff
Codechange: make STR_NULL the default for all widget construction functions
2025-01-03 23:25:27 +01:00
Rubidium
e3a5f9b040
Codechange: replace SetDataTip(AWV_ with SetArrowWidgetTypeTip(AWV_
2025-01-02 23:28:43 +01:00
Rubidium
4bf36e3fa6
Codechange: replace SetDataTip(STR_ with SetStringTip(STR_
2025-01-02 23:28:43 +01:00
Peter Nelson
98e980c478
Codechange: WWT_TEXT, WWT_LABEL and WWT_EMPTY don't use colour. ( #13218 )
...
Set colour for these widget types to INVALID_COLOUR to avoid giving the impression that the colour has a purpose.
A runtime exception is added to catch this the existing widget unit test.
2025-01-01 15:38:19 +00:00
Peter Nelson
bacd3e83c6
Codechange: Use ScriptObjectRef to handle Event reference counting.
...
This removes manual reference counting.
2024-10-16 21:52:00 +01:00
Peter Nelson
55314513ce
Codechange: Pass NWidgetParts as span instead of begin/end pointers. ( #12779 )
2024-06-12 23:08:35 +01:00
Peter Nelson
4cf6d1dd79
Codechange: Pass WindowDesc by reference instead of pointer. ( #12771 )
...
WindowDesc as passed to Windows is not optional so don't allow to it to be nullptr.
2024-06-11 08:58:03 +01:00
Loïc Guilloux
c5ef47ee09
Codechange: [Script] Use std::unique_ptr for Company::ai_instance ( #12544 )
2024-04-20 16:58:46 +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
Rubidium
86cb184eb4
Codechange: use std::source_location over __FILE__ and __LINE__ for WindowDesc
2024-03-10 10:14:20 +01:00
Rubidium
bab5a8a787
Codechange: use std::source_location over __FILE__ and __LINE__ for Backup
2024-03-10 10:14:20 +01:00
Loïc Guilloux
ef40c5e240
Fix #12225 , 977aba7: [Script] Missing AI:ResetConfig support for running AI config ( #12226 )
2024-03-06 21:16:07 +01:00