DigitalFormLayout.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. using System;
  2. using System.Linq.Expressions;
  3. namespace InABox.Core
  4. {
  5. [Caption("Layouts")]
  6. [EntitySecurity(
  7. CanEdit = typeof(CanEdit<DigitalForm>),
  8. CanDelete = typeof(CanEdit<DigitalForm>),
  9. CanView = typeof(CanView<DigitalForm>))]
  10. public class DigitalFormLayout : Entity, IRemotable, IPersistent, ILicense<DigitalFormsLicense>
  11. {
  12. [NullEditor]
  13. [EntityRelationship(DeleteAction.Cascade)]
  14. public DigitalFormLink Form => InitializeField(ref _form, nameof(Form));
  15. private DigitalFormLink _form;
  16. [EditorSequence(1)]
  17. [TextBoxEditor(Visible = Visible.Default, Editable = Editable.Enabled)]
  18. public string Description { get; set; }
  19. [EditorSequence(2)]
  20. [EnumLookupEditor(typeof(DFLayoutType), Visible = Visible.Default, Editable = Editable.Enabled)]
  21. public DFLayoutType Type { get; set; } = DFLayoutType.Desktop;
  22. [EditorSequence(3)]
  23. [MemoEditor(Visible = Visible.Hidden, Editable = Editable.Hidden)]
  24. public string Layout { get; set; }
  25. [NullEditor]
  26. public bool Active { get; set; }
  27. public IEntityDuplicator GetDuplicator() => new EntityDuplicator<DigitalFormLayout>();
  28. }
  29. }