1
0
mirror of https://github.com/Artemis-RGB/Artemis synced 2025-12-13 05:48:35 +00:00

Layers - Fixed node scripts not loading on duplicated/pasted scripts

This commit is contained in:
Robert 2022-10-31 22:47:31 +01:00
parent 5ef6f044c4
commit 6ac3d00116
3 changed files with 6 additions and 3 deletions

View File

@ -50,7 +50,8 @@ public sealed class Layer : RenderProfileElement
/// <param name="profile">The profile the layer belongs to</param> /// <param name="profile">The profile the layer belongs to</param>
/// <param name="parent">The parent of the layer</param> /// <param name="parent">The parent of the layer</param>
/// <param name="layerEntity">The entity of the layer</param> /// <param name="layerEntity">The entity of the layer</param>
public Layer(Profile profile, ProfileElement parent, LayerEntity layerEntity) : base(parent, parent.Profile) /// <param name="loadNodeScript">A boolean indicating whether or not to attempt to load the node script straight away</param>
public Layer(Profile profile, ProfileElement parent, LayerEntity layerEntity, bool loadNodeScript = false) : base(parent, parent.Profile)
{ {
LayerEntity = layerEntity; LayerEntity = layerEntity;
EntityId = layerEntity.Id; EntityId = layerEntity.Id;
@ -62,6 +63,8 @@ public sealed class Layer : RenderProfileElement
Load(); Load();
Initialize(); Initialize();
if (loadNodeScript)
LoadNodeScript();
} }
/// <summary> /// <summary>

View File

@ -55,7 +55,7 @@ public static class ProfileElementExtensions
return folderClipboardModel.Paste(parent.Profile, parent); return folderClipboardModel.Paste(parent.Profile, parent);
case LayerEntity layerEntity: case LayerEntity layerEntity:
layerEntity.Id = Guid.NewGuid(); layerEntity.Id = Guid.NewGuid();
return new Layer(parent.Profile, parent, layerEntity); return new Layer(parent.Profile, parent, layerEntity, true);
default: default:
return null; return null;
} }

View File

@ -41,7 +41,7 @@ public class LayerTreeItemViewModel : TreeItemViewModel
copy.Id = Guid.NewGuid(); copy.Id = Guid.NewGuid();
copy.Name = Layer.Parent.GetNewFolderName(copy.Name + " - copy"); copy.Name = Layer.Parent.GetNewFolderName(copy.Name + " - copy");
Layer copied = new(Layer.Profile, Layer.Parent, copy); Layer copied = new(Layer.Profile, Layer.Parent, copy, true);
ProfileEditorService.ExecuteCommand(new AddProfileElement(copied, Layer.Parent, Layer.Order - 1)); ProfileEditorService.ExecuteCommand(new AddProfileElement(copied, Layer.Parent, Layer.Order - 1));
Layer.Profile.PopulateLeds(_rgbService.EnabledDevices); Layer.Profile.PopulateLeds(_rgbService.EnabledDevices);
} }