Init
This commit is contained in:
43
Not-Copy-Copy/Models/Configuration.cs
Normal file
43
Not-Copy-Copy/Models/Configuration.cs
Normal file
@ -0,0 +1,43 @@
|
||||
using System.Text.Json;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace View_by_Distance.Not.Copy.Copy.Models;
|
||||
|
||||
public class Configuration
|
||||
{
|
||||
|
||||
protected string _CompareSource;
|
||||
protected string _EmptyDestination;
|
||||
protected Property.Models.Configuration? _PropertyConfiguration;
|
||||
protected string _SelectedSource;
|
||||
public string CompareSource => _CompareSource;
|
||||
public string EmptyDestination => _EmptyDestination;
|
||||
public Property.Models.Configuration? PropertyConfiguration => _PropertyConfiguration;
|
||||
public string SelectedSource => _SelectedSource;
|
||||
|
||||
[JsonConstructor]
|
||||
public Configuration(string compareSource, string emptyDestination, Property.Models.Configuration? propertyConfiguration, string selectedSource)
|
||||
{
|
||||
_CompareSource = compareSource;
|
||||
_EmptyDestination = emptyDestination;
|
||||
_PropertyConfiguration = propertyConfiguration;
|
||||
_SelectedSource = selectedSource;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
|
||||
return result;
|
||||
}
|
||||
|
||||
public void Set(Property.Models.Configuration propertyConfiguration) => _PropertyConfiguration = propertyConfiguration;
|
||||
|
||||
public void Update()
|
||||
{
|
||||
_PropertyConfiguration?.Update();
|
||||
_CompareSource = Path.GetFullPath(_CompareSource);
|
||||
_SelectedSource = Path.GetFullPath(_SelectedSource);
|
||||
_EmptyDestination = Path.GetFullPath(_EmptyDestination);
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user