| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 | using System;using System.Collections.Generic;using System.Linq;using InABox.Core;namespace Comal.Classes{        // public class SpreadsheetTemplateAppliesToLookups : LookupGenerator<object>    // {    //     public SpreadsheetTemplateAppliesToLookups(object[]? items) : base(items)    //     {    //         var lookups = new Dictionary<string, string>();    //    //         var types = CoreUtils.TypeList(    //             AppDomain.CurrentDomain.GetAssemblies(),    //             x => !x.IsAbstract && x.GetInterfaces().Contains(typeof(ISpreadsheet))    //         ).ToArray();    //    //         foreach (var type in types)    //         {    //             var iface = type.GetInterfaces().FirstOrDefault(x => x.GetInterfaces().Contains(typeof(ISpreadsheet)) && x.IsGenericType);    //             var etype = iface?.GenericTypeArguments.FirstOrDefault();    //             if (etype != null)    //                 lookups[etype.EntityName().Split('.').Last()] = etype.GetCaption();    //         }    //    //         foreach (var key in lookups.Keys)    //             AddValue(key, lookups[key]);    //     }    // }        public class SpreadsheetTemplate : Entity, IRemotable, IPersistent, ISpreadsheet, ILicense<CoreLicense>    {        [EditorSequence(1)]        [UniqueCodeEditor(Visible=Visible.Default, Editable = Editable.Enabled)]        public String Code { get; set; }                [EditorSequence(2)]        [TextBoxEditor(Visible=Visible.Default)]        public String Description { get; set; }                [EditorSequence(3)]        //[ComboLookupEditor(typeof(SpreadsheetTemplateAppliesToLookups))]        [NullEditor]        public String AppliesTo { get; set; }        [EditorSequence(4)]        [CheckBoxEditor]        public bool Active { get; set; }        [NullEditor]        [RequiredColumn]        public byte[] Data { get; set; }    }        public class SpreadsheetTemplateLookups : EntityLookup<SpreadsheetTemplate>    {        public override Filter<SpreadsheetTemplate>? DefineFilter()        {            return new Filter<SpreadsheetTemplate>(x => x.Active).IsEqualTo(true).And(x=>x.AppliesTo).IsEqualTo("");        }        public override SortOrder<SpreadsheetTemplate> DefineSortOrder()        {            return new SortOrder<SpreadsheetTemplate>(x => x.Code);        }    }}
 |