Commit Graph

56501 Commits (c466292d8a51a4f3541ef75de11908c79835665f)
 

Author SHA1 Message Date
Jonathan G Rennison 3436e0a781 Merge branch 'master' into jgrpp
# Conflicts:
#	src/error.h
#	src/error_gui.cpp
#	src/linkgraph/linkgraph_gui.cpp
#	src/misc_gui.cpp
#	src/newgrf_gui.cpp
#	src/news_gui.cpp
#	src/rail_cmd.cpp
#	src/saveload/gamelog_sl.cpp
#	src/script/api/script_text.cpp
#	src/script/script_instance.cpp
#	src/statusbar_gui.cpp
#	src/strings.cpp
#	src/strings_func.h
#	src/strings_internal.h
#	src/table/settings/gui_settings.ini
#	src/table/settings/linkgraph_settings.ini
#	src/textbuf_gui.h
7 months ago
Peter Nelson ab535c0a86
Codechange: Add base() method to StrongType to allow access to the base type without casting. (#11445)
This removes the ability to explicitly cast to the base type, but the requirement
to use .base() means the conversion is still explicit.
7 months ago
translators 737775f834 Update: Translations from eints
korean: 14 changes by telk5093
polish: 1 change by pAter-exe
7 months ago
Peter Nelson badce415ea Change: Add horizontal scrollbar to Industry Directory window.
This list could be very wide depending on industries and language.
7 months ago
Peter Nelson 8ff6562b2f Codechange: Reduce variable scope. 7 months ago
Peter Nelson 6b9dc8cfcf Codechange: Don't filter industry list by cargo type every 3-sec refresh.
The 3-sec refresh is to update the list sorting. The filter only needs to
be applied once rebuilding the list.
7 months ago
Peter Nelson 4033750968 Codechange: Remove redundant NWID_VERTICAL in Industry Directory layout. 7 months ago
Peter Nelson d380f2f3a2 Codechange: Simplify layout of depot pickers. 7 months ago
Peter Nelson 665902f5ba Codechange: Add widget dimensions to standardise picker winodws. 7 months ago
Peter Nelson 3cab980b30 Codechange: Skip invisible (zero-size) widgets in PIP Containers.
This gets rid of doubled-up spacing where an invisible child widget would be.
7 months ago
Peter Nelson 6317967dba Codechange: Add ability to allocate PIP-space dynamically by ratio.
This can be used to space out, centre, start-align, or end-align widgets without additional spacers.
7 months ago
Peter Nelson ac54bd7e58 Codechange: Apply PIP during AssignSizePosition() instead of SetupSmallestSize(). 7 months ago
Peter Nelson 43aa91a7f5
Fix #11437: Flipped shorter rail vehicles disappear in windows. (#11446)
Mixed signed/unsigned strikes again, causing an incorrect sprite offset for shortened vehicles.
7 months ago
Peter Nelson a9aaa2a183 Codechange: Don't be lenient with invalid NWidgetPart lists.
Some NWidgetPart combinations were ignored but it was not clear that they do nothing. Instead, assert if NWidgetPart is incorrectly applied.
7 months ago
Peter Nelson b1eb5533eb Add: WindowDesc unit test to validate NWidgetPart lists. 7 months ago
Peter Nelson 1c94fb0389 Add: Mock sprite cache intialization.
This fills up the sprite cache with SPR_OPENTTD_BASE + OPENTTD_SPRITE_COUNT zero-size sprites, to
allow GetSpriteSize() calls to continue from unit-tests.
7 months ago
Peter Nelson 05436d9c2f Add: Expose minimal parts of SpriteCache internals.
These parts are needed to be able to mock the SpriteCache for unit-tests.
7 months ago
Peter Nelson 46f63074da Add: MockFontCache for testing GUI code that only needs to know font sizes. 7 months ago
translators af4c7799fe Update: Translations from eints
korean: 1 change by telk5093
finnish: 1 change by hpiirai
portuguese (brazilian): 1 change by pasantoro
7 months ago
Peter Nelson b5861fd8f3
Fix: Using MIN_YEAR for a date is probably wrong, Use MIN_DATE instead. (#11444)
Even with strong types ...
7 months ago
Peter Nelson ef385499c7
Codechange: Remove ineffective NWidgetParts. (#11443) 7 months ago
translators 01728177e7 Update: Translations from eints
english (us): 3 changes by 2TallTyler
french: 2 changes by Lishouuu
7 months ago
Michael Lutz 071fdab236 Codechange: Replicate cursor screen backup to chat message display, removing explicit memory management.
Incidentally, this makes Blitter::GetBytesPerPixel unneeed.
7 months ago
Peter Nelson bbd64bbe2b
Fix #9545: Crash when all cargo types are disabled. (#11432)
This is not a very useful state, but it's nice to not crash.

Some parts of the game don't (yet) check for cargo types being redefined, that is out-of-scope here.
7 months ago
Patric Stout c059ce0c97
Fix cda6f24f: don't ignore binary-dir if it happens to be working-dir (#11431)
Some of our code ignores the SP_WORKING_DIR for some actions, which
means that if, for example, your SP_BINARY_DIR is the same as your
SP_WORKING_DIR, neither is scanned.

Instead, only add SP_WORKING_DIR if it is unique.
7 months ago
Peter Nelson db6b32e421
Codechange: Avoid pointers and lengthof in ExpensesList. (#11427)
Use std::initializer_list which allows iteration.
7 months ago
Michael Lutz 86e28e79fb Fix #11402: Make string filter locale-aware. 7 months ago
Michael Lutz c294eaacc1 Fix: char_traits::find needs to return nullptr if nothing was found. 7 months ago
Peter Nelson 7d4a91ef9e
Cleanup: Remove some unused functions. (#11429)
These were picked up with cppcheck.
7 months ago
translators 4c58df75fd Update: Translations from eints
english (au): 1 change by krysclarke
russian: 1 change by Ln-Wolf
dutch: 3 changes by Afoklala
portuguese: 1 change by azulcosta
7 months ago
Peter Nelson ce6e739491 Codechange: Add unit-test to check if nested widget parts of properly closed.
Properly closed means exactly one EndContainer for every Container widget.
7 months ago
Peter Nelson e8db137135 Codechange: Move test for Container WidgetType to helper function. 7 months ago
Peter Nelson d4a77411a5
Fix: Some NWidget lists were not properly closed. (#11425) 7 months ago
Peter Nelson cda896bca5 Remove: windowdesc-ini-key workflow, as this is now performed more reliably by a unit-test. 7 months ago
Peter Nelson e563057478 Add: WindowDesc unit test to validate ini-key value.
ini-key must be present if WWT_DEFSIZEBOX or WWT_STICKYBOX is present.
This was previously enforced by a workflow, however that parsed the source
code with regex which turned out to be error-prone.
7 months ago
Peter Nelson 18fb8e153f Codechange: Add __FILE__/__LINE__ of WindowDesc to WindowDesc.
This is to allow unit-tests to produce more useful output.
7 months ago
Peter Nelson 873f93cab1
Fix: AI config window should not have an ini_key. (#11423)
This was missed by the workflow script that enforces this constraint.
7 months ago
translators 82ebc9860b Update: Translations from eints
finnish: 2 changes by hpiirai
danish: 1 change by bscargo
7 months ago
Rubidium a849b4e175 Fix: allow same length server password in the UI 7 months ago
Rubidium c6411168d8 Cleanup: missing spaces before continuation * in some comments 7 months ago
Peter Nelson c687b59efc Codechange: Use unique_ptr for SmallMapWindow's overlay. 7 months ago
Peter Nelson 53845bc024 Codechange: Move includes to correct place.
Some other source file inadvertently included things via smallmap_gui.h
7 months ago
Peter Nelson ed8df72c49 Revert 6b68956: Move declaration of SmallMapWindow out of header file.
This split needlessly complicates `SmallMapWindow` for the sake of one method (no longer) used by `LinkGraphOverlay`.
7 months ago
Peter Nelson f91462f54b Codechange: Don't access SmallMapWindow method directly from LinkGraphOverlay. 7 months ago
Peter Nelson ff5e8bb9a3 Fix #11413: Incorrect sorting by industry production.
Error caused by single character mistake. However this algorithm was inefficent if a filter was specified, and clearly the flow was error-prone.

Now using separately-scoped loops to avoid similar.
7 months ago
Peter Nelson 278b42d078 Codechange: Document Industry::GetCargoProduced/Accepted and add const-variant. 7 months ago
Peter Nelson 4f3adc038a Cleanup: Use standard comment codestyle. 7 months ago
Tyler Trahan 49d53c41ab
Doc: Don't use other names for road vehicle bay stops (#11418) 7 months ago
Peter Nelson d3cb6e1e67
Codechange: Call Widget::SetDirty/SetLowered directly. (#11417)
In these instances we already have the widget to hand, so don't need to look it up by index again.
7 months ago
Tyler Trahan 89480f3531
Change: Don't set vehicle on time if timetable not started (#11359) 7 months ago