diff --git a/src/Artemis.Core/Models/Profile/Folder.cs b/src/Artemis.Core/Models/Profile/Folder.cs
index e77a5a6ad..96dd20416 100644
--- a/src/Artemis.Core/Models/Profile/Folder.cs
+++ b/src/Artemis.Core/Models/Profile/Folder.cs
@@ -266,19 +266,7 @@ namespace Artemis.Core
/// Occurs when a property affecting the rendering properties of this folder has been updated
///
public event EventHandler? RenderPropertiesUpdated;
-
- ///
- public override void Activate()
- {
- throw new NotImplementedException();
- }
-
- ///
- public override void Deactivate()
- {
- throw new NotImplementedException();
- }
-
+
///
protected override void Dispose(bool disposing)
{
diff --git a/src/Artemis.Core/Models/Profile/Layer.cs b/src/Artemis.Core/Models/Profile/Layer.cs
index 1a8a26905..21a8a113f 100644
--- a/src/Artemis.Core/Models/Profile/Layer.cs
+++ b/src/Artemis.Core/Models/Profile/Layer.cs
@@ -488,18 +488,6 @@ namespace Artemis.Core
baseLayerEffect.InternalUpdate(Timeline);
}
- ///
- public override void Activate()
- {
- throw new NotImplementedException();
- }
-
- ///
- public override void Deactivate()
- {
- throw new NotImplementedException();
- }
-
///
public override void Disable()
{
diff --git a/src/Artemis.Core/Models/Profile/ProfileElement.cs b/src/Artemis.Core/Models/Profile/ProfileElement.cs
index f94cdce28..9d97fd638 100644
--- a/src/Artemis.Core/Models/Profile/ProfileElement.cs
+++ b/src/Artemis.Core/Models/Profile/ProfileElement.cs
@@ -182,7 +182,7 @@ namespace Artemis.Core
private void StreamlineOrder()
{
for (int index = 0; index < ChildrenList.Count; index++)
- ChildrenList[index].Order = index;
+ ChildrenList[index].Order = index + 1;
}
///
diff --git a/src/Artemis.Core/Models/Profile/RenderProfileElement.cs b/src/Artemis.Core/Models/Profile/RenderProfileElement.cs
index 85aec916d..3c7322f97 100644
--- a/src/Artemis.Core/Models/Profile/RenderProfileElement.cs
+++ b/src/Artemis.Core/Models/Profile/RenderProfileElement.cs
@@ -52,17 +52,7 @@ namespace Artemis.Core
/// Occurs when a layer effect has been added or removed to this render element
///
public event EventHandler? LayerEffectsUpdated;
-
- ///
- /// Activates the render profile element, loading required brushes, effects or anything else needed for rendering
- ///
- public abstract void Activate();
-
- ///
- /// Deactivates the render profile element, disposing required brushes, effects or anything else needed for rendering
- ///
- public abstract void Deactivate();
-
+
///
protected override void Dispose(bool disposing)
{
diff --git a/src/Avalonia/Artemis.UI.Shared/Services/ProfileEditor/Commands/RemoveProfileElement.cs b/src/Avalonia/Artemis.UI.Shared/Services/ProfileEditor/Commands/RemoveProfileElement.cs
index ddeab19aa..a6289da6b 100644
--- a/src/Avalonia/Artemis.UI.Shared/Services/ProfileEditor/Commands/RemoveProfileElement.cs
+++ b/src/Avalonia/Artemis.UI.Shared/Services/ProfileEditor/Commands/RemoveProfileElement.cs
@@ -12,6 +12,7 @@ public class RemoveProfileElement : IProfileEditorCommand, IDisposable
private readonly RenderProfileElement _subject;
private readonly ProfileElement _target;
private bool _isRemoved;
+ private readonly bool _wasEnabled;
///
/// Creates a new instance of the class.
@@ -23,7 +24,8 @@ public class RemoveProfileElement : IProfileEditorCommand, IDisposable
_subject = subject;
_target = _subject.Parent;
- _index = _subject.Children.IndexOf(_subject);
+ _index = _target.Children.IndexOf(_subject);
+ _wasEnabled = _subject.Enabled;
DisplayName = subject switch
{
@@ -50,15 +52,17 @@ public class RemoveProfileElement : IProfileEditorCommand, IDisposable
{
_isRemoved = true;
_target.RemoveChild(_subject);
- _subject.Deactivate();
+ _subject.Disable();
}
///
public void Undo()
{
_isRemoved = false;
- _subject.Activate();
_target.AddChild(_subject, _index);
+
+ if (_wasEnabled)
+ _subject.Enable();
}
#endregion
diff --git a/src/Avalonia/Artemis.UI/Screens/ProfileEditor/Panels/ProfileTree/ProfileTreeView.axaml b/src/Avalonia/Artemis.UI/Screens/ProfileEditor/Panels/ProfileTree/ProfileTreeView.axaml
index 6896dae98..d55cb17d9 100644
--- a/src/Avalonia/Artemis.UI/Screens/ProfileEditor/Panels/ProfileTree/ProfileTreeView.axaml
+++ b/src/Avalonia/Artemis.UI/Screens/ProfileEditor/Panels/ProfileTree/ProfileTreeView.axaml
@@ -8,7 +8,7 @@
x:Class="Artemis.UI.Screens.ProfileEditor.ProfileTree.ProfileTreeView"
x:DataType="profileTree:ProfileTreeViewModel">
-
+