Beispiel #1
0
        private void SetLayout(params string[] layoutStrings)
        {
            foreach (var line in layoutStrings)
            {
                line.Length.Should().Be(layoutStrings[0].Length,
                                        "All lines in the layout should be the same length");
            }

            var gridProps = new GridProps()
            {
                GridNavigationWrap = navigationWrap,
                Columns            = layoutStrings[0].Length
            };

            gridProps.GridNavigationWrap = navigationWrap;

            for (int y = 0; y < layoutStrings.Length; y++)
            {
                for (int x = 0; x < layoutStrings[y].Length; x++)
                {
                    bool canHaveFocus = true;

                    if (layoutStrings[y][x] == ' ')
                    {
                        canHaveFocus = false;
                    }

                    (var widget, var element) = CommonMocks.Widget($"{x},{y}", elementCanHaveFocus: canHaveFocus);

                    gridProps.Add(widget.Object);
                }
            }

            (var parentWidget, var parent) = CommonMocks.Widget("parent", elementCanHaveFocus: true);
            this.parent = parent;

            grid = new Grid(gridProps);

            var displaySystem = new Mock <IDisplaySystem>();

            displaySystem.Setup(x => x.ParentOf(grid)).Returns(
                new Func <IRenderElement, IRenderElement>(_ => this.parent.Object));

            grid.Display.System = displaySystem.Object;


            parent.Object.Children.Add(grid);
        }
Beispiel #2
0
 /// <summary> builds regular rectangular grid with defined boundary type </summary>
 Grid BuildGridB(GridProps props, int bnd)
 {
     return(Grid.Build(hm.AddUnfRectGrid(
                           new P2(props.XMin, props.YMin), new P2(props.XMax, props.YMax),
                           props.Nx, props.Ny, new int[] { bnd, bnd, bnd, bnd })));
 }