56 lines
1.7 KiB
C#
56 lines
1.7 KiB
C#
using DotNetSiemensPLCToolBoxLibrary.Projectfiles;
|
|
using System.Collections.ObjectModel;
|
|
using System.Text;
|
|
|
|
namespace S7Explorer.Models
|
|
{
|
|
public class ProjectStructure : ProjectItem
|
|
{
|
|
public Project? ProjectData { get; set; }
|
|
public string ProjectPath { get; set; } = string.Empty;
|
|
public string ProjectVersion { get; set; } = string.Empty;
|
|
public DateTime CreationDate { get; set; }
|
|
public DateTime LastModifiedDate { get; set; }
|
|
|
|
public ProjectItem BlocksFolder { get; } = new ProjectItem { Name = "Blocks" };
|
|
public ProjectItem SymbolsFolder { get; } = new ProjectItem { Name = "Symbols" };
|
|
public ProjectItem HardwareFolder { get; } = new ProjectItem { Name = "Hardware" };
|
|
|
|
public ProjectStructure()
|
|
{
|
|
Name = "Project";
|
|
Children.Add(BlocksFolder);
|
|
Children.Add(SymbolsFolder);
|
|
Children.Add(HardwareFolder);
|
|
}
|
|
|
|
public override object? GetDetailsObject()
|
|
{
|
|
return new
|
|
{
|
|
ProjectPath,
|
|
ProjectVersion,
|
|
CreationDate,
|
|
LastModifiedDate
|
|
};
|
|
}
|
|
|
|
public override string GetIcon()
|
|
{
|
|
return "Project";
|
|
}
|
|
|
|
public override string GetExportText()
|
|
{
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.AppendLine($"Project: {Name}");
|
|
sb.AppendLine($"Path: {ProjectPath}");
|
|
sb.AppendLine($"Version: {ProjectVersion}");
|
|
sb.AppendLine($"Created: {CreationDate}");
|
|
sb.AppendLine($"Last Modified: {LastModifiedDate}");
|
|
sb.AppendLine();
|
|
|
|
return sb.ToString();
|
|
}
|
|
}
|
|
} |