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); }
/// <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 }))); }