Navigation
API > API/Runtime > API/Runtime/InteractiveToolsFramework > API/Runtime/InteractiveToolsFramework/UInteractiveToolPropertySet
Description
Setting saving/serialization Save and restore values of current Tool Properties between tool invocations. The standard usage of this setup is to call PropertySet->RestoreProperties() in the UInteractiveTool::Setup() implementation, and PropertySet->SaveProperties() in the UInteractiveTool::Shutdown() implementation.
The default behaviour of these functions is to Save or Restore every property in the property set. It is not necessary to save/restore all possible Properties (in many cases this would not make sense), so individual properties may be skipped by adding the "TransientToolProperty" tag to their metadata on a property by property basis.
Property sets which need more exotic behaviour upon Save and Restore may override these routines
GetDynamicPropertyCache() can be used to return an instance of the specified property set subclass which may be used as a place to save/restore these properties by customized Save/Restore functions
Note: the current design of this system assumes that the CDO will keep the referenced objects alive. This assumption is incorrect in Runtime builds, and some external mechanism must be used to keep the elements in the CachedPropertiesMap alive. Save the values of this PropertySet with the given CacheIdentifier. The Tool parameter is currently ignored.
| Name | SaveProperties |
| Type | function |
| Header File | /Engine/Source/Runtime/InteractiveToolsFramework/Public/InteractiveTool.h |
| Include Path | #include "InteractiveTool.h" |
| Source | /Engine/Source/Runtime/InteractiveToolsFramework/Private/InteractiveTool.cpp |
virtual void SaveProperties
(
UInteractiveTool * SaveFromTool,
const FString & CacheIdentifier
)