58 Days Ago
Created EditorKeybinds.cs with a few starting keybinds Move Keybinds into EditorPreferences since that makes more sense Add RegisterShortcuts() function whenever shortcuts are registered and use the EditorPreferences keybind instead of hardcoded string Added Editor Keybinds page to EditorPreferencesWindow Subscribe all RegisterShortcut voids to keybinds.update EditorEvent https://files.facepunch.com/CarsonKompon/2024/July/10_21-46-TautDuck.mp4 Create shortcut for EditorCycleViewMode Make Keybinds page scrollable, add Reset to Default button, and add Are You Sure popup to Reset button Use TitleAttribute for keybind names https://files.facepunch.com/CarsonKompon/2024/July/10_22-23-FakeGourami.png Add AllowModifiers to KeyBind widget, set to true for Editor Keybinds Page (Allows you to bind CTRL+SHIFT+ALT+Whatever) Some FileOption binds, but they dont auto-update yet. Will need to find a good way to do that for Option entries Call keybinds.update EditorEvent on Reset to Default Created EditorShortcuts.cs to eventually replace EditorPreferences.Keybinds Need to call this after EditorTypeLibrary is created Register shortcuts elsewhere and remove some option shortcuts Change default shortcut type Register shortcuts on hotload Convert some older shortcuts into the new [Shortcut] attribute Change shortcut defaults Update EditorShortcuts to include Identifier and Keys, including method to get current keys from overrides (player defined overrides) Display [Shortcut] shortcuts in Editor Keybinds page instead of EditorPreferences.Keybinds EditorShortcuts rebinding actually works now, much more lightweight than prior version Make user overrides save properly Get Name and Group properly, allow attributes to override. Get keys from shortcut name in Option.cs