public void TestAddControl_LayoutWithOneColumn_ChangeBorderSize() { //---------------Set up test pack------------------- IControlHabanero control = GetControlFactory().CreateControl(); ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); IControlHabanero managedControl = columnLayoutManager.ManagedControl; //managedControl.Width = 200; //--------------Assert PreConditions---------------- Assert.AreEqual(0, managedControl.Controls.Count); Assert.AreEqual(0, control.Left); Assert.AreEqual(0, control.Top); Assert.AreEqual(100, control.Width); Assert.AreEqual(10, control.Height); //---------------Execute Test ---------------------- columnLayoutManager.AddControl(control); columnLayoutManager.BorderSize = 10; //---------------Test Result ----------------------- Assert.AreEqual(1, managedControl.Controls.Count); Assert.AreEqual(columnLayoutManager.BorderSize, control.Left); Assert.AreEqual(columnLayoutManager.BorderSize, control.Top); Assert.AreEqual(managedControl.Width - columnLayoutManager.BorderSize * 2, control.Width); Assert.AreEqual(10, control.Height); //---------------Tear Down ------------------------- }
public void TestAddControl_TwoColumns_OneControl_NonIntegerColumnWidth() { //---------------Set up test pack------------------- IControlHabanero control = GetControlFactory().CreateControl(); ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); int NoColumns = 2; columnLayoutManager.ColumnCount = NoColumns; IControlHabanero managedControl = columnLayoutManager.ManagedControl; double expectedControlWidth = 42.5; //--------------Assert PreConditions---------------- Assert.AreEqual(0, control.Left); Assert.AreEqual(0, control.Top); Assert.AreEqual(100, control.Width); //---------------Execute Test ---------------------- double combinedWidth = expectedControlWidth * 2 + BORDER_SIZE * 2 + GAP_SIZE; managedControl.Width = (int)combinedWidth; columnLayoutManager.AddControl(control); //---------------Test Result ----------------------- Assert.AreEqual(BORDER_SIZE, control.Left); Assert.AreEqual(BORDER_SIZE, control.Top); Assert.AreEqual((int)expectedControlWidth, control.Width); //---------------Tear Down ------------------------- }
public void TestAddControl_TwoColumns_TwoControl() { //---------------Set up test pack------------------- IControlHabanero control1 = GetControlFactory().CreateControl(); IControlHabanero control2 = GetControlFactory().CreateControl(); ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); int NoColumns = 2; columnLayoutManager.ColumnCount = NoColumns; IControlHabanero managedControl = columnLayoutManager.ManagedControl; int expectedControlWidth = (managedControl.Width - 2 * BORDER_SIZE - 1 * GAP_SIZE) / NoColumns; //--------------Assert PreConditions---------------- Assert.AreEqual(0, control1.Left); Assert.AreEqual(0, control1.Top); Assert.AreEqual(100, control1.Width); Assert.AreEqual(0, control2.Left); Assert.AreEqual(0, control2.Top); Assert.AreEqual(100, control2.Width); //---------------Execute Test ---------------------- columnLayoutManager.AddControl(control1); columnLayoutManager.AddControl(control2); //---------------Test Result ----------------------- Assert.AreEqual(BORDER_SIZE, control1.Left); Assert.AreEqual(BORDER_SIZE, control1.Top); Assert.AreEqual(expectedControlWidth, control1.Width); Assert.AreEqual(expectedControlWidth + BORDER_SIZE + GAP_SIZE, control2.Left); Assert.AreEqual(BORDER_SIZE, control2.Top); Assert.AreEqual(expectedControlWidth, control2.Width); //---------------Tear Down ------------------------- }
public void TestResizeManagedControl() { //---------------Set up test pack------------------- IControlHabanero managedControl = GetControlFactory().CreatePanel(); int originalWidth = 400; managedControl.Width = originalWidth; ColumnLayoutManager columnLayoutManager = new ColumnLayoutManager(managedControl, GetControlFactory()); columnLayoutManager.HorizontalGapSize = 0; columnLayoutManager.VerticalGapSize = 0; columnLayoutManager.BorderSize = 0; IControlHabanero createdControl1 = GetControlFactory().CreateControl(); IControlHabanero createdControl2 = GetControlFactory().CreateControl(); columnLayoutManager.AddControl(createdControl1); columnLayoutManager.AddControl(createdControl2); //---------------Assert preconditions--------------- Assert.AreEqual(originalWidth, createdControl1.Width); Assert.AreEqual(originalWidth, createdControl2.Width); //---------------Execute Test ---------------------- int newWidth = 500; managedControl.Width = newWidth; //---------------Test Result ----------------------- Assert.AreEqual(newWidth, createdControl1.Width); Assert.AreEqual(newWidth, createdControl2.Width); //---------------Tear Down ------------------------- }
public void TestAddTwoControls_LayoutWithOneColumn() { //---------------Set up test pack------------------- IControlHabanero control1 = GetControlFactory().CreateControl(); IControlHabanero control2 = GetControlFactory().CreateControl(); ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); IControlHabanero managedControl = columnLayoutManager.ManagedControl; //managedControl.Width = 200; //--------------Assert PreConditions---------------- Assert.AreEqual(0, managedControl.Controls.Count); Assert.AreEqual(0, control1.Left); Assert.AreEqual(0, control1.Top); Assert.AreEqual(100, control1.Width); Assert.AreEqual(0, control2.Left); Assert.AreEqual(0, control2.Top); Assert.AreEqual(100, control2.Width); //---------------Execute Test ---------------------- columnLayoutManager.AddControl(control1); columnLayoutManager.AddControl(control2); //---------------Test Result ----------------------- Assert.AreEqual(2, managedControl.Controls.Count); Assert.AreEqual(columnLayoutManager.BorderSize, control1.Left); Assert.AreEqual(columnLayoutManager.BorderSize, control1.Top); Assert.AreEqual(managedControl.Width - columnLayoutManager.BorderSize * 2, control1.Width); Assert.AreEqual(columnLayoutManager.BorderSize, control2.Left); Assert.AreEqual(columnLayoutManager.BorderSize + control1.Height + columnLayoutManager.VerticalGapSize, control2.Top); Assert.AreEqual(managedControl.Width - columnLayoutManager.BorderSize * 2, control2.Width); //---------------Tear Down ------------------------- }
/// <summary> /// Adds a Menu item to the <see cref="T:Habanero.Faces.Base.IMenuItemCollection" />. /// </summary> /// <param name="menuItem"></param> public void Add(IMenuItem menuItem) { _list.Add(menuItem); ICollapsiblePanelGroupControl cpGroupMenuItem = _ownerMenuItem as ICollapsiblePanelGroupControl; if (cpGroupMenuItem != null && menuItem is CollapsibleSubMenuItemWin) { CollapsibleSubMenuItemWin outlookStyleSubMenuItem = (CollapsibleSubMenuItemWin)menuItem; cpGroupMenuItem.AddControl(outlookStyleSubMenuItem); return; } ICollapsiblePanel cpMenuItem = _ownerMenuItem as ICollapsiblePanel; if (cpMenuItem != null && menuItem is CollapsibleMenuItemWin) { if (cpMenuItem.ContentControl == null) { cpMenuItem.ContentControl = this.ControlFactory.CreatePanel(); _columnLayoutManager = new ColumnLayoutManager(cpMenuItem.ContentControl, this.ControlFactory); // this.ControlFactory.CreateBorderLayoutManager(cpMenuItem); _columnLayoutManager.HorizontalGapSize = 0; _columnLayoutManager.VerticalGapSize = 0; _columnLayoutManager.BorderSize = 0; } _columnLayoutManager.AddControl((CollapsibleMenuItemWin)menuItem); cpMenuItem.Height += ((CollapsibleMenuItemWin)menuItem).Height; cpMenuItem.ExpandedHeight = cpMenuItem.Height; } }
public void TestAddControl_TwoColumns_FiveControl_ResizeManagedControl() { //---------------Set up test pack------------------- IControlHabanero control1 = GetControlFactory().CreateControl(); IControlHabanero control2 = GetControlFactory().CreateControl(); IControlHabanero control5 = GetControlFactory().CreateControl(); ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); int NoColumns = 2; columnLayoutManager.ColumnCount = NoColumns; IControlHabanero managedControl = columnLayoutManager.ManagedControl; int expectedControlWidth = (managedControl.Width - 2 * BORDER_SIZE - 1 * GAP_SIZE) / NoColumns; control2.Height = 40; columnLayoutManager.AddControl(control1); columnLayoutManager.AddControl(control2); IControlHabanero control3 = columnLayoutManager.AddControl(GetControlFactory().CreateControl()); columnLayoutManager.AddControl(GetControlFactory().CreateControl()); columnLayoutManager.AddControl(control5); //--------------Assert PreConditions---------------- Assert.AreEqual(BORDER_SIZE, control1.Left); Assert.AreEqual(BORDER_SIZE, control1.Top); Assert.AreEqual(expectedControlWidth, control1.Width); Assert.AreEqual(expectedControlWidth + BORDER_SIZE + GAP_SIZE, control2.Left); Assert.AreEqual(BORDER_SIZE, control2.Top); Assert.AreEqual(expectedControlWidth, control2.Width); Assert.AreEqual(BORDER_SIZE, control5.Left); int thirdRowTop = BORDER_SIZE + control2.Height + GAP_SIZE * 2 + control3.Height; Assert.AreEqual(thirdRowTop, control5.Top); Assert.AreEqual(expectedControlWidth, control5.Width); //---------------Execute Test ---------------------- managedControl.Height = 330; managedControl.Width = 195; //---------------Test Result ----------------------- int expectedControlWidth_afterResize = (managedControl.Width - 2 * BORDER_SIZE - 1 * GAP_SIZE) / NoColumns; Assert.AreEqual(BORDER_SIZE, control1.Left); Assert.AreEqual(BORDER_SIZE, control1.Top); Assert.AreEqual(expectedControlWidth_afterResize, control1.Width); Assert.AreEqual(expectedControlWidth_afterResize + BORDER_SIZE + GAP_SIZE, control2.Left); Assert.AreEqual(BORDER_SIZE, control2.Top); Assert.AreEqual(expectedControlWidth_afterResize, control2.Width); Assert.AreEqual(BORDER_SIZE, control5.Left); Assert.AreEqual(thirdRowTop, control5.Top); Assert.AreEqual(expectedControlWidth_afterResize, control5.Width); //---------------Tear Down ------------------------- }
public void Test_Visually_Advanced() { //---------------Set up test pack------------------- IControlFactory controlFactory = GetControlFactory(); IGroupBox groupBox = controlFactory.CreateGroupBox("Test Layout"); IPanel panel = controlFactory.CreatePanel(); panel.Dock = DockStyle.Fill; groupBox.Controls.Add(panel); ColumnLayoutManager columnLayoutManager = new ColumnLayoutManager(panel, controlFactory) { ColumnCount = 1 }; int controlNumber = 1; IPanel panel1 = CreateColoredPanel(controlFactory, controlNumber++ + ":"); panel1.Controls.Clear(); GridLayoutManager gridLayoutManager = new GridLayoutManager(panel1, controlFactory); gridLayoutManager.SetGridSize(4, 3); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "a:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "b:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "c:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "d:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "e:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "f:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "g:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "h:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "i:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "j:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "k:")); gridLayoutManager.AddControl(CreateColoredPanel(controlFactory, "l:")); columnLayoutManager.AddControl(panel1); columnLayoutManager.AddControl(CreateColoredPanel(controlFactory, controlNumber++ + ":")); IButtonGroupControl buttonGroupControl = controlFactory.CreateButtonGroupControl(); buttonGroupControl.Dock = DockStyle.Top; groupBox.Controls.Add(buttonGroupControl); buttonGroupControl.AddButton("Add Control", (sender, e) => columnLayoutManager.AddControl(CreateColoredPanel(controlFactory, controlNumber++ + ":"))); buttonGroupControl.AddButton("-Columns", (sender, e) => { if (columnLayoutManager.ColumnCount > 1) { columnLayoutManager.ColumnCount--; columnLayoutManager.Refresh(); } }); buttonGroupControl.AddButton("+Columns", (sender, e) => { columnLayoutManager.ColumnCount++; columnLayoutManager.Refresh(); }); IFormHabanero form = controlFactory.CreateOKCancelDialogFactory().CreateOKCancelForm(groupBox, "Test Column Layout Manager"); //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- form.ShowDialog(); //---------------Test Result ----------------------- }
public void TestAddControl() { //---------------Set up test pack------------------- IControlHabanero managedControl = GetControlFactory().CreatePanel(); ColumnLayoutManager columnLayoutManager = new ColumnLayoutManager(managedControl, GetControlFactory()); //---------------Execute Test ---------------------- IControlHabanero createdControl = GetControlFactory().CreateControl(); IControlHabanero addedControl = columnLayoutManager.AddControl(createdControl); //---------------Test Result ----------------------- Assert.AreEqual(1, managedControl.Controls.Count); Assert.AreSame(addedControl, createdControl); }
public void TestCreateColumnLayoutManager() { //---------------Set up test pack------------------- IControlHabanero controlHabanero = GetControlFactory().CreatePanel(); //---------------Execute Test ---------------------- ColumnLayoutManager columnLayoutManager = new ColumnLayoutManager(controlHabanero, GetControlFactory()); //---------------Test Result ----------------------- Assert.IsNotNull(columnLayoutManager.ManagedControl); Assert.AreSame(controlHabanero, columnLayoutManager.ManagedControl); Assert.AreEqual(1, columnLayoutManager.ColumnCount); //---------------Tear Down ----------------------- }
public void TestSetColumnCount() { //---------------Set up test pack------------------- ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); //--------------Assert PreConditions---------------- Assert.AreEqual(1, columnLayoutManager.ColumnCount); //---------------Execute Test ---------------------- columnLayoutManager.ColumnCount = 2; //---------------Test Result ----------------------- Assert.AreEqual(2, columnLayoutManager.ColumnCount); //---------------Tear Down ------------------------- }
public void TestRemoveControl() { //---------------Set up test pack------------------- IControlHabanero managedControl = GetControlFactory().CreatePanel(); IControlHabanero createdControl = GetControlFactory().CreateControl(); ColumnLayoutManager columnLayoutManager = new ColumnLayoutManager(managedControl, GetControlFactory()); columnLayoutManager.AddControl(createdControl); //---------------Assert Pre-Conditions-------------- Assert.AreEqual(1, managedControl.Controls.Count); //---------------Execute Test ---------------------- columnLayoutManager.RemoveControl(createdControl); //---------------Test Result ----------------------- Assert.AreEqual(0, managedControl.Controls.Count); }
public void Test_AddControl_TotalExpandedHeightEquals_CP1_ExpandedHeight() { //---------------Set up test pack------------------- ICollapsiblePanelGroupControl control = CreateCollapsiblePanelGroupControl(); IPanel content = GetControlFactory().CreatePanel(); ICollapsiblePanel cp1 = control.AddControl(content, "", 53); ColumnLayoutManager layoutManager = control.ColumnLayoutManager; //---------------Assert Precondition---------------- Assert.AreEqual(1, control.PanelsList.Count); //---------------Execute Test ---------------------- int totalExpandedHeight = control.TotalExpandedHeight; //---------------Test Result ----------------------- Assert.AreEqual(layoutManager.BorderSize + cp1.ExpandedHeight + layoutManager.VerticalGapSize, totalExpandedHeight); }
private void ScrollCellHorizontally(int columnPosition, int offset) { CellLayoutManager cellLayoutManager = mTableView.GetCellLayoutManager(); for (int i = cellLayoutManager.FindFirstVisibleItemPosition(); i < cellLayoutManager.FindLastVisibleItemPosition() + 1; i++) { RecyclerView cellRowRecyclerView = (RecyclerView)cellLayoutManager.FindViewByPosition(i); if (cellRowRecyclerView != null) { ColumnLayoutManager columnLayoutManager = (ColumnLayoutManager)cellRowRecyclerView.GetLayoutManager(); columnLayoutManager.ScrollToPositionWithOffset(columnPosition, offset); } } }
public void TestSetGapSize_ShouldSetHorizontalGapSizeAndVerticalGapSize() { //---------------Set up test pack------------------- ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); var randomGapSize = RandomValueGen.GetRandomInt(1, 500); //---------------Assert Precondition---------------- Assert.AreEqual(0, columnLayoutManager.GapSize); Assert.AreEqual(LayoutManager.DefaultGapSize, columnLayoutManager.HorizontalGapSize); Assert.AreEqual(LayoutManager.DefaultGapSize, columnLayoutManager.VerticalGapSize); //---------------Execute Test ---------------------- columnLayoutManager.GapSize = randomGapSize; //---------------Test Result ----------------------- Assert.AreEqual(randomGapSize, columnLayoutManager.GapSize); Assert.AreEqual(randomGapSize, columnLayoutManager.HorizontalGapSize); Assert.AreEqual(randomGapSize, columnLayoutManager.VerticalGapSize); }
public void Test_CollapsiblePanels_HasColumnLayout() { //---------------Set up test pack------------------- ICollapsiblePanelGroupControl control = CreateCollapsiblePanelGroupControl(); IPanel content1 = GetControlFactory().CreatePanel(); IPanel content2 = GetControlFactory().CreatePanel(); //---------------Assert Precondition---------------- Assert.AreEqual(0, control.PanelsList.Count); //---------------Execute Test ---------------------- ICollapsiblePanel cp1 = control.AddControl(content1, "", 99); ICollapsiblePanel cp2 = control.AddControl(content2, "", 53); //---------------Test Result ----------------------- ColumnLayoutManager layoutManager = control.ColumnLayoutManager; int expectedCP2_Top = cp1.Height + layoutManager.BorderSize + layoutManager.VerticalGapSize; Assert.AreEqual(expectedCP2_Top, cp2.Top); }
public void Test_AddTwoControl_TotalExpandedHeightEquals_CP1_CP2_ExpandedHeight() { //---------------Set up test pack------------------- ICollapsiblePanelGroupControl control = CreateCollapsiblePanelGroupControl(); IPanel content1 = GetControlFactory().CreatePanel(); IPanel content2 = GetControlFactory().CreatePanel(); ICollapsiblePanel cp1 = control.AddControl(content1, "", 99); ICollapsiblePanel cp2 = control.AddControl(content2, "", 53); //---------------Assert Precondition---------------- Assert.AreEqual(2, control.PanelsList.Count); ColumnLayoutManager layoutManager = control.ColumnLayoutManager; int expectedTotalHeight = layoutManager.BorderSize + cp1.ExpandedHeight + layoutManager.VerticalGapSize + cp2.ExpandedHeight + layoutManager.HorizontalGapSize; //---------------Execute Test ---------------------- int actualTotalHeight = control.TotalExpandedHeight; //---------------Test Result ----------------------- Assert.AreEqual(expectedTotalHeight, actualTotalHeight); }
public void TestResizeControlOnManagedControl() { //---------------Set up test pack------------------- IControlHabanero managedControl = GetControlFactory().CreatePanel(); ColumnLayoutManager columnLayoutManager = new ColumnLayoutManager(managedControl, GetControlFactory()); columnLayoutManager.HorizontalGapSize = 0; columnLayoutManager.VerticalGapSize = 0; columnLayoutManager.BorderSize = 0; IControlHabanero createdControl1 = GetControlFactory().CreateControl(); IControlHabanero createdControl2 = GetControlFactory().CreateControl(); //---------------Execute Test ---------------------- columnLayoutManager.AddControl(createdControl1); columnLayoutManager.AddControl(createdControl2); createdControl1.Height += 10; //---------------Test Result ----------------------- Assert.AreEqual(createdControl1.Height, createdControl2.Top); //---------------Tear Down ------------------------- }
public void Test_UncollapseCP1_MovesCP2_Top() { //---------------Set up test pack------------------- ICollapsiblePanelGroupControl control = CreateCollapsiblePanelGroupControl(); IPanel content1 = GetControlFactory().CreatePanel(); IPanel content2 = GetControlFactory().CreatePanel(); ICollapsiblePanel cp1 = control.AddControl(content1, "", 99); ICollapsiblePanel cp2 = control.AddControl(content2, "", 53); //---------------Assert Precondition---------------- Assert.AreEqual(2, control.PanelsList.Count); ColumnLayoutManager layoutManager = control.ColumnLayoutManager; int expected_Start_CP2_Top = cp1.CollapseButton.Height + layoutManager.BorderSize + layoutManager.VerticalGapSize; Assert.AreEqual(expected_Start_CP2_Top, cp2.Top); //---------------Execute Test ---------------------- cp1.CollapseButton.PerformClick(); //---------------Test Result ----------------------- int expected_Finish_CP2_Top = cp1.ExpandedHeight + layoutManager.BorderSize + layoutManager.VerticalGapSize; Assert.AreEqual(expected_Finish_CP2_Top, cp2.Top); }
public void TestSetColumnCount_Zero() { //---------------Set up test pack------------------- ColumnLayoutManager columnLayoutManager = GetColumnLayoutManager(); //--------------Assert PreConditions---------------- //---------------Execute Test ---------------------- try { columnLayoutManager.ColumnCount = 0; Assert.Fail("This should throw an error"); } //---------------Test Result ----------------------- catch (LayoutManagerException ex) { StringAssert.Contains("You cannot set the column count for a column layout manager to less than 1", ex.Message); } //---------------Tear Down ------------------------- }