Commit graph

575 commits

Author SHA1 Message Date
Areloch 1e21cc678f Fixes the handling of imageAssets for array'd field types, as well as fixing the editor behavior of guiBitmapCtrl so the imageAssets correctly update the fields upon editing 2024-02-04 14:45:19 -06:00
Brian Roberts 79e06af6dd
Merge pull request #1204 from Areloch/MLTextTypeOut
Adds ability for MLTextCtrl to type the characters out over time
2024-02-04 00:14:58 -06:00
Areloch 6de92264f6 Adds ability for MLTextCtrl to type the characters out over time 2024-02-04 00:13:33 -06:00
AzaezelX 67af2e0e0c resolve ambiguity
clang + ninja via clion disliked a string assignment from a case that could feed a string either another string or a char *, soi used the latter acroiss the board
2024-02-04 00:08:54 -06:00
Areloch da06fc1d96 * Fixes description for a few Scene methods
* Adds method to Scene to delete dynamic objects in the scene
* Add getNodeTransform to ShapeBase
* Add sanity check to AFX ea_update function to avoid divide by zero
* Adds ability to set color mul on GuiBitmapBorderCtrl like bitmapCtrl
* MatrixF utilty functions/operators
* Add ability to ignore an object in the containerBoxEmpty method call
* Adds some better initialization/sanity handling for resetWorldBox and resetRenderWorldBox for SceneObject
2024-02-03 23:42:26 -06:00
AzaezelX 7c5490e841 when pasting, ensure you add a unique name
object names are namespaces, so they cannot match or it confuses the lookup tables
2024-01-29 13:06:02 -06:00
Brian Roberts d3babcdbda
Merge pull request #1177 from Areloch/SearchFilterPopupCtrl
Search filter popup ctrl
2024-01-09 11:28:08 -06:00
Areloch 192862ba6d Cleans up removal/deletion logic 2024-01-09 04:00:51 -06:00
Areloch 829cc2b24a Adjusts some of the loading logic, for guiBitmapCtrl mostly, to not try and load ALL image content upfront during client init, improving load times 2024-01-07 23:09:41 -06:00
Brian Roberts cf7e9f7a00
Merge pull request #1172 from Areloch/BaseUIUpdate_Wipwork
BaseUI Update
2024-01-05 14:30:00 -06:00
Areloch 67ac556ecd - Added ability to explicitly execute a guiControl's console and altConsole command
- Fixed formatting of resolution strings for the internal values, allowing them to be properly parsed and applied by the options menu/canvas
- Fixed display of Display Device on option's menu
- Fixed Issue of it not displaying any keybinds in keyboard/gamepad options if there's only a single actionmap
- Added 'hold to scroll' action to optionsMenu
- Added apply button to options menu
- Added remap button to options menu when on keyboard/gamepad keybinds categories
- Fixed up the remap logic so remapping a key only unbinds the matched device being bound, so binds for different devices are untouched
- Made keybinds options properly refresh when keybinds are changed
- Shifted keyboard "go" keybind for menu nav from Enter to Space for easier use
- Removed stick keybinds from gamepad
2023-12-31 12:46:48 -06:00
AzaezelX 905139f500 make const RectI GuiWindowCtrl::getClientRect() respect ResizeMargin for sub elements 2023-12-29 12:55:28 -06:00
AzaezelX ea63a7448e expose guiwindowctrl resize margin to script
also up the default to 5 pixels
2023-12-29 12:15:30 -06:00
Areloch f5ab97242f - Added logic to guiButtonBaseCtrl so if highlighted and is part of a group, will signal the siblings in the group as well
- Standardizes highlighting behavior between keybind and mouse highlighting of buttons
- Standardized onHighlighted callback for buttonBase
- Fixed handling of up/down nav with gamepad stick
- Added logic to make holding down nav keybinds iterate over buttons in menu lists
2023-12-27 11:42:43 -06:00
Areloch 4f399eb87f Expanded functionality of the guiPopupCtrlEx to support search filtering 2023-12-25 17:00:51 -06:00
AzaezelX 4ed617f7df fix type list popup display 2023-12-20 18:51:12 -06:00
Areloch ce4c8dabc9 Ongoing wipwork of the BaseUI update. Some bugfixes pending 2023-12-16 23:18:33 -06:00
Areloch 616d974212 Wipwork for updating the BaseUI
Adds ability to select an actionmap for a GuiInputCtrl which will push it onto the stack, so menus can enact an action map
Update of the MainMenuGUI to fit new style and have the logic needed for KBM and gamepad navigation
Very early wipwork of OptionsMenu overhaul for new standard
2023-12-06 19:50:51 -06:00
AzaezelX 113b3324a8 filter out component inspector button callbacks
specifically targets the undo manager via avoiding onInspectorFieldModified et al tripping on clicks
2023-11-27 19:45:15 -06:00
Areloch 59247bd9ca Moves the world Editor guis to be based through a tabbed structure to make it easier to begin separating out editor/tool guis into their own tabs or elements for better separation.
Currently establishes the MainScene tab and otherwise retains existing behavior directly
2023-11-14 18:58:58 -06:00
AzaezelX 7a9715654d fix bitmap button state display 2023-11-12 19:49:45 -06:00
James Urquhart 97d7d2e992 Alternate fix for castRay issue 2023-11-04 22:06:13 +00:00
Areloch 473e566b70 Adds a separate gui profile for the popupmenus themselves that has a lighter border color, making it easier to keep track of the layout
Fixes the C++ asset creation and management function names so the AB can create C++ assets now
removes duplicate menuBuilder script file
2023-10-24 17:53:37 -05:00
Areloch c2d1e9d654 Expands functionality of MenuBuilder to act as primary API for building out menus
Shifts "Help" menubar entry in world editor to use new API structure as example/test
Removes extraneous 'MainEditor'
Adds EditorCore module
Moved Menubuilder to EditorCore module
Fixes Help Menu editor settings so they properly point at modern documentation and forum URLs
Fixes handling of MenuBar so when inserting new items, ensures the menubar refreshes as would be expected
Adds remove function to menubar to remove a menu
Removes old commented console methods from menubar file
Adds checks for onMouseDown and onMouseUp for PopupMenu so items that are submenus aren't clickable like normal items
2023-10-22 00:47:29 -05:00
AzaezelX b710a309bd asset load flow work
add reloading state to asset tracking,
convert most asset.isnull() checks on over to skipping out unless the errcode is ::Ok, or ::UsingFallback
add more errstriongcodes to hook up
skip load<type> execution if the asset loaded state is ::Ok
2023-10-08 13:19:43 -05:00
Lukas Aldershaab 89b0c7f73b Console Refactor 2023-09-13 10:33:20 +02:00
Brian Roberts 436cc91512
Merge pull request #1080 from Azaezel/alpha41/rangeUnRage
expand editor range fidelity to 7digits, and min/max to 10^32, not 10^3
2023-09-06 10:30:33 -05:00
AzaezelX e54c9428f0 expand editor range fidelity to 7digits, and min/max to 10^32, not 10^3 2023-09-05 11:04:39 -05:00
Areloch d0f914b3e6 From Nils' UI work
Adds ability to control button margin of IconButtons
Adds ability to define button offset of window controls
Add mouse drag callback for window controls
Tweaks colors of gui slider control
Tweak to line split for text edit slider bitmap control
Tweaks to colors for text edit slider control
Tweaks to colors for Edit control
Tweaks to default menubar height
2023-09-04 22:50:45 -05:00
marauder2k7 f127b084ce Add 2d value types
- TypePoint2F and TypePoint2I now display as multi dimensional
2023-07-04 07:15:03 +01:00
marauder2k7 22f8e46288 Copy and Paste
Copy and paste buttons added for multi dimensional fields
No longer name conflict errors coming up.
2023-07-03 20:59:16 +01:00
marauder2k7 a4e2bfe34e Commit before cleanup
-TypeRotationMatrix working as designed
no more funny business on focus.
2023-06-11 22:37:08 +01:00
marauder2k7 cbe2bd4c7b Conversions
Commit from Azaezel to fix the naming of inspector fields.
TypeMatrixField still messes around on first responder, we know these functions convert angAxis to eul properly and from eul to angAxis but when the data comes to TypeMatrix it changes.... weird issue is weird.
2023-06-11 21:59:03 +01:00
marauder2k7 92920dbcd9 Change to GuiTextEditSliderCtrl
Change dimension elements to a guiTextEditSliderCtrl
add a button to copy all elements of the multi dimension class to the platform clipboard
2023-06-10 21:30:58 +01:00
marauder2k7 0a7550eeba Update guiInspectorTypes.cpp 2023-06-10 18:15:03 +01:00
marauder2k7 e6dbe0a860 Add multi dimensional entries to inspector
-Added 3 new classes
GuiInspectorType2DValue - 2 dimensional value
GuiInspectorType3DValue - 3 dimensional value
GuiInspectorType4DValue - 4 dimensional value

