Shipwright/soh/include
Malkierian 7e392e63a8
Modern Menu (#5116)
* Add menu files, hook menu up to window system.
Temporarily rename new menu's UIWidgets to UIWidgets2 to allow both menu systems to coexist temporarily.

* Finish implementing new menu.
Rename 2ship UIWidgets to UIWidgets2 to complete facilitation of both menus working for now.

* More preliminary setup

* More prepwork, begin on settings options

* Finish settings, add enhancements windows

* Fix search function not looking past first columns.

* Add dev tool windows

* Finish dev tools

* Add about window

* Fully replace about window

* Remove moved menu items from menubar, add more windows to new menu

* Implement WindowButtonOptions.
Add ability to not embed popout windows when not popped out.
Add ability to hide the button for WindowButtons.
Fix Entrance Tracker from showing when not enabled.

* Fix entrance tracker settings embedded display.
Fix entrance tracker settings window original size declaration.

* Initial implementation of themed radio button widget.

* Move "About" section to second column of general.
Fix sidebar sections starting in second column.

* Restore Entrance Tracker `Draw()` to allow for custom styling.

* Fix combobox positioning formatting.
Fix color picker end spacing.
Convert everything in check tracker settings to UIWidgets2 (except color pickers and section headers).
Make all tracker windows not embed.

* Minor cleanup

* Fix main volume defaults & mirror jitter fix removal on dev

* Improve color picker with RGB/RGBA options. Not finished.

* Finish creating CVarColorPicker and implement for Check Tracker background color.
Fix tracker and network prefixes.

* Finish check tracker settings and convert check tracker.

* Port all Cheats menu except for Beta Quest

* Port over Beta Quest to new menu

* Remove old cheats menu

* Port cutscene skips to modern menu

* Port Timesaver Enhancements to new menu

* Port the Items and Item Count Messages submenu

* Port Difficulty Options to new Menu

* Removes options that have been ported thus far.

* Port "Reduced Clutter" options to new menu

* Add forgotten callbacks to Hyper Enemies/Bosses

* Copy StateButton to UIWidgets2, and implement custom padding for them in the tracker.

* Ports some pause menu related settinga

* Change tracker window active title color.
Make state buttons smaller in tracker to get more info on screen.

* Convert window title active theming to all windows.

* Port the rest of Enhancements->Gameplay to new menu

* Port the "Graphics" Enhancements to new menu

* Ports Fixes over to the Modern Menu

* Ported Restorations to Modern Menu

* Ported Extra Modes to new menu

* Port Autosave and Boot Sequence to modern menu

* Cleans up some leftover data for ported buttons

* Ports Enhancement Presets to new menu

* Port Additional timers to new menu. Removes Enhancements from old menu

* Cleans up some unused stuff

* Ports Randomizer Enhancements to modern menu

* Convert Item Tracker Settings. Something's wrong with the comboboxes in a second column of a table.

* Fix combobox alignment and label position calculations.

* Convert Entrance Tracker window.

* Save Editor Info tab finished.
Added `PushStyleInput` and `PushStyleTabs` for Info tab.
Fixed some indentation in entrance tracker source.
Added font push to tracker windows.

* Increase size of all icons in save editor.

* Convert flag groups to child windows for automatic sizing and border drawing.

* Flags tab completed.
Finished inventory tab.

* Convert save editor help hover to UIWidgets2.

* Various fixes and corrections

* Start cosmetics editor, fix theme colors not updating

* Cosmetics editor conversion progress

* Remove Mac internal resolution restrictions.

* Copy over advanced resolution partial and enable most options as a custom widget.

* Add size to float sliders, more cosmetics editor progress

* Fix incorrect cvar for notifications

* Radio button & header color options, more cosmetics editor progress

* Finish cosmetics editor conversion

* Create and apply THEME_COLOR macro. Resides in SohGui for easy access to mSohMenu.

* Move ResolutionEditor to SohGui directory.

* Add labels to build info.
Fix slider width calculations.

* Fix some advanced resolution widget hiding.

* Fully implement Advanced Resolution options.
Fix graphics settings formatting.
Improve slider label position calculations.
Implement Clamp options on sliders.

* Finish save editor.
Convert save editor code to `using namespace UIWidgets2`.
Fix search crashing on time splits window.
Remove `SetLastItemHoverText` from `UIWidgets2`.

* Unify cvar sectioning in time splits.

* Add InputString and InputInt widgets, and corresponding CVar Widgets

* Adds Widget Type for Inputs, not currently used.

* Convert Sail to modern menu

* Add Combobox that takes a vector of std::strings

* Convert checkbox and combobx to new widgets

* Add Tristate checkbox

* Convert sliders and tristate checkboxes

* Convert top half of Rando window

* remove/replace remainder of UIWidgets usage in option.cpp

* Converts tricks, locations, and removes old UIWidgets refs

* Fix windows build errors

* Remove Tri-State checkboxes

* Use PushStyleInput instead of PushStyleSlider

lol oops didn't realize it was a thing in Ship.

* Rebase and address review comments

* Convert Crowd Control to modern menu.

* Fix build error

* Audio editor progress

* Re-add CVar SaveOnNextFrame calls to Resolution Editor.
Remove old Resolution Editor files.

* Convert TimeSplits to new menu.
Fix a few enum warnings.

* Decrease padding on Arrow Buttons

* Audio editor + gameplay stats done

* Give Randomizer Menu more screen real-estate

* Port plandomizer menu

* Fix slider width calculation and allow combobox LabelPosition::None

* Fix None labelPos and slider width for inline labels

* Fix all slider value label insertions.
Convert Collision Viewer.

* Minor Collision Viewer enum change.
Convert Actor Viewer.

* Theme/convert Message Viewer.

* Add font to Message Viewer.
Theme Value Viewer.

* DL Viewer and SohModals themed.

* Convert Input Viewer.

* Missed some color settings in Input Viewer.
Removed UIWidgets references from Controller Config, and restored SoH version.

* Remove UIWidgets.hpp include from multiple files.

* Completely remove old UIWidgets.
Rename UIWidgets2 to UIWidgets.
Move Accessibility and Language options to new menu.

* Fix Gfx Debugger not showing up.
Remove menubar registration.

* Fix clearCvars references.

* Fix passing std::string to const char* argument.

* enum name spacing

---------

Co-authored-by: aMannus <mannusmenting@gmail.com>
Co-authored-by: Christopher Leggett <chris@leggett.dev>
2025-03-15 16:11:30 -07:00
..
boost_custom/container_hash Fix: add workaround for boost versions >=1.84.0 (#4098) 2024-05-01 16:41:17 -04:00
libc Small Warnings Refactor (#4477) 2024-10-28 17:30:11 -07:00
tables Entrance Enum and Name Refactor (#4484) 2024-10-30 19:44:34 -07:00
align_asset_macro.h Simplify Asset Headers (#2474) 2023-03-02 15:37:47 +01:00
alignment.h [docs] Upstream updates 1 (#1955) 2022-11-30 00:28:57 +01:00
alloca.h Linux/GCC Support (#28) 2022-05-11 13:18:24 -04:00
attributes.h pull in decomp updates for z_play (#4522) 2024-11-07 09:52:21 -07:00
command_macros_base.h Big-endian support (#909) 2022-07-27 23:50:56 +02:00
fp.h Dynamic Actor IDs (#1729) 2023-06-01 21:39:50 -04:00
functions.h Autosave Overhaul (#5022) 2025-02-14 21:29:22 +01:00
gfx.h Port over decomp updates for vis* and reimplement vismono fb (#4533) 2024-11-09 12:51:31 -05:00
global.h OTRGlobals cleanup (#4251) 2024-11-19 09:44:44 -07:00
ichain.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
macro.inc git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
macros.h Remove POLY_KAL and restore POLY_OPA for kaleido (#5041) 2025-02-12 21:30:06 +01:00
message_data_fmt.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
message_data_static.h Randomizer v2 (#1065) 2022-09-21 00:50:22 -04:00
message_data_textbox_types.h Randomizer v2 (#1065) 2022-09-21 00:50:22 -04:00
regs.h Transition docs (#3322) 2023-11-19 02:38:07 -05:00
segment_symbols.h Linux crash handler (#1209) 2022-08-31 22:59:38 -04:00
sequence.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
sfx.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
unk.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
variables.h Modern Menu (#5116) 2025-03-15 16:11:30 -07:00
vt.h Disable BEL char by default when terminal attached (#2306) 2023-01-17 15:18:13 -05:00
z64.h Remove POLY_KAL and restore POLY_OPA for kaleido (#5041) 2025-02-12 21:30:06 +01:00
z64actor.h Update Actor Flags to decomp (#4822) 2025-01-16 04:02:23 +01:00
z64actor_enum.h Rando Definition Deduplication (#3284) 2023-10-19 18:48:25 -05:00
z64animation.h Removed hardcoded skeleton types in actor draw code. (#2979) 2023-09-26 08:45:10 -05:00
z64audio.h docs: update func_800FADF8 to Audio_ResetActiveSequences (#3471) 2023-12-26 13:30:49 -05:00
z64bgcheck.h Use PlayState instead of GlobalContext (#1927) 2022-11-06 09:24:34 +01:00
z64camera.h refactor: use LUS 1.0 RC 2023-01-17 00:33:56 -05:00
z64collision_check.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
z64cutscene.h z_player documentation 2024-10-11 (#4407) 2024-10-17 11:55:31 -07:00
z64cutscene_commands.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
z64dma.h refactor: use LUS 1.0 RC 2023-01-17 00:33:56 -05:00
z64effect.h Added and implemented TrailType enum (#5059) 2025-02-17 20:03:55 -05:00
z64elf_message.h refactor: use LUS 1.0 RC 2023-01-17 00:33:56 -05:00
z64environment.h Transition docs (#3322) 2023-11-19 02:38:07 -05:00
z64interface.h DPad items 2022-06-22 23:13:32 -04:00
z64item.h Fix duplicate fishing checks and a crash with fishing rod hint (#4288) 2024-10-05 13:32:06 -07:00
z64light.h refactor: use LUS 1.0 RC 2023-01-17 00:33:56 -05:00
z64map_mark.h refactor: use LUS 1.0 RC 2023-01-17 00:33:56 -05:00
z64math.h Move Game Saving to Separate Thread (#2820) 2023-05-05 17:20:34 -04:00
z64object.h git subrepo clone https://github.com/HarbourMasters/soh.git 2022-03-22 02:51:23 +01:00
z64player.h pull in startMode docs (#4988) 2025-02-03 18:58:49 -05:00
z64save.h Trade cleanup (#4971) 2025-02-25 12:09:01 +01:00
z64scene.h Merge branch 'develop' into merge-develop 2023-12-10 12:49:15 -05:00
z64scene_enum.h Rando Definition Deduplication (#3284) 2023-10-19 18:48:25 -05:00
z64skin.h Use PlayState instead of GlobalContext (#1927) 2022-11-06 09:24:34 +01:00
z64transition.h Transition docs (#3322) 2023-11-19 02:38:07 -05:00
z64vis.h Port over decomp updates for vis* and reimplement vismono fb (#4533) 2024-11-09 12:51:31 -05:00