/// <inheritdoc /> public LayoutPassStartEventArgs(YogaNode node, object layoutContext) : base(node) { LayoutContext = layoutContext; }
public YogaNodePrint Output(YogaNode node, int level = 0) { _currentNode = node; Indent(level); AppendString("<div "); if (!string.IsNullOrWhiteSpace(node.Trace)) { AppendString(node.Trace + "; "); } if (_options.HasFlag(PrintOptions.Layout)) { AppendString("layout=\""); AppendString($"width: {node.Layout.Width:G};"); AppendString($" height: {node.Layout.Height:G};"); AppendString($" top: {node.Layout.Top:G};"); AppendString($" left: {node.Layout.Left:G};"); if (!node.Layout.Margin.IsZero) { AppendString($" margin: {node.Layout.Margin};"); } if (!node.Layout.Border.IsZero) { AppendString($" border: {node.Layout.Border};"); } if (!node.Layout.Padding.IsZero) { AppendString($" padding: {node.Layout.Padding};"); } AppendString("\" "); } if (_options.HasFlag(PrintOptions.Style)) { AppendString("style=\""); if (node.Style.FlexDirection != DefaultYogaNode.Style.FlexDirection) { AppendString($"flex-direction: {node.Style.FlexDirection.ToString().ToLower()}; "); } if (node.Style.JustifyContent != DefaultYogaNode.Style.JustifyContent) { AppendString($"justify-content: {node.Style.JustifyContent.ToString().ToLower()}; "); } if (node.Style.AlignItems != DefaultYogaNode.Style.AlignItems) { AppendString($"align-items: {node.Style.AlignItems.ToString().ToLower()}; "); } if (node.Style.AlignContent != DefaultYogaNode.Style.AlignContent) { AppendString($"align-content: {node.Style.AlignContent.ToString().ToLower()}; "); } if (node.Style.AlignSelf != DefaultYogaNode.Style.AlignSelf) { AppendString($"align-self: {node.Style.AlignSelf.ToString().ToLower()}; "); } AppendNumberIfNotZero("flex-grow", node.StyleReadonly.FlexGrow); AppendNumberIfNotZero("flex-shrink", node.StyleReadonly.FlexShrink); AppendNumberIfNotAuto("flex-basis", node.Style.FlexBasis); AppendFloatOptionalIfDefined("flex", node.StyleReadonly.Flex); if (node.Style.FlexWrap != DefaultYogaNode.Style.FlexWrap) { AppendString($"flex-wrap: {node.Style.FlexWrap.ToString().ToLower()}; "); } if (node.Style.Overflow != DefaultYogaNode.Style.Overflow) { AppendString($"overflow: {node.Style.Overflow.ToString().ToLower()}; "); } if (node.Style.Display != DefaultYogaNode.Style.Display) { AppendString($"display: {node.Style.Display.ToString().ToLower()}; "); } AppendEdges("margin", node.Style.Margin); AppendEdges("padding", node.Style.Padding); AppendEdges("border", node.Style.Border); AppendNumberIfNotAuto("width", node.Style.Width); AppendNumberIfNotAuto("height", node.Style.Height); AppendNumberIfNotAuto("max-width", node.Style.MaxWidth); AppendNumberIfNotAuto("max-height", node.Style.MaxHeight); AppendNumberIfNotAuto("min-width", node.Style.MinWidth); AppendNumberIfNotAuto("min-height", node.Style.MinHeight); if (node.Style.PositionType != DefaultYogaNode.Style.PositionType) { AppendString($"position: {node.Style.PositionType.ToString().ToLower()}; "); } AppendEdgeIfNotUndefined("left", node.Style.Position, Edge.Left); AppendEdgeIfNotUndefined("right", node.Style.Position, Edge.Right); AppendEdgeIfNotUndefined("top", node.Style.Position, Edge.Top); AppendEdgeIfNotUndefined("bottom", node.Style.Position, Edge.Bottom); AppendString("\" "); if (node.HasMeasureFunc) { AppendString("has-custom-measure=\"true\""); } } AppendString(">"); var childCount = node.Children.Count; if (_options.HasFlag(PrintOptions.Children) && childCount > 0) { for (int i = 0; i < childCount; i++) { AppendString("\n"); Output(node.Children[i], level + 1); _currentNode = node; } AppendString("\n"); Indent(level); } AppendString("</div>"); return(this); }
protected YGNodeEventArgs(YogaNode node) { Node = node; }
public NodeDeallocationEventArgs(YogaNode node, YogaConfig config) : base(node) { Config = config; }
/// <inheritdoc /> public NodeBaselineEndEventArgs(YogaNode node) : base(node) { }
/// <inheritdoc /> public NodeBaselineStartEventArgs(YogaNode node) : base(node) { }
/// <inheritdoc /> public MeasureCallbackStartEventArgs(YogaNode node) : base(node) { }
/// <inheritdoc /> public NodeLayoutEventArgs(YogaNode node, LayoutType layoutType, object layoutContext) : base(node) { LayoutType = layoutType; LayoutContext = layoutContext; }
/// <inheritdoc /> public LayoutPassEndEventArgs(YogaNode node, object layoutContext, LayoutData layoutData) : base(node) { LayoutContext = layoutContext; LayoutData = layoutData; }