1
0
mirror of https://github.com/Artemis-RGB/Artemis synced 2025-12-13 05:48:35 +00:00
Robert f6090dc296 Code style - Use file scoped namespaces
Code style - Ran code cleanup
2022-08-21 11:36:15 +02:00

42 lines
1.1 KiB
C#

using Artemis.Core.LayerEffects;
namespace Artemis.UI.Shared.Services.ProfileEditor.Commands;
/// <summary>
/// Represents a profile editor command that can be used to rename a layer effect
/// </summary>
public class RenameLayerEffect : IProfileEditorCommand
{
private readonly BaseLayerEffect _layerEffect;
private readonly string _name;
private readonly string _oldName;
private readonly bool _wasRenamed;
/// <summary>
/// Creates a new instance of the <see cref="RenameLayerEffect" /> class.
/// </summary>
public RenameLayerEffect(BaseLayerEffect layerEffect, string name)
{
_layerEffect = layerEffect;
_name = name;
_oldName = layerEffect.Name;
_wasRenamed = layerEffect.HasBeenRenamed;
}
/// <inheritdoc />
public string DisplayName => "Rename layer effect";
/// <inheritdoc />
public void Execute()
{
_layerEffect.Name = _name;
_layerEffect.HasBeenRenamed = true;
}
/// <inheritdoc />
public void Undo()
{
_layerEffect.Name = _oldName;
_layerEffect.HasBeenRenamed = _wasRenamed;
}
}