本文整理汇总了C#中CSSNode.CalculateLayout方法的典型用法代码示例。如果您正苦于以下问题:C# CSSNode.CalculateLayout方法的具体用法?C# CSSNode.CalculateLayout怎么用?C# CSSNode.CalculateLayout使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSSNode
的用法示例。
在下文中一共展示了CSSNode.CalculateLayout方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Test_border_center_child
public void Test_border_center_child()
{
CSSNode root = new CSSNode();
root.JustifyContent = CSSJustify.Center;
root.AlignItems = CSSAlign.Center;
root.SetBorder(CSSEdge.Start, 10);
root.SetBorder(CSSEdge.End, 20);
root.SetBorder(CSSEdge.Bottom, 20);
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.StyleWidth = 10;
root_child0.StyleHeight = 10;
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(40, root_child0.LayoutX);
Assert.AreEqual(35, root_child0.LayoutY);
Assert.AreEqual(10, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(50, root_child0.LayoutX);
Assert.AreEqual(35, root_child0.LayoutY);
Assert.AreEqual(10, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
}
示例2: Test_absolute_layout_start_top_end_bottom
public void Test_absolute_layout_start_top_end_bottom()
{
CSSNode root = new CSSNode();
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.PositionType = CSSPositionType.Absolute;
root_child0.SetPosition(CSSEdge.Start, 10);
root_child0.SetPosition(CSSEdge.Top, 10);
root_child0.SetPosition(CSSEdge.End, 10);
root_child0.SetPosition(CSSEdge.Bottom, 10);
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(10, root_child0.LayoutX);
Assert.AreEqual(10, root_child0.LayoutY);
Assert.AreEqual(80, root_child0.LayoutWidth);
Assert.AreEqual(80, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(10, root_child0.LayoutX);
Assert.AreEqual(10, root_child0.LayoutY);
Assert.AreEqual(80, root_child0.LayoutWidth);
Assert.AreEqual(80, root_child0.LayoutHeight);
}
示例3: Test_flex_basis_flex_grow_column
public void Test_flex_basis_flex_grow_column()
{
CSSNode root = new CSSNode();
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.FlexGrow = 1;
root_child0.FlexBasis = 50;
root.Insert(0, root_child0);
CSSNode root_child1 = new CSSNode();
root_child1.FlexGrow = 1;
root.Insert(1, root_child1);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(100, root_child0.LayoutWidth);
Assert.AreEqual(75, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(75, root_child1.LayoutY);
Assert.AreEqual(100, root_child1.LayoutWidth);
Assert.AreEqual(25, root_child1.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(100, root_child0.LayoutWidth);
Assert.AreEqual(75, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(75, root_child1.LayoutY);
Assert.AreEqual(100, root_child1.LayoutWidth);
Assert.AreEqual(25, root_child1.LayoutHeight);
}
示例4: Test_align_self_center
public void Test_align_self_center()
{
CSSNode root = new CSSNode();
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.AlignSelf = CSSAlign.Center;
root_child0.StyleWidth = 10;
root_child0.StyleHeight = 10;
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(45, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(10, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(45, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(10, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
}
示例5: Test_align_items_min_max
public void Test_align_items_min_max()
{
CSSNode root = new CSSNode();
root.AlignItems = CSSAlign.Center;
root.StyleMinWidth = 100;
root.StyleMaxWidth = 200;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.StyleWidth = 60;
root_child0.StyleHeight = 60;
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(20, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(60, root_child0.LayoutWidth);
Assert.AreEqual(60, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(20, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(60, root_child0.LayoutWidth);
Assert.AreEqual(60, root_child0.LayoutHeight);
}
示例6: Test_margin_and_flex_column
public void Test_margin_and_flex_column()
{
CSSNode root = new CSSNode();
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.FlexGrow = 1;
root_child0.SetMargin(CSSEdge.Top, 10);
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(10, root_child0.LayoutY);
Assert.AreEqual(100, root_child0.LayoutWidth);
Assert.AreEqual(90, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(10, root_child0.LayoutY);
Assert.AreEqual(100, root_child0.LayoutWidth);
Assert.AreEqual(90, root_child0.LayoutHeight);
}
示例7: Test_wrap_column
public void Test_wrap_column()
{
CSSNode root = new CSSNode();
root.Wrap = CSSWrap.Wrap;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.StyleWidth = 30;
root_child0.StyleHeight = 30;
root.Insert(0, root_child0);
CSSNode root_child1 = new CSSNode();
root_child1.StyleWidth = 30;
root_child1.StyleHeight = 30;
root.Insert(1, root_child1);
CSSNode root_child2 = new CSSNode();
root_child2.StyleWidth = 30;
root_child2.StyleHeight = 30;
root.Insert(2, root_child2);
CSSNode root_child3 = new CSSNode();
root_child3.StyleWidth = 30;
root_child3.StyleHeight = 30;
root.Insert(3, root_child3);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(60, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(30, root_child0.LayoutWidth);
Assert.AreEqual(30, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(30, root_child1.LayoutY);
Assert.AreEqual(30, root_child1.LayoutWidth);
Assert.AreEqual(30, root_child1.LayoutHeight);
Assert.AreEqual(0, root_child2.LayoutX);
Assert.AreEqual(60, root_child2.LayoutY);
Assert.AreEqual(30, root_child2.LayoutWidth);
Assert.AreEqual(30, root_child2.LayoutHeight);
Assert.AreEqual(30, root_child3.LayoutX);
Assert.AreEqual(0, root_child3.LayoutY);
Assert.AreEqual(30, root_child3.LayoutWidth);
Assert.AreEqual(30, root_child3.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(60, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(30, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(30, root_child0.LayoutWidth);
Assert.AreEqual(30, root_child0.LayoutHeight);
Assert.AreEqual(30, root_child1.LayoutX);
Assert.AreEqual(30, root_child1.LayoutY);
Assert.AreEqual(30, root_child1.LayoutWidth);
Assert.AreEqual(30, root_child1.LayoutHeight);
Assert.AreEqual(30, root_child2.LayoutX);
Assert.AreEqual(60, root_child2.LayoutY);
Assert.AreEqual(30, root_child2.LayoutWidth);
Assert.AreEqual(30, root_child2.LayoutHeight);
Assert.AreEqual(0, root_child3.LayoutX);
Assert.AreEqual(0, root_child3.LayoutY);
Assert.AreEqual(30, root_child3.LayoutWidth);
Assert.AreEqual(30, root_child3.LayoutHeight);
}
示例8: TestPrint
public void TestPrint()
{
CSSNode parent = new CSSNode();
parent.StyleWidth = 100;
parent.StyleHeight = 120;
CSSNode child0 = new CSSNode();
child0.StyleWidth = 30;
child0.StyleHeight = 40;
CSSNode child1 = new CSSNode();
child1.StyleWidth = 35;
child1.StyleHeight = 45;
parent.Insert(0, child0);
parent.Insert(0, child1);
parent.CalculateLayout();
Assert.AreEqual(parent.Print(), "{layout: {width: 100, height: 120, top: 0, left: 0}, flexDirection: 'column', alignItems: 'stretch', flexGrow: 0, flexShrink: 0, overflow: 'visible', width: 100, height: 120, children: [\n {layout: {width: 35, height: 45, top: 0, left: 0}, flexDirection: 'column', alignItems: 'stretch', flexGrow: 0, flexShrink: 0, overflow: 'visible', width: 35, height: 45, },\n {layout: {width: 30, height: 40, top: 45, left: 0}, flexDirection: 'column', alignItems: 'stretch', flexGrow: 0, flexShrink: 0, overflow: 'visible', width: 30, height: 40, },\n]},\n");
}
示例9: Test_wrap_row_align_items_flex_end
public void Test_wrap_row_align_items_flex_end()
{
CSSNode root = new CSSNode();
root.FlexDirection = CSSFlexDirection.Row;
root.AlignItems = CSSAlign.FlexEnd;
root.Wrap = CSSWrap.Wrap;
root.StyleWidth = 100;
CSSNode root_child0 = new CSSNode();
root_child0.StyleWidth = 30;
root_child0.StyleHeight = 10;
root.Insert(0, root_child0);
CSSNode root_child1 = new CSSNode();
root_child1.StyleWidth = 30;
root_child1.StyleHeight = 20;
root.Insert(1, root_child1);
CSSNode root_child2 = new CSSNode();
root_child2.StyleWidth = 30;
root_child2.StyleHeight = 30;
root.Insert(2, root_child2);
CSSNode root_child3 = new CSSNode();
root_child3.StyleWidth = 30;
root_child3.StyleHeight = 30;
root.Insert(3, root_child3);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(60, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(20, root_child0.LayoutY);
Assert.AreEqual(30, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
Assert.AreEqual(30, root_child1.LayoutX);
Assert.AreEqual(10, root_child1.LayoutY);
Assert.AreEqual(30, root_child1.LayoutWidth);
Assert.AreEqual(20, root_child1.LayoutHeight);
Assert.AreEqual(60, root_child2.LayoutX);
Assert.AreEqual(0, root_child2.LayoutY);
Assert.AreEqual(30, root_child2.LayoutWidth);
Assert.AreEqual(30, root_child2.LayoutHeight);
Assert.AreEqual(0, root_child3.LayoutX);
Assert.AreEqual(30, root_child3.LayoutY);
Assert.AreEqual(30, root_child3.LayoutWidth);
Assert.AreEqual(30, root_child3.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(60, root.LayoutHeight);
Assert.AreEqual(70, root_child0.LayoutX);
Assert.AreEqual(20, root_child0.LayoutY);
Assert.AreEqual(30, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
Assert.AreEqual(40, root_child1.LayoutX);
Assert.AreEqual(10, root_child1.LayoutY);
Assert.AreEqual(30, root_child1.LayoutWidth);
Assert.AreEqual(20, root_child1.LayoutHeight);
Assert.AreEqual(10, root_child2.LayoutX);
Assert.AreEqual(0, root_child2.LayoutY);
Assert.AreEqual(30, root_child2.LayoutWidth);
Assert.AreEqual(30, root_child2.LayoutHeight);
Assert.AreEqual(70, root_child3.LayoutX);
Assert.AreEqual(30, root_child3.LayoutY);
Assert.AreEqual(30, root_child3.LayoutWidth);
Assert.AreEqual(30, root_child3.LayoutHeight);
}
示例10: Test_max_width
public void Test_max_width()
{
CSSNode root = new CSSNode();
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.StyleMaxWidth = 50;
root_child0.StyleHeight = 10;
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(50, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(50, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(50, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
}
示例11: Test_min_width
public void Test_min_width()
{
CSSNode root = new CSSNode();
root.FlexDirection = CSSFlexDirection.Row;
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.FlexGrow = 1;
root_child0.StyleMinWidth = 60;
root.Insert(0, root_child0);
CSSNode root_child1 = new CSSNode();
root_child1.FlexGrow = 1;
root.Insert(1, root_child1);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(80, root_child0.LayoutWidth);
Assert.AreEqual(100, root_child0.LayoutHeight);
Assert.AreEqual(80, root_child1.LayoutX);
Assert.AreEqual(0, root_child1.LayoutY);
Assert.AreEqual(20, root_child1.LayoutWidth);
Assert.AreEqual(100, root_child1.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(20, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(80, root_child0.LayoutWidth);
Assert.AreEqual(100, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(0, root_child1.LayoutY);
Assert.AreEqual(20, root_child1.LayoutWidth);
Assert.AreEqual(100, root_child1.LayoutHeight);
}
示例12: Test_flex_basis_flex_shrink_row
public void Test_flex_basis_flex_shrink_row()
{
CSSNode root = new CSSNode();
root.FlexDirection = CSSFlexDirection.Row;
root.StyleWidth = 100;
root.StyleHeight = 100;
CSSNode root_child0 = new CSSNode();
root_child0.FlexShrink = 1;
root_child0.FlexBasis = 100;
root.Insert(0, root_child0);
CSSNode root_child1 = new CSSNode();
root_child1.FlexBasis = 50;
root.Insert(1, root_child1);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(50, root_child0.LayoutWidth);
Assert.AreEqual(100, root_child0.LayoutHeight);
Assert.AreEqual(50, root_child1.LayoutX);
Assert.AreEqual(0, root_child1.LayoutY);
Assert.AreEqual(50, root_child1.LayoutWidth);
Assert.AreEqual(100, root_child1.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(100, root.LayoutWidth);
Assert.AreEqual(100, root.LayoutHeight);
Assert.AreEqual(50, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(50, root_child0.LayoutWidth);
Assert.AreEqual(100, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(0, root_child1.LayoutY);
Assert.AreEqual(50, root_child1.LayoutWidth);
Assert.AreEqual(100, root_child1.LayoutHeight);
}
示例13: Test_border_container_match_child
public void Test_border_container_match_child()
{
CSSNode root = new CSSNode();
root.SetBorder(CSSEdge.Left, 10);
root.SetBorder(CSSEdge.Top, 10);
root.SetBorder(CSSEdge.Right, 10);
root.SetBorder(CSSEdge.Bottom, 10);
CSSNode root_child0 = new CSSNode();
root_child0.StyleWidth = 10;
root_child0.StyleHeight = 10;
root.Insert(0, root_child0);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(30, root.LayoutWidth);
Assert.AreEqual(30, root.LayoutHeight);
Assert.AreEqual(10, root_child0.LayoutX);
Assert.AreEqual(10, root_child0.LayoutY);
Assert.AreEqual(10, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(30, root.LayoutWidth);
Assert.AreEqual(30, root.LayoutHeight);
Assert.AreEqual(10, root_child0.LayoutX);
Assert.AreEqual(10, root_child0.LayoutY);
Assert.AreEqual(10, root_child0.LayoutWidth);
Assert.AreEqual(10, root_child0.LayoutHeight);
}
示例14: Test_flex_shrink_to_zero
public void Test_flex_shrink_to_zero()
{
CSSNode root = new CSSNode();
root.StyleHeight = 75;
CSSNode root_child0 = new CSSNode();
root_child0.StyleWidth = 50;
root_child0.StyleHeight = 50;
root.Insert(0, root_child0);
CSSNode root_child1 = new CSSNode();
root_child1.FlexShrink = 1;
root_child1.StyleWidth = 50;
root_child1.StyleHeight = 50;
root.Insert(1, root_child1);
CSSNode root_child2 = new CSSNode();
root_child2.StyleWidth = 50;
root_child2.StyleHeight = 50;
root.Insert(2, root_child2);
root.StyleDirection = CSSDirection.LeftToRight;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(50, root.LayoutWidth);
Assert.AreEqual(75, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(50, root_child0.LayoutWidth);
Assert.AreEqual(50, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(50, root_child1.LayoutY);
Assert.AreEqual(50, root_child1.LayoutWidth);
Assert.AreEqual(0, root_child1.LayoutHeight);
Assert.AreEqual(0, root_child2.LayoutX);
Assert.AreEqual(50, root_child2.LayoutY);
Assert.AreEqual(50, root_child2.LayoutWidth);
Assert.AreEqual(50, root_child2.LayoutHeight);
root.StyleDirection = CSSDirection.RightToLeft;
root.CalculateLayout();
Assert.AreEqual(0, root.LayoutX);
Assert.AreEqual(0, root.LayoutY);
Assert.AreEqual(50, root.LayoutWidth);
Assert.AreEqual(75, root.LayoutHeight);
Assert.AreEqual(0, root_child0.LayoutX);
Assert.AreEqual(0, root_child0.LayoutY);
Assert.AreEqual(50, root_child0.LayoutWidth);
Assert.AreEqual(50, root_child0.LayoutHeight);
Assert.AreEqual(0, root_child1.LayoutX);
Assert.AreEqual(50, root_child1.LayoutY);
Assert.AreEqual(50, root_child1.LayoutWidth);
Assert.AreEqual(0, root_child1.LayoutHeight);
Assert.AreEqual(0, root_child2.LayoutX);
Assert.AreEqual(50, root_child2.LayoutY);
Assert.AreEqual(50, root_child2.LayoutWidth);
Assert.AreEqual(50, root_child2.LayoutHeight);
}
示例15: test
private static void test(String message, CSSNode style, CSSNode expectedLayout)
{
style.CalculateLayout();
assertLayoutsEqual(message, style, expectedLayout);
}