Added GuiInspectorTypePoint3F for 3 dimensional positions.
Added GuiInspectorTypeMatrixRotation for object rotation. Translates rotation to degrees atm. Input from this is not accounted for just yet.
2023-06-10 16:50:59 +01:00
Brian Roberts 06e4ce01a9
Merge pull request #1024 from Azaezel/alpha41/TypeHints
add TypeHints for scenetree viewing
2023-06-02 10:46:33 -05:00
AzaezelX b1f118898e add TypeHints for inspector viewing
typehints operate as an additional label for a given class in the inspector, allowing one to specify what class-entry to use as a tag
examples: Prefab displays prefab filename
TSStatic displays the used shape asset name
SFXEmitter displays the played sound asset
GameBase derivatives display the datablock used
2023-05-23 12:35:07 -05:00
XXTH a81c6ebd06 clean up 2023-05-12 11:42:06 +02:00
XXTH e0ab3830af bsd ready 2023-05-10 14:58:47 +02:00
Brian Roberts a6f03897ed
Merge pull request #1016 from Azaezel/alpha41/mangledMath
clean up math varsize complaints
2023-05-08 21:28:49 -05:00
Brian Roberts 3538da30d0
Merge pull request #1014 from Azaezel/alpha41/EnumErrata
add safeties for enum math across define boundaries
2023-05-03 13:38:23 -05:00
AzaezelX 0d4221fa59 uninitialized and unused value cleanups
(cherry picked from commit 1f08602cf0ad84409cd8b3520510f9c6ce7d5f9c)
2023-05-01 10:40:02 -05:00
AzaezelX 0ce2da3a23 clean up math varsize complaints 2023-04-27 16:10:04 -05:00
AzaezelX aa02e48c8d add safeties for enum math across define boundaries 2023-04-26 22:27:35 -05:00
bank 93cea86312
Fix buffer overflow in GuiTreeViewCtrl class.
When calculating test length (in method `GuiTreeViewCtrl::Item::getDisplayTextLength()`)
the code doesn't take into account the `ItemState::Marked`, which
adds additional char in `GuiTreeViewCtrl::Item::getDisplayText()` method.

