Commit graph

213 commits

Author SHA1 Message Date
AzaezelX 2b8d7855e4 crashfixes
IRangeValidatorScaled display was looking in the wrong var
afxMagicMissileData was misconverted and lacked a NULL initializer
2025-11-23 15:10:37 -06:00
AzaezelX da2fd36dd2 add safeties for GuiShapeEdPreview animthread
bunch of spots we were assuming no one would ever script an invalid entry.
2025-10-06 17:47:11 -05:00
Brian Roberts e73efc13c4
Merge pull request #1541 from Areloch/MiscFixes_20250825
Misc small fixes, improvements and QoL tweaks
2025-08-26 01:43:57 -05:00
JeffR 9c654d7932 - Fixes the display of the preview in the MaterialAsset fields
- Hides the special-case direct filepath field for ShapeAsset persist fields macro
- Shifts the handling of TSStatics so the shape instance will load materials on the server as well as the client. This opens gameplay options as well as allowing rebaking of meshes functionality more easily
- Expands AssetBase's isValidAsset utility function to actually check validity instead of just returning true
- Adds isValid utility function to AssetPtr
- Added new field flag that makes the field not write out to file
- Removed legacy iconBitmap field from GuiIconButtonCtrl because it was causing errors
- Fixed group filtering check of guiInspector to ignore case
- Removed unneeded isFile checks for common datablock script files in Prototyping module script
- Removed test datablocks from Prototyping module
- Removed unnecessary container control from AssetBrowser
- Adjusted preview regen logic of AssetBrowser so it doesn't trip if you're simply resizing the window
- Fixed issue where row-vs-column layout logic for AssetBrowser when resizing window was fiddly
- Added handling for when Dragging and Dropping datablock from AssetBrowser to spawn, it'll prompt if it spawns the actual object, or a spawnsphere that spawns said object. In the event of an PlayerData will also prompt if it should spawn an AIPlayer
- Added ability to take a TSStatic that uses a baked down mesh and are able to restore it to the cache prefab, or trigger and in-place rebake to refresh it if something has changed in the original contents via RMB menu on the scene tree
- Added ability to explode prefab to RMB menu on scene tree
- Added ability to convert selection to prefab or bake to mesh in RMB menu on scene tree
- Tweaked sizing of the DatablockEditorCreatePrompt window to not have cut off elements and easier to see/work with
- Added sanity check to datablock editor creation
- Fixed preview display of material in Decal Editor
- Made compositeTextureEditor use the cached preview of images
- Fixed sizing/spacing of gui selection dropdown as well as resolution dropdown of GuiEditor
- Fixes MaterialEditor to properly save the group collapse state when editing
- Adds ability to in-flow edit and create datablocks in the NavMesh Editor for the testing panel, and makes the datablock dropdown searchable
- Fixed issue where opening the ShapeEditor via the edit button on a ShapeAsset field would cause the action buttons on the top bar to not show
- Fixed error in shape editor where when exiting it was erroneously checking for a clear value of -1 rather than 0
- Removed unneeded top tabbook and tab page for main editor panel
- Fixed issue where reset button of TerrainBrush Softness Curve editor didn't actually reset
- Resized Object Builder window to not cut off elements and have enough width to show more data
- Added a TypeCommand field type to Object Builder and changed spawnscript field of SpawnSphere to use it rather than a simple text edit field
- Allow SpawnSphere in ObjectBuilder to be passed in spawn class and spawn datablock default info
- Injects button to controllable objects when Inspecting them to make it easy to toggle if you're in control of it or not
-
2025-08-25 23:35:28 -05:00
AzaezelX 67f4ce44a6 add tab cycling between inspector sub-elements
for linked values like position, scale, extents ect
2025-08-24 12:11:31 -05:00
JeffR f3cad0d77e Converts the ad-hoc design of the Material Editor to utilize the same inspector interface as most everything else does.
- Overhauls the material editor to simplify and streamline the logic behind it since the inspector does most of the work
- Tweak a few order positions of materialdefinition fields to work better
- Sets AO, Rough and Metal channel fields to use an enum type for human readability
- Updates the MaterialPreview gui control to work with assetIds
- MatEd now supports setting of parent material to inherit from
- Creating a new material now can prompt selecting an existing material to inherit from
- Can now edit the mapTo value of a material in the matEd
- New standalone Composite Texture Editor window for convering AO, Roughness and Metalness maps in a material to an ORMMap
- Can also star the creation of a composite texture via RMB context menu in AB on an image asset
- Moved logic of CubemapEditor from MatEd to it's own stuff
- Made ImageAsset fields now be more clear when they have nothing assigned, and also have a clear button to empty the field's value so it's consistent across the board
- Reorganized the layout of the gui and image files for the MatEd to be easier to navigate
- MaterialEditor now overlays the EditorGUI instead of being forcefully embedded in it, allowing easy editing of the MatEd Gui via the Gui editor
2025-08-03 12:03:02 -05:00
marauder2k7 fd7342668c streamline shape asset
shape asset now has the same import "@" as image asset
cut out extra filename parameters that arent needed
refresh hopefully fixed
2025-06-20 15:58:20 +01:00
marauder2k7 e1c01cd49a Merge remote-tracking branch 'upstream/development' into imageAsset_refactor_rev3 2025-05-12 14:45:41 +01:00
AzaezelX c04eaa5862 fix PopupMenu::checkItem filter
reminder size is the total element count of the vector
2025-04-29 15:45:39 -05:00
marauder2k7 c025ea86b4 more cleanups
cleanup the type removing the refactor tag
materialManager restored to its original state
2025-03-27 08:59:50 +00:00
marauder2k7 0da0903599
Merge branch 'development' into imageAsset_refactor_rev3 2025-03-24 20:07:06 +00:00
AzaezelX fcd2d38deb further validator cleanups
bump default fidelity from 0,0001 to 0.01
fix F32Range. needs to go from - to +, not smallest to largest positive value
fix several misasigned validator ranges. most of which use some form of -1 default to do a Special Thing
2025-03-18 14:06:33 -05:00
AzaezelX f633ef3a3d fill in the validated variables 2025-03-09 11:53:23 -05:00
AzaezelX fa760fa746 add numerous new validators
as well as inspector support to treat a significant chunk of the codebase as range-clmped values which can take a guisliderbarctrl with a configurable at the validator level fidelity variable
additionally adds a new addfieldV and addprotetedfieldV for further callback validated slider-presented variables
*also* adds an on additional callbacks to the inspector itself, like onPreinspectobject, onPostinspectObject, and onPostInspectorfieldModified
in addition to *that*, adds a new hidefield command to tag a given specific field not to show in inspector
2025-03-09 11:51:54 -05:00
AzaezelX 45bb368762 from marauder: proper enumtable lookup 2025-03-07 00:12:09 -06:00
AzaezelX d8fcbb7863 work towards reflecting the typemask in the checkboxes in a combinatory manner again 2025-03-06 23:37:37 -06:00
AzaezelX 79782148ec fix another potential crash with firstresponder code 2025-03-06 23:32:38 -06:00
AzaezelX 53a87af2b1 inspector aug: docs as tooltips
convert feilddocs to an 80-char per line tooltip to better help folks understand what a given variables intent is
2025-03-01 15:09:32 -06:00
AzaezelX 5fb73edc00 setFirstResonder Safeties
make sure we've properly added gui elements before trying to set the to be the responding one, or running callbacks against them
2025-02-25 18:23:45 -06:00
AzaezelX b36ec14194 add typeS16 2025-02-22 18:57:27 -06:00
Olathuss 44df6dada7 Close Menu Implemented
closeMenu function on guiMenuBar implemented. Closes menu when selecting a popup menu action.
2025-01-25 22:59:17 -07:00
marauder2k7 4d980e5406 various cleanups and fixes
basicClouds refactored
null dereference fixes in guiMenuBar
2025-01-23 22:14:05 +00:00
marauder2k7 eb746a1142 console spam
moved error printout in guiType guiControlProfile incLoadCount inside a check to make sure the profile has a bitmap asset set.

remove older typeImageAssetId from group and variable inspector classes
2025-01-23 22:13:49 +00:00
marauder2k7 32c6330b72 guiControlProfile 2025-01-23 22:13:48 +00:00
marauder2k7 22037bf94f moar refactors 2025-01-23 22:13:46 +00:00
JeffR 10d1aeca1f Shift tracking of dynamicObjects from strict child objects for Scenes, to tracking the objects but keeping them in the Cleanup Group to fix prefab loading behavior
Shifted to utilizing SimGroupInterator and persistenceManager to fix saving issues with SubScenes
Shifted to utilizing SimGroupIterator for Scene saving to standardize and minimize object misses
Changed prefab load file logic to add loaded child simgroup to rootscene for consistent tracking and avoiding conflicts with subScene's hijacking the ImmediateGroup var
Reduced duplication of build<type>field callback for inspectors
Added more standard field type lookups to inspector group when creating a field to avoid misses for types like 'F32' or similar.
Folded the added-on MinSize/MaxSize/SimgroupSelect fields for SimGroup editing into a single compound field and fixed bugs with it's behavior so it works as expected now
2024-10-27 20:04:13 -05:00
AzaezelX eaa09a6db7 corrections:
fill in missing SceneObjectTypes enums.
parity with simobject.cpp and objecttypes.h
correct inspector display
2024-07-24 20:43:36 -05:00
AzaezelX 72c67e196a Merge branch 'development' of https://github.com/TorqueGameEngines/Torque3D into Enumnanigans 2024-07-24 17:58:27 -05:00
AzaezelX fe5e81a27a fix fighting itterators 2024-05-13 21:31:20 -05:00
Areloch b77911bdcd Exposes the SceneObjectTypeMasks as an enum type, allowing it to be utilized in inspectors.
Updated Trigger triggeredBy field to utilize new enum type for editing
Updated MaterialDefinition's animFlags field to utilize appropriate enum type for editing
Fixed image reference in bitmask inspectorField type to use correct image asset name
2024-05-04 09:56:04 -05:00
Areloch 0d2aeac303 Cleaned up unneeded formatting values on the TypePointX field elements
Adds logic checks so we don't multi-apply edits from applyWord fields, causing redundant extra undo's
2024-05-01 21:58:18 -05:00
Areloch fdadfa5eea Adds handling for complex fields such as Point2, Point3 and Point4's to be able to apply value changes to only one axis across a multi-object set without affecting other axis' 2024-04-30 18:44:17 -05:00
marauder2k7 447cec6cdd Update guiInspectorTypes.cpp
fix rotation display
2024-04-02 01:48:37 +01:00
AzaezelX 2b73f93f38 fix position editor value flutter
a) it didn't like mixing the script input %g and %.7f
b) we should set the increment to POINT_EPSILON as that's our cutoff value for several calcs.
2024-03-26 14:29:20 -05:00
Brian Roberts 05a083ca6f
Merge pull request #1234 from marauder2k9-torque/virtuals-override
Virtuals override
2024-03-21 10:43:26 -05:00
AzaezelX 8549c17a42 crashfix for inpector dynamic field editing 2024-03-20 14:32:09 -05:00
marauder2k7 2b295fb7f0 rest of virtuals removed
virtuals removed and replaced with override where necessary on the rest of the code base, clang-tidy to the rescue.
2024-03-18 18:40:22 +00:00
marauder2k7 efbe5e90f5 virtuals removed
virtuals removed and replaced with override where necessary, clang-tidy to the rescue.
2024-03-18 18:13:00 +00:00
AzaezelX 07ed59a872 TORQUE_TOOLS off compile fix
fix a cornercase for when TORQUE_TOOLS is #undef at the torqueconfig.h level
2024-03-10 14:29:17 -05:00
Areloch d890c530f9 Adds logic to be able to set a search string on an inspector that will be used to filter displayed fields.
Adds a textEdit filter box to the main world inspector that hooks into the primary inspector for said search functionality
2024-02-13 20:33:14 -06:00
AzaezelX de87d2f6ad fix guishapeedpreview not displaying IBL
note this *does* require a baked skylight in the main scene
todo: track down why a similar protocol does not operate for guimaterialpreview and guiobjectview
2024-02-10 13:36:55 -06:00
Brian Roberts 600a6b8ebc
Merge pull request #1192 from Areloch/EditorPopupEXFieldExpansion
Usability improvements for editor fields utilizing popup menus
2024-02-07 19:29:07 -06:00
Areloch 7ef4552196 Fixed category filtering logic for datablockField populateMenu 2024-02-04 15:25:35 -06:00
Areloch 4646d5eac3 Adds ability to force the inspector to only show a set index of array'd fields. Mostly for specific editor tool use(like editing material's individual layers/stages) 2024-02-04 00:21:54 -06:00
Areloch d952722811 Updates the field types used in the editor to utilize the GuiPopUpMenuCtrlEx to make them support categories and be able to search filter them
Updates the dataBlock field type to properly present categorized listings
Expands the datablock Field to have an edit and add buttons on the field to make the workflow simpler
Adds utility functions to GuiPopUpMenuCtrlEx to control indentation, categories and searchability
Expands datablock editor functionality to be able to create a datablock of a type to pre-set the inheritFrom param of the process early(used for the add new button on DB fields to carry-through the current DB to the creation process of a derivative)
2024-02-03 16:10:28 -06:00
AzaezelX 4ed617f7df fix type list popup display 2023-12-20 18:51:12 -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 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