Nice try on WingPropHandle
This commit is contained in:
@@ -25,16 +25,16 @@ class UWing_ActorComponent_Add : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Component class name (e.g. StaticMeshComponent, SceneComponent)"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Component class name (e.g. StaticMeshComponent, SceneComponent)"))
|
||||
FString Class;
|
||||
|
||||
UPROPERTY(meta=(Description="Component name for the new component"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Component name for the new component"))
|
||||
FString Component;
|
||||
|
||||
UPROPERTY(meta=(Description="Name of the parent component to attach to"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Name of the parent component to attach to"))
|
||||
FString Parent;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -18,7 +18,7 @@ class UWing_ActorComponent_Remove : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to the component (e.g. '/Game/MyBP,component:MyComp')"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to the component (e.g. '/Game/MyBP,component:MyComp')"))
|
||||
FString Component;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -22,10 +22,10 @@ class UWing_ActorComponent_Reparent : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to the component (e.g. '/Game/MyBP,component:MyComp')"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to the component (e.g. '/Game/MyBP,component:MyComp')"))
|
||||
FString Component;
|
||||
|
||||
UPROPERTY(meta=(Description="New parent component name."))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="New parent component name."))
|
||||
FString Parent;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -20,7 +20,7 @@ class UWing_Asset_Backup : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Asset to back up"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Asset to back up"))
|
||||
FString Asset;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -20,7 +20,7 @@ class UWing_Asset_ContentBrowse : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Content browser path to list, e.g. /Game or /Game/Maps"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Content browser path to list, e.g. /Game or /Game/Maps"))
|
||||
FString Path;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -23,7 +23,7 @@ class UWing_Asset_Delete : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Asset to delete"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Asset to delete"))
|
||||
FString Asset;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="If true, skip reference check and force delete"))
|
||||
|
||||
@@ -19,7 +19,7 @@ class UWing_Asset_FindReferences : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Asset to find references for"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Asset to find references for"))
|
||||
FString Asset;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -20,10 +20,10 @@ class UWing_Asset_Rename : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Asset to rename"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Asset to rename"))
|
||||
FString Asset;
|
||||
|
||||
UPROPERTY(meta=(Description="New package path or just a new name"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="New package path or just a new name"))
|
||||
FString NewPath;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,7 +21,7 @@ class UWing_Asset_Restore : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Asset to restore"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Asset to restore"))
|
||||
FString Asset;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -23,13 +23,13 @@ class UWing_BlueprintGraph_Create : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint name or package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint name or package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Name for the new graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Name for the new graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Description="Type of graph: function or macro"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Type of graph: function or macro"))
|
||||
FString GraphType;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Input variables, one per line"))
|
||||
|
||||
@@ -21,7 +21,7 @@ class UWing_BlueprintGraph_Delete : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to the graph, e.g. /Game/MyBP,graph:MyFunction"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to the graph, e.g. /Game/MyBP,graph:MyFunction"))
|
||||
FString Graph;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,10 +21,10 @@ class UWing_Blueprint_AddInterface : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Native UInterface class name or Blueprint Interface package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Native UInterface class name or Blueprint Interface package path"))
|
||||
FString Interface;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,10 +21,10 @@ class UWing_Blueprint_RemoveInterface : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint name or package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint name or package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Interface name to remove"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Interface name to remove"))
|
||||
FString Interface;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="If true, keep the function graphs as regular functions"))
|
||||
|
||||
@@ -21,7 +21,7 @@ class UWing_Blueprint_Compile : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint to compile"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint to compile"))
|
||||
FString Blueprint;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -31,7 +31,7 @@ class UWing_Blueprint_Dump : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint path"))
|
||||
FString Blueprint;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -22,10 +22,10 @@ class UWing_Blueprint_Reparent : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="New parent class"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="New parent class"))
|
||||
FString Parent;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,7 +21,7 @@ class UWing_Create_Blueprint : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Full asset path for the new asset (e.g. '/Game/MyFolder/MyAsset')"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Full asset path for the new asset (e.g. '/Game/MyFolder/MyAsset')"))
|
||||
FString Path;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="The parent class for the new blueprint"))
|
||||
|
||||
@@ -15,7 +15,7 @@ class UWing_Create_UsingFactory : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Full asset path for the new asset (e.g. '/Game/MyFolder/MyAsset')"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Full asset path for the new asset (e.g. '/Game/MyFolder/MyAsset')"))
|
||||
FString Path;
|
||||
|
||||
virtual void Register() override
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
if (!CDO->CanCreateNew() || !CDO->ShouldShowInNewMenu()) continue;
|
||||
|
||||
WingPropHandle Props;
|
||||
TArray<TSharedPtr<IPropertyHandle>> ConfigProps = Props.AllProperties(CDO, true, CPF_Edit);
|
||||
TArray<TSharedPtr<IPropertyHandle>> ConfigProps = Props.AllProperties(CDO, true);
|
||||
if (ConfigProps.Num() > 0) continue;
|
||||
|
||||
FString FactoryName = WingFactories::DeriveFactoryName(Class);
|
||||
|
||||
@@ -14,7 +14,7 @@ class UWing_Details_Dump : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target object"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target object"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Substring filter for property names"))
|
||||
|
||||
@@ -14,10 +14,10 @@ class UWing_Details_Get : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target object"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target object"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Description="Property name"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Property name"))
|
||||
FString Property;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -14,13 +14,13 @@ class UWing_Details_Set : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target object"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target object"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Description="Property name"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Property name"))
|
||||
FString Property;
|
||||
|
||||
UPROPERTY(meta=(Description="New value in Unreal text format"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="New value in Unreal text format"))
|
||||
FString Value;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -14,10 +14,10 @@ class UWing_Details_SetMany : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target object"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target object"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Description="Object mapping property names to new values in Unreal text format"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Object mapping property names to new values in Unreal text format"))
|
||||
FWingJsonObject Properties;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -19,7 +19,7 @@ class UWing_Editor_OpenAsset : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Asset to open"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Asset to open"))
|
||||
FString Asset;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,13 +21,13 @@ class UWing_EventDispatcher_Create : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint name or package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint name or package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Name of the new event dispatcher"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Name of the new event dispatcher"))
|
||||
FString Dispatcher;
|
||||
|
||||
UPROPERTY(meta=(Description="Input Variables, one per line, expressed as: type var = value"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Input Variables, one per line, expressed as: type var = value"))
|
||||
FString InputVariables;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -20,10 +20,10 @@ class UWing_EventDispatcher_Delete : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Blueprint name or package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Blueprint name or package path"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Name of the event dispatcher to delete"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Name of the event dispatcher to delete"))
|
||||
FString Dispatcher;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -19,10 +19,10 @@ class UWing_GraphNode_ChooseMenu : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target node"))
|
||||
FString Node;
|
||||
|
||||
UPROPERTY(meta=(Description="Menu item as shown by GraphNode_ShowMenu"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Menu item as shown by GraphNode_ShowMenu"))
|
||||
FString Item;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -39,10 +39,10 @@ class UWing_GraphNode_Create : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Description="Array of {Type, posX, posY} objects. Use GraphNode_SearchTypes to find types."))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Array of {Type, posX, posY} objects. Use GraphNode_SearchTypes to find types."))
|
||||
FWingJsonArray Nodes;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -23,7 +23,7 @@ class UWing_GraphNode_Delete : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Node to delete"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Node to delete"))
|
||||
FString Node;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -18,7 +18,7 @@ class UWing_GraphNode_Dump : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target node"))
|
||||
FString Node;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -19,7 +19,7 @@ class UWing_GraphNode_GetComment : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target node"))
|
||||
FString Node;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -19,10 +19,10 @@ class UWing_GraphNode_Rename : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target node"))
|
||||
FString Node;
|
||||
|
||||
UPROPERTY(meta=(Description="New name for the node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="New name for the node"))
|
||||
FString Name;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,13 +21,13 @@ class UWing_GraphNode_SearchTypes : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Query string, can contain *"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Query string, can contain *"))
|
||||
FString Query;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Maximum number of results (default 50)"))
|
||||
int32 MaxResults = 50;
|
||||
|
||||
UPROPERTY(meta=(Description="Target graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target graph"))
|
||||
FString Graph;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -19,10 +19,10 @@ class UWing_GraphNode_SetComment : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target node"))
|
||||
FString Node;
|
||||
|
||||
UPROPERTY(meta=(Description="Comment text to set"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Comment text to set"))
|
||||
FString Comment;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -38,10 +38,10 @@ class UWing_GraphNode_SetDefaults : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Description="Array of {node, name, value} objects"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Array of {node, name, value} objects"))
|
||||
FWingJsonArray Pins;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -36,10 +36,10 @@ class UWing_GraphNode_SetPositions : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Description="Array of {node, x, y} objects"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Array of {node, x, y} objects"))
|
||||
FWingJsonArray Nodes;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -20,7 +20,7 @@ class UWing_GraphNode_ShowMenu : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target node"))
|
||||
FString Node;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -36,10 +36,10 @@ class UWing_GraphPin_Connect : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Description="Array of {sourcePin, targetPin} objects"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Array of {sourcePin, targetPin} objects"))
|
||||
FWingJsonArray Connections;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -35,10 +35,10 @@ class UWing_GraphPin_Disconnect : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Description="Array of {pin, targetPin?} objects. If targetPin is omitted, all connections on the pin are broken."))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Array of {pin, targetPin?} objects. If targetPin is omitted, all connections on the pin are broken."))
|
||||
FWingJsonArray Disconnections;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -23,7 +23,7 @@ class UWing_Graph_Dump : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to graph"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to graph"))
|
||||
FString Graph;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="True to include less-significant details"))
|
||||
|
||||
@@ -21,16 +21,16 @@ class UWing_MaterialInstance_ClearParameter : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target material instance"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target material instance"))
|
||||
FString MaterialInstance;
|
||||
|
||||
UPROPERTY(meta=(Description="Parameter name to clear"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Parameter name to clear"))
|
||||
FString Parameter;
|
||||
|
||||
UPROPERTY(meta=(Description="Parameter association: 'Global', 'Layer', or 'Blend'. Default: 'Global'", Optional))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Parameter association: 'Global', 'Layer', or 'Blend'. Default: 'Global'", Optional))
|
||||
FString ParameterAssociation = TEXT("Global");
|
||||
|
||||
UPROPERTY(meta=(Description="Layer/blend index (0-based). Only used when ParameterAssociation is 'Layer' or 'Blend'", Optional))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Layer/blend index (0-based). Only used when ParameterAssociation is 'Layer' or 'Blend'", Optional))
|
||||
int32 ParameterLayer = INDEX_NONE;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -21,7 +21,7 @@ class UWing_MaterialInstance_DumpParameters : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target material instance"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target material instance"))
|
||||
FString MaterialInstance;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -22,19 +22,19 @@ class UWing_MaterialInstance_SetParameter : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Target material instance"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Target material instance"))
|
||||
FString MaterialInstance;
|
||||
|
||||
UPROPERTY(meta=(Description="Parameter name to set"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Parameter name to set"))
|
||||
FString Parameter;
|
||||
|
||||
UPROPERTY(meta=(Description="Parameter association: 'Global', 'Layer', or 'Blend'. Default: 'Global'", Optional))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Parameter association: 'Global', 'Layer', or 'Blend'. Default: 'Global'", Optional))
|
||||
FString ParameterAssociation = TEXT("Global");
|
||||
|
||||
UPROPERTY(meta=(Description="Layer/blend index (0-based). Only used when ParameterAssociation is 'Layer' or 'Blend'", Optional))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Layer/blend index (0-based). Only used when ParameterAssociation is 'Layer' or 'Blend'", Optional))
|
||||
int32 ParameterLayer = INDEX_NONE;
|
||||
|
||||
UPROPERTY(meta=(Description="Value to set (uses Unreal text format, e.g. '0.5' for scalar, '(R=1,G=0,B=0,A=1)' for vector)"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Value to set (uses Unreal text format, e.g. '0.5' for scalar, '(R=1,G=0,B=0,A=1)' for vector)"))
|
||||
FString Value;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -19,7 +19,7 @@ class UWing_Material_Compile : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Material name or package path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Material name or package path"))
|
||||
FString Material;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -20,7 +20,7 @@ class UWing_Material_DumpParameters : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Material path"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Material path"))
|
||||
FString Material;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -17,7 +17,7 @@ class UWing_Test_Sanitizer : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="The string to sanitize"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="The string to sanitize"))
|
||||
FString Input;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -17,7 +17,7 @@ class UWing_Test_Tokenizer : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="The string to tokenize"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="The string to tokenize"))
|
||||
FString Input;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -17,7 +17,7 @@ class UWing_Test_TypeToText : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="The type name to parse, e.g. 'Array<Vector>'"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="The type name to parse, e.g. 'Array<Vector>'"))
|
||||
FString Input;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -17,7 +17,7 @@ class UWing_Test_Unsanitize : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="The sanitized identifier to unsanitize"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="The sanitized identifier to unsanitize"))
|
||||
FString Input;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -23,7 +23,7 @@ class UWing_TypeName_Search : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Substring filter for type names"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Substring filter for type names"))
|
||||
FString Query;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Maximum number of results"))
|
||||
|
||||
@@ -18,7 +18,7 @@ class UWing_Variables_Create : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Blueprint variables, one per line"))
|
||||
|
||||
@@ -18,7 +18,7 @@ class UWing_Variables_Dump : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
FString Object;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -18,7 +18,7 @@ class UWing_Variables_Modify : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Blueprint variables, one per line"))
|
||||
|
||||
@@ -18,7 +18,7 @@ class UWing_Variables_Remove : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to a blueprint, graph, or custom event node"))
|
||||
FString Object;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Blueprint variable names to remove, comma-separated"))
|
||||
|
||||
@@ -24,13 +24,13 @@ class UWing_Widget_Create : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Widget blueprint to add the widget to"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Widget blueprint to add the widget to"))
|
||||
FString Blueprint;
|
||||
|
||||
UPROPERTY(meta=(Description="Widget type, from Widget_SearchTypes"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Widget type, from Widget_SearchTypes"))
|
||||
FString Type;
|
||||
|
||||
UPROPERTY(meta=(Description="Name for the new widget"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Name for the new widget"))
|
||||
FString Name;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Parent widget name. If omitted, sets as root."))
|
||||
|
||||
@@ -22,7 +22,7 @@ class UWing_Widget_Delete : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to the widget, eg /Game/Widgets/WB_Test,widget:MyButton"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to the widget, eg /Game/Widgets/WB_Test,widget:MyButton"))
|
||||
FString Widget;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -22,10 +22,10 @@ class UWing_Widget_Reparent : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Path to the widget, eg /Game/Widgets/WB_Test,widget:MyButton"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Path to the widget, eg /Game/Widgets/WB_Test,widget:MyButton"))
|
||||
FString Widget;
|
||||
|
||||
UPROPERTY(meta=(Description="Name of the new parent widget. Must be a panel."))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Name of the new parent widget. Must be a panel."))
|
||||
FString Parent;
|
||||
|
||||
virtual void Register() override
|
||||
|
||||
@@ -17,7 +17,7 @@ class UWing_Widget_SearchTypes : public UWingHandler
|
||||
GENERATED_BODY()
|
||||
|
||||
public:
|
||||
UPROPERTY(meta=(Description="Query string, can contain *"))
|
||||
UPROPERTY(EditAnywhere, meta=(Description="Query string, can contain *"))
|
||||
FString Query;
|
||||
|
||||
UPROPERTY(meta=(Optional, Description="Maximum number of results (default 50)"))
|
||||
|
||||
@@ -128,7 +128,7 @@ WingPropHandle::FlatTree WingPropHandle::AllTreeNodes(Root& Root)
|
||||
//
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
WingPropHandle::Handles WingPropHandle::AllProperties(Root& Root, bool RootFilter, EPropertyFlags Filter)
|
||||
WingPropHandle::Handles WingPropHandle::AllProperties(Root& Root, bool RootFilter)
|
||||
{
|
||||
Handles Result;
|
||||
for (IDetailTreeNode* Node : AllTreeNodes(Root))
|
||||
@@ -136,8 +136,6 @@ WingPropHandle::Handles WingPropHandle::AllProperties(Root& Root, bool RootFilte
|
||||
TSharedPtr<IPropertyHandle> Handle = Node->CreatePropertyHandle();
|
||||
if (Handle.IsValid() && Handle->GetProperty())
|
||||
{
|
||||
if (Filter != CPF_None && !Handle->GetProperty()->HasAllPropertyFlags(Filter))
|
||||
continue;
|
||||
if (RootFilter && !IsInsideRootObject(Root, *Handle))
|
||||
continue;
|
||||
Result.Add(Handle);
|
||||
@@ -146,16 +144,16 @@ WingPropHandle::Handles WingPropHandle::AllProperties(Root& Root, bool RootFilte
|
||||
return Result;
|
||||
}
|
||||
|
||||
WingPropHandle::Handles WingPropHandle::AllProperties(UObject* Obj, bool RootFilter, EPropertyFlags Filter)
|
||||
WingPropHandle::Handles WingPropHandle::AllProperties(UObject* Obj, bool RootFilter)
|
||||
{
|
||||
if (!Obj) return {};
|
||||
return AllProperties(GetRootForObject(Obj), RootFilter, Filter);
|
||||
return AllProperties(GetRootForObject(Obj), RootFilter);
|
||||
}
|
||||
|
||||
WingPropHandle::Handles WingPropHandle::AllProperties(const UStruct* ScriptStruct, uint8* Data, bool RootFilter, EPropertyFlags Filter)
|
||||
WingPropHandle::Handles WingPropHandle::AllProperties(const UStruct* ScriptStruct, uint8* Data, bool RootFilter)
|
||||
{
|
||||
if (!ScriptStruct || !Data) return {};
|
||||
return AllProperties(GetRootForStruct(ScriptStruct, Data), RootFilter, Filter);
|
||||
return AllProperties(GetRootForStruct(ScriptStruct, Data), RootFilter);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
@@ -213,7 +211,6 @@ TSharedPtr<IPropertyHandle> WingPropHandle::NamedProperty(const UStruct* ScriptS
|
||||
WingPropHandle::Handles WingPropHandle::GetDetails(UObject* Obj, bool Mutable)
|
||||
{
|
||||
bool RootFilter = false;
|
||||
EPropertyFlags PropFlags = CPF_Edit;
|
||||
|
||||
if (!Obj) return {};
|
||||
|
||||
@@ -248,14 +245,14 @@ WingPropHandle::Handles WingPropHandle::GetDetails(UObject* Obj, bool Mutable)
|
||||
if (Cast<AActor>(Obj)) RootFilter = true;
|
||||
|
||||
// Fetch the handles.
|
||||
Handles Result = AllProperties(Obj, RootFilter, PropFlags);
|
||||
Handles Result = AllProperties(Obj, RootFilter);
|
||||
|
||||
// Material graph nodes: also collect expression properties.
|
||||
if (UMaterialGraphNode* MatNode = Cast<UMaterialGraphNode>(Obj))
|
||||
{
|
||||
if (UMaterialExpression* Expr = MatNode->MaterialExpression)
|
||||
{
|
||||
Result.Append(AllProperties(Expr, true, CPF_Edit));
|
||||
Result.Append(AllProperties(Expr, true));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -268,7 +265,7 @@ WingPropHandle::Handles WingPropHandle::GetDetails(UObject* Obj, bool Mutable)
|
||||
// });
|
||||
// if (UPanelSlot* Slot = Widget->Slot)
|
||||
// {
|
||||
// Result.Append(AllProperties(Slot, false, CPF_Edit));
|
||||
// Result.Append(AllProperties(Slot, false));
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
@@ -329,7 +329,7 @@ void UWingServer::TryCallHandler(const FString &Line)
|
||||
|
||||
// Populate the handler object with the request parameters.
|
||||
WingPropHandle Props;
|
||||
WingPropHandle::Handles Handles = Props.AllProperties(HandlerObj.Get(), true, CPF_None);
|
||||
WingPropHandle::Handles Handles = Props.AllProperties(HandlerObj.Get(), true);
|
||||
if (!WingPropHandle::PopulateFromJson(Handles, *Request, false))
|
||||
{
|
||||
UWingServer::SuggestManual(WingManual::Section::HandlerHelp);
|
||||
|
||||
@@ -27,15 +27,13 @@ public:
|
||||
WingPropHandle() {}
|
||||
|
||||
// Get all properties of a UObject. Returns the handles.
|
||||
// Only properties that have all the specified flags are included.
|
||||
// If RootFilter is true, only properties inside the root object are returned.
|
||||
Handles AllProperties(UObject* Obj, bool RootFilter, EPropertyFlags Filter);
|
||||
Handles AllProperties(UObject* Obj, bool RootFilter);
|
||||
|
||||
// Get all properties of a struct. Does not copy — the data
|
||||
// pointer must remain valid for the lifetime of this object.
|
||||
// Only properties that have all the specified flags are included.
|
||||
// If RootFilter is true, only properties inside the root object are returned.
|
||||
Handles AllProperties(const UStruct* ScriptStruct, uint8* Data, bool RootFilter, EPropertyFlags Filter);
|
||||
Handles AllProperties(const UStruct* ScriptStruct, uint8* Data, bool RootFilter);
|
||||
|
||||
// Get a single named property from a UObject.
|
||||
// If RootFilter is true, only properties inside the root object are returned.
|
||||
@@ -75,7 +73,7 @@ public:
|
||||
// If not, the Json must supply all of them, excepting properties that
|
||||
// are explicitly marked Optional.
|
||||
static bool PopulateFromJson(TArray<TSharedPtr<IPropertyHandle>>& Props, const FJsonObject& Json, bool AllOptional);
|
||||
|
||||
|
||||
// Print a single property in a standardized format:
|
||||
// editable|readonly Type Name = Value
|
||||
static void Print(IPropertyHandle& Handle, FStringBuilderBase& Out);
|
||||
@@ -99,6 +97,6 @@ private:
|
||||
static void AllTreeNodesRecursive(const TSharedRef<IDetailTreeNode>& Node, FlatTree& Out);
|
||||
static FlatTree AllTreeNodes(Root& Root);
|
||||
|
||||
Handles AllProperties(Root& Root, bool RootFilter, EPropertyFlags Filter);
|
||||
Handles AllProperties(Root& Root, bool RootFilter);
|
||||
static TSharedPtr<IPropertyHandle> TryNamedProperty(Root& Root, FName Name, bool RootFilter);
|
||||
};
|
||||
|
||||
@@ -142,6 +142,7 @@ public:
|
||||
{
|
||||
if (Collection.Contains(InternalID))
|
||||
{ CheckExactlyOneNamed(2, Kind, InternalID); return false; }
|
||||
Collection.Add(InternalID);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user