This commit fixes warning printed into console when calling `dSprintf()`
as the buffer is now enough to fit all data.
2023-04-24 13:41:19 +03:00
AtomicWalrus 75625dc679 Reverse depth & 32F buffer format
-Adds reversed depth projection model, dramatically increasing depth buffer effective resolution.
-Adds 32F depth 8U stencil format GFXFormatD32FS8X24 (following DX naming conventions). Note this is a 64-bit format, and likely not suitable for mobile platforms. Revert to GFXFormatD24S8 in renderManager.tscript for mobile & "ancient" platforms.
-Corrects alignment of texture type details array.
2023-04-14 20:13:28 -06:00
Areloch b4f62a8005 Adds console methods to GuiInspectorField to ensure we can set the special edit variable name, type and callbacks for proper editor integration of script-managed types.
Adds default value for mVariableType to prevent bad data causing a crash.
2023-03-25 13:56:30 -05:00
Areloch a62024a677 Fixes the handling for special edit fields in the inspector to properly hook into the field's docs display 2023-03-21 19:48:25 -05:00
Areloch 2f40b843d4 Adds expanded ability to create and insert specialized script-based inspector fields
Adds logic during the editor script initialization to let game modules have embedded tools
Changed setting to force prompt for target modules when creating things like datablocks to minimize confusion about where they save to
2023-03-18 02:22:47 -05:00