12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using System;
- namespace InABox.Core
- {
- public abstract class DFLayoutControl : DFLayoutObject, ISequenceable
- {
- [IntegerEditor]
- [EditorSequence(1)]
- public int Row { get; set; } = 1;
- [IntegerEditor]
- [EditorSequence(2)]
- public int RowSpan { get; set; } = 1;
- [EnumLookupEditor(typeof(DFLayoutAlignment))]
- [EditorSequence(3)]
- public DFLayoutAlignment VerticalAlignment { get; set; } = DFLayoutAlignment.Stretch;
- [IntegerEditor]
- [EditorSequence(4)]
- public int Column { get; set; } = 1;
- [IntegerEditor]
- [EditorSequence(5)]
- public int ColumnSpan { get; set; } = 1;
- [EnumLookupEditor(typeof(DFLayoutAlignment))]
- [EditorSequence(6)]
- public DFLayoutAlignment HorizontalAlignment { get; set; } = DFLayoutAlignment.Stretch;
- [TextBoxEditor(Visible = Visible.Default, Editable = Editable.Hidden)]
- [DoNotSerialize]
- public string Description => GetDescription();
- [NullEditor]
- public long Sequence { get; set; }
- protected virtual string GetDescription()
- {
- return GetType().Name;
- }
- protected override void LoadProperties()
- {
- Row = GetProperty(nameof(Row), 1);
- RowSpan = GetProperty(nameof(RowSpan), 1);
- VerticalAlignment = GetProperty(nameof(VerticalAlignment), DFLayoutAlignment.Middle);
- Column = GetProperty(nameof(Column), 1);
- ColumnSpan = GetProperty(nameof(ColumnSpan), 1);
- HorizontalAlignment = GetProperty(nameof(HorizontalAlignment), DFLayoutAlignment.Middle);
- Sequence = GetProperty(nameof(Sequence), DateTime.Now.Ticks);
- }
- protected override void SaveProperties()
- {
- SetProperty(nameof(Row), Row);
- SetProperty(nameof(RowSpan), RowSpan);
- SetProperty(nameof(VerticalAlignment), VerticalAlignment);
- SetProperty(nameof(Column), Column);
- SetProperty(nameof(ColumnSpan), ColumnSpan);
- SetProperty(nameof(HorizontalAlignment), HorizontalAlignment);
- SetProperty(nameof(Sequence), Sequence);
- }
- }
- }
|