1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-25 07:44:38 +01:00
Commit Graph

267 Commits

Author SHA1 Message Date
Harry Hopkinson
371dcc28f5 More efficiently search viewports 2025-05-26 08:37:15 +01:00
mix
cc813e3f16 Refactor window visibility cache and fix viewport visibility 2025-05-21 18:06:06 +01:00
ζeh Matt
39479d7b12 Use vector and unique_ptr for windows storage 2025-05-17 00:45:08 +03:00
Matt
6335c31336 Rename DrawPixelInfo to RenderTarget (#24339)
* Begin backend separation, rename type DrawingPixelInfo to RenderTarget

* Rename dpi variables to rt
2025-05-04 22:06:46 +00:00
Gymnasiast
734c0959ef Widen WindowFlags to 32 bits 2025-04-19 14:07:02 +02:00
Aaron van Geffen
a8267412c2 Move title height helper functions to WindowBase and fix FlexUI plugins 2025-04-11 23:26:34 +02:00
Aaron van Geffen
3f87e2b67a Centralise ResizeFrame in WindowBase and call when setting widgets or resizing 2025-04-11 20:37:54 +02:00
Aaron van Geffen
6d7b312e7a Make WF_NO_TITLE_BAR actually fit in the uint16_t that is WindowBase::flags 2025-03-14 14:08:14 +01:00
Garrett Leach
3578216d4d Remove unused includes (#24186)
Processing GameAction.h takes the most amount of time (in the Windows build) when rebuiding libopenrct2. Reducing the includes should speed the build up by a tiny bit. Window.h used the most processing time for libopenrct2-ui.
2025-04-10 18:05:41 +02:00
Michael Steenbeek
8266447904 Split LOADSAVETYPE_* into LoadSaveAction and LoadSaveType 2025-03-06 21:06:39 +00:00
Gymnasiast
09da9779a5 Change Tool members to new codestyle 2025-03-01 20:12:12 +01:00
Gymnasiast
cf706ed5f6 Change GuestListFilterType members to new codestyle 2025-03-01 20:12:12 +01:00
Gymnasiast
9982f74cb7 Change CloseWindowModifier members to new codestyle 2025-03-01 20:12:12 +01:00
Gymnasiast
17140192de Change VisibilityCache members to new codestyle 2025-03-01 20:12:12 +01:00
Gymnasiast
a45625fc3e Change PromptMode members to new codestyle 2025-03-01 20:12:11 +01:00
Gymnasiast
9cf02f3635 Refactor MODAL_RESULT_* to enum 2025-03-01 20:12:11 +01:00
Michael Steenbeek
078ba79cb8 Introduce WF_NO_TITLE_BAR and apply to windows 2025-02-26 21:09:54 +01:00
Aaron van Geffen
cf448753c1 Move WindowInvalidate and WidgetInvalidate families into WindowManager (#23692)
* Move WindowInvalidate and WidgetInvalidate families into WindowManager

* Use InvalidateWidget shorthand in more places

* Cut back on UiContext includes

* Cut back on Window.h includes

* Remove outdated parameter comments
2025-01-25 13:46:08 +01:00
Aaron van Geffen
c8da126c95 Move Viewport struct to Viewport.h 2025-01-24 22:44:21 +01:00
Michael Steenbeek
f70d202cf0 Create buttons for vertical drops in construction window (#23665) 2025-01-22 19:22:03 +01:00
Aaron van Geffen
a8773dd805 Move WindowClose family into WindowManager (#23646)
* Replace WindowClose() calls with Close method calls where possible

* Move WindowClose family into WindowManager

* Remove UpdateSceneryGroupIndexes hack
2025-01-19 18:49:18 +01:00
Aaron van Geffen
bed4d5bdca Move WindowCreate and WindowFocusOrCreate into WindowManager (#23643)
* Move WindowBringToFront into WindowManager

* Move WindowCreate and WindowFocusOrCreate into WindowManager

* Cut back on Context/UiContext includes
2025-01-19 06:58:28 -03:00
Aaron van Geffen
e1fa0b539d Move Widget, Window, Intent, MouseInput into OpenRCT2 namespace (#23642) 2025-01-18 15:29:41 +02:00
Matt
b9f6b6f754 Refactor widgets state (#23621)
* Refactor windows to not share widget state

* First half of refactoring all the windows

* Refactor the remaining windows, compiles but has issues

* Fix drawing only every second widget

* Remove the need of an terminating widget

* Address WidgetIndex signedness issues; use kWidgetIndexNull more

* Address constexpr issue with Widget content union

* Fix tabs in scenery window

* Fix tabs in object selection window

* Adjust custom widget index for CustomTool events

* Use STR_NONE for default tooltip initialisation

* Adjustment for mingw compiler

* Fix bottom toolbar using the widget declaration not instance

* Remove pointless code in Guest window, handled by SetPage

* Prevent out of bounds crash

* Move scroll widgets initialization to SetPage in Cheats window

* Remove special logic in Options window

* Remove special logic in Park window

* Remove special logic for Player window

* Remove special logic for Research window

* Remove special logic for Ride window

* Remove special logic for Staff window

* Remove special logic for Finances window

* Remove special logic for MapGen window

* Remove special logic for editor objective options window

* Remove special logic for editor scenario options window

* Fix widgets not being set since page is initialized to 0

* Remove more redundant code

* Fix remaining access to widget declarations

* Remove unused variable

* Fix editor object selection tabs on successive windows

---------

Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
2025-01-18 13:45:17 +01:00
Andrew
60b6907c44 Fixed tile inspector shortcut keys for raise/lower height 2025-01-14 00:09:21 +01:00
Gymnasiast
5b3c8d8971 Fix positioning of "Install new track" button 2025-01-10 16:14:21 +01:00
Aaron van Geffen
aa45247f21 Move WindowFind functions into WindowManager (#23517)
* Move WindowFind* functions into WindowManager

* Update parameter documentation where applicable
2025-01-08 21:12:11 +01:00
Aaron van Geffen
fa06a49302 Update copyright year to 2025 (#23514) 2024-12-31 20:30:04 +01:00
Aaron van Geffen
6ee798337a Introduce EnumUtils header (#23407) 2024-12-15 17:39:52 +01:00
ζeh Matt
ba30f781f4 Remove WindowFlushDead, shouldn't be used directly 2024-12-04 21:18:25 +02:00
ζeh Matt
9dfd4f3b19 Rename the callback types 2024-12-04 20:43:55 +02:00
Aaron van Geffen
80b63a5ae7 Add line breaks after template declarations (#23086)
* Add line breaks after template declarations

* Additional clang-format patches
2024-10-29 16:54:01 +01:00
Michael Bernardi
cf9e4ae0f3 Rewrite ViewportRedrawAfterShift to avoid copying Viewport 2024-09-27 00:07:40 +10:00
Michael Bernardi
8cc53324b6 Remove view width and height from Viewport struct 2024-09-27 00:07:40 +10:00
Michael Steenbeek
a53784551b Move _legacy.cpp contents to UI project (#22811) 2024-09-22 21:00:52 +02:00
Aaron van Geffen
aa7eb18d78 Rename ScrollBar struct to ScrollArea and rename its properties (#22539) 2024-08-11 16:21:53 +02:00
Aaron van Geffen
bc055f4031 Replace SCROLLBAR_SIZE macro with kScrollBarWidth constant 2024-08-09 19:48:04 +02:00
Aaron van Geffen
03bc1e5707 Introduce isToolActive function as alternative for globals (#22430)
* Introduce isToolActive function
* Ride window: use isToolActive instead of gCurrentToolWidget
* Footpath window: use isToolActive instead of gCurrentToolWidget
* Staff window: use isToolActive instead of gCurrentToolWidget
* MazeConstruction window: use isToolActive instead of gCurrentToolWidget
* Guest window: use isToolActive instead of gCurrentToolWidget
* Map window: use isToolActive instead of gCurrentToolWidget
* LandRights window: use isToolActive instead of gCurrentToolWidget
* Replace SceneryToolIsActive legacy function with calls to isToolActive
* ClearScenery window: use isToolActive instead of gCurrentToolWidget
* Scenery window: use isToolActive instead of gCurrentToolWidget
* Water window: use isToolActive instead of gCurrentToolWidget
* Land window: use isToolActive instead of gCurrentToolWidget
* Widget: replace WidgetIsActiveTool with isToolActive
* RideConstruction window: use isToolActive instead of gCurrentToolWidget
* Ride: use isToolActive instead of gCurrentToolWidget
* TrackDesignPlace window: use isToolActive instead of gCurrentToolWidget
* StaffList window: use isToolActive instead of gCurrentToolWidget
* ViewClipping window: use isToolActive instead of gCurrentToolWidget
* PatrolArea window: use isToolActive instead of gCurrentToolWidget
* TileInspector window: use isToolActive instead of gCurrentToolWidget
* Park window: use isToolActive instead of gCurrentToolWidget
2024-08-05 10:47:36 +02:00
Michael Steenbeek
e813532efb Close #15750: Multiple park entrance types in one park (#21909)
* Add new park entrance placement window

* Start entrance tool as soon as window opens;

* Rename constants to conform to current code standards

* Increment PARK_FILE_CURRENT_VERSION

* Increment kNetworkStreamVersion

Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
2024-08-04 23:02:16 +00:00
Aaron van Geffen
5b1c867f23 Add bulldozer cursor for clear scenery tool 2024-08-03 20:44:12 +02:00
Duncan
144fa13a84 Move more Ui functions to Ui library (#22444)
* Move various methods into the ui library

* Move various zoom functions to ui
2024-08-01 19:09:06 +00:00
Aaron van Geffen
706fd8f3f0 Fix #21175: Some hotkeys don't work when toolbars are hidden 2024-07-31 21:54:10 +02:00
Aaron van Geffen
c9915efc11 Move scenery tool functions from TopToolbar.cpp into Scenery.cpp 2024-07-31 21:53:35 +02:00
Duncan
3393fa36d3 Move Ui window functions into Ui library (#22426)
* Move scroll widget functions

* Move window move functions

* De-snake

* Move further functions to ui

* Move widget function to widget file

* Move window create to ui
2024-07-31 15:06:19 +01:00
Aaron van Geffen
05e56517ab Adopt existing namespaces into OpenRCT2 namespace (#22368)
* Put all of TitleSequenceManager into the same namespace

* Move RideConstructionState into the OpenRCT2 namespace

* Adopt existing namespaces into OpenRCT2 namespace

This adds `using namespace OpenRCT2` to compilation units where appropriate,
as a means to get the codebase to compile until these units have been placed
in a namespace of their own.
2024-07-26 09:59:58 +02:00
Aaron van Geffen
ef7dbe496a Introduce VIEWPORT_FLAG_RENDERING_INHIBITED 2024-07-15 01:17:57 +02:00
Aaron van Geffen
6de514c387 Address minor code style violation in unsigned suffix (#22306) 2024-07-15 21:16:30 +02:00
Aaron van Geffen
b5ef2693b0 Remove common.h include from all units 2024-07-09 16:45:19 +02:00
Gymnasiast
8a181b5513 Split colours and colour flags 2024-05-26 12:35:40 +02:00
Gymnasiast
7d3ac7ea9d Add moveTo() to Widget 2024-05-19 20:20:29 +02:00