1using System.Threading.Tasks;
72 : base(Document, Parent)
87 set => this.order = value;
95 get => this.horizontalDirection;
96 set => this.horizontalDirection = value;
104 get => this.verticalDirection;
105 set => this.verticalDirection = value;
114 set => this.halign = value;
123 set => this.valign = value;
130 public override Task
FromXml(XmlElement Input)
138 return base.FromXml(Input);
147 base.ExportAttributes(Output);
149 this.order?.
Export(Output);
150 this.horizontalDirection?.
Export(Output);
151 this.verticalDirection?.
Export(Output);
152 this.halign?.
Export(Output);
153 this.valign?.
Export(Output);
164 return new Flexible(Document, Parent);
173 base.CopyContents(Destination);
221 base.ExportStateAttributes(Output);
Contains a 2D layout document.
void Export(XmlWriter Output)
Exports the attribute.
void ExportState(XmlWriter Output)
Exports the state of the attribute.
EnumAttribute< TEnum > CopyIfNotPreset(Layout2DDocument ForDocument)
Copies the attribute object if undefined, or defined by an expression. Returns a reference to itself,...
float AreaWidth
Width of current area
float AreaHeight
Height of current area
Variables Session
Current session.
Lays out elements flexibly, first horizontally, then vertically.
Ordering child elements flexibly.
EnumAttribute< VerticalAlignment > VerticalAlignmentAttribute
Degrees
override string LocalName
Local name of type of element.
Flexible(Layout2DDocument Document, ILayoutElement Parent)
Ordering child elements flexibly.
EnumAttribute< HorizontalDirection > HorizontalDirectionAttribute
Horizontal Direction
EnumAttribute< HorizontalAlignment > HorizontalAlignmentAttribute
Degrees
EnumAttribute< VerticalDirection > VerticalDirectionAttribute
Vertical Direction
override void ExportStateAttributes(XmlWriter Output)
Exports the local attributes of the current element.
override Task FromXml(XmlElement Input)
Populates the element (including children) with information from its XML definition.
override void ExportAttributes(XmlWriter Output)
Exports attributes to XML.
override void CopyContents(ILayoutElement Destination)
Copies contents (attributes and children) to the destination element.
override async Task< ICellLayout > GetCellLayout(DrawingState State)
Gets a cell layout object that will be responsible for laying out cells.
EnumAttribute< FlexibleOrder > OrderAttribute
Order
override ILayoutElement Create(Layout2DDocument Document, ILayoutElement Parent)
Creates a new instance of the layout element.
Lays out elements flexibly, first vertically, then horizontally.
Abstract base class of elements that do spatial distribution of children.
Layout2DDocument Document
Layout document.
ILayoutElement Parent
Parent element.
Base interface for all layout elements.
float? InnerWidth
Inner Width of element
Layout2DDocument Document
Layout document.
float? InnerHeight
Inner Height of element
HorizontalDirection
Horizontal ordering
VerticalDirection
Vertical ordering
VerticalAlignment
Vertical alignment
FlexibleOrder
How elements are ordered using flexible ordering.
HorizontalAlignment
Horizontal alignment