Implemented layer element saving

Added a working setting to the brush element
This commit is contained in:
Robert committed 2019-12-04 19:54:18 +01:00
1 parent be03167f7e
commit 8ba2e58c5d
24 files changed
+440 -85

No files matched your search

@@ -1,19 +1,22 @@
using Artemis.Core.Models.Profile;
using System;
using Artemis.Core.Models.Profile;
using Artemis.Core.Models.Surface;
using SkiaSharp;
namespace Artemis.Core.Plugins.LayerElement
{
public abstract class LayerElement
public abstract class LayerElement : IDisposable
{
protected LayerElement(Layer layer, LayerElementSettings settings, LayerElementDescriptor descriptor)
protected LayerElement(Layer layer, Guid guid, LayerElementSettings settings, LayerElementDescriptor descriptor)
{
Layer = layer;
Guid = guid;
Settings = settings;
Descriptor = descriptor;
}
public Layer Layer { get; }
public Guid Guid { get; }
public LayerElementSettings Settings { get; }
public LayerElementDescriptor Descriptor { get; }
@@ -65,5 +68,9 @@ namespace Artemis.Core.Plugins.LayerElement
{
return shader;
}
public virtual void Dispose()
{
}
}
}
@@ -1,8 +1,21 @@
using Stylet;
using System;
using Stylet;
namespace Artemis.Core.Plugins.LayerElement
{
public abstract class LayerElementSettings : PropertyChangedBase
{
private Action<Action> _propertyChangedDispatcher = Execute.DefaultPropertyChangedDispatcher;
/// <summary>
/// Gets or sets the dispatcher to use to dispatch PropertyChanged events. Defaults to Execute.DefaultPropertyChangedDispatcher
/// </summary>
[System.Xml.Serialization.XmlIgnore]
[Newtonsoft.Json.JsonIgnore]
public override Action<Action> PropertyChangedDispatcher
{
get { return this._propertyChangedDispatcher; }
set { this._propertyChangedDispatcher = value; }
}
}
}