Overview
Frosty Toolsuite provides two main approaches to customizing the editing experience:- Asset Editors: Full custom editors for specific asset types (inherit from
FrostyAssetEditor) - Type Editors: Custom property grid editors for specific field types (inherit from
FrostyTypeEditor<T>)
FrostyAssetEditor
Create custom editors for entire asset types by inheriting fromFrostyAssetEditor.
Base Class
Constructor
ILogger
required
The logger instance for the editor to use
Properties
RootObject
RootObjects
Objects
AssetEntry
Asset
AssetModified
Methods
SetAsset
AssetEntry
required
The asset entry to load
LoadAsset
EbxAssetEntry
required
The asset entry to load
EbxAsset
The loaded asset
AddDependentObject
Guid
required
The GUID of the asset to add as a dependency
GetDependentObject
Guid
required
The GUID of the dependent asset
EbxAsset
The dependent asset, or null if not found
RefreshDependentObject
Guid
required
The GUID of the dependent asset to refresh
AddObject
RemoveObject
RegisterToolbarItems
List<ToolbarItem>
List of toolbar items to add to the editor
Closed
Events
OnAssetModified
Complete Example
FrostyTypeEditor
Create custom property grid editors for specific field types.Base Class
Properties
string
default:"Value"
The property path to bind to on the item data
BindingMode
default:"TwoWay"
The binding mode for the value property
DependencyProperty
The dependency property to bind to on the editor control
IValueConverter
Optional value converter for the binding
object
Parameter to pass to the value converter
ValidationRule
Optional validation rule for the binding
bool
default:"false"
Whether to notify when the binding target is updated
Methods
CreateEditor
CustomizeEditor
RefreshEditor
Registration
Register type editors globally using theRegisterGlobalTypeEditorAttribute:
Example: Vec3 Editor
ToolbarItem
Define custom toolbar buttons for asset editors.string
required
Button text
string
required
Tooltip text
string
Path to icon image relative to plugin assembly
RelayCommand
required
Command to execute when clicked