using System; using InABox.Core; namespace Comal.Classes { public class OrgChartSettings : BaseObject, IEnclosedEntity where TEntityLink : IEntityLink, new() { public OrgChartSettings() { ReportsTo = new TEntityLink(); Color = "#00000000"; Visible = true; } [EditorSequence("Org Chart", 1)] [Caption("Reports To", IncludePath = false)] public TEntityLink ReportsTo { get; set; } [EditorSequence("Org Chart", 2)] [ColorEditor] [Caption("Color", IncludePath = false)] public string Color { get; set; } [EditorSequence("Org Chart", 3)] [CheckBoxEditor] [Caption("Visible", IncludePath = false)] public bool Visible { get; set; } } public interface IOrgChart where TEntityLink : IEntityLink, new() { OrgChartSettings OrgChart { get; set; } } [UserTracking(typeof(Employee))] public class Role : Entity, IPersistent, IRemotable, IOrgChart, ILicense, IExportable, IImportable { [EditorSequence(1)] [UniqueCodeEditor(Visible = Visible.Default, Editable = Editable.Enabled)] public string Code { get; set; } [EditorSequence(2)] [TextBoxEditor] public string Name { get; set; } [MemoEditor] [EditorSequence("Standards",1)] public String Description { get; set; } [MemoEditor] [EditorSequence("Standards",2)] public String JobKnowledge { get; set; } [MemoEditor] [EditorSequence("Standards",3)] public String WorkQuality { get; set; } [MemoEditor] [EditorSequence("Standards",3)] public String Productivity { get; set; } [MemoEditor] [EditorSequence("Standards",4)] public String Relationships { get; set; } public OrgChartSettings OrgChart { get; set; } protected override void Init() { base.Init(); OrgChart = new OrgChartSettings(); } public override string ToString() { return Name; } } }