mirror of
https://github.com/Siccity/xNode.git
synced 2025-12-20 01:06:01 +08:00
added cases to handle Copy and Rename for scenegraphs correctly
This commit is contained in:
parent
37680daee7
commit
b23e769c3b
@ -221,7 +221,7 @@ namespace XNodeEditor {
|
||||
XNode.Node node = target.CopyNode(original);
|
||||
Undo.RegisterCreatedObjectUndo(node, "Duplicate Node");
|
||||
node.name = original.name;
|
||||
AssetDatabase.AddObjectToAsset(node, target);
|
||||
if (!string.IsNullOrEmpty(AssetDatabase.GetAssetPath(target))) AssetDatabase.AddObjectToAsset(node, target);
|
||||
if (NodeEditorPreferences.GetSettings().autoSave) AssetDatabase.SaveAssets();
|
||||
return node;
|
||||
}
|
||||
|
||||
@ -53,8 +53,10 @@ namespace XNodeEditor {
|
||||
if (GUILayout.Button("Revert to default") || (e.isKey && e.keyCode == KeyCode.Return)) {
|
||||
target.name = NodeEditorUtilities.NodeDefaultName(target.GetType());
|
||||
NodeEditor.GetEditor((XNode.Node)target, NodeEditorWindow.current).OnRename();
|
||||
AssetDatabase.SetMainObject((target as XNode.Node).graph, AssetDatabase.GetAssetPath(target));
|
||||
AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(target));
|
||||
if (!string.IsNullOrEmpty(AssetDatabase.GetAssetPath(target))) {
|
||||
AssetDatabase.SetMainObject((target as XNode.Node).graph, AssetDatabase.GetAssetPath(target));
|
||||
AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(target));
|
||||
}
|
||||
Close();
|
||||
target.TriggerOnValidate();
|
||||
}
|
||||
@ -64,8 +66,10 @@ namespace XNodeEditor {
|
||||
if (GUILayout.Button("Apply") || (e.isKey && e.keyCode == KeyCode.Return)) {
|
||||
target.name = input;
|
||||
NodeEditor.GetEditor((XNode.Node)target, NodeEditorWindow.current).OnRename();
|
||||
AssetDatabase.SetMainObject((target as XNode.Node).graph, AssetDatabase.GetAssetPath(target));
|
||||
AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(target));
|
||||
if (!string.IsNullOrEmpty(AssetDatabase.GetAssetPath(target))) {
|
||||
AssetDatabase.SetMainObject((target as XNode.Node).graph, AssetDatabase.GetAssetPath(target));
|
||||
AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(target));
|
||||
}
|
||||
Close();
|
||||
target.TriggerOnValidate();
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user