public void TestColumnSpanWithOneFixedColumn() { //---------------Set up test pack------------------- IControlHabanero controlHabanero = GetControlFactory().CreateControl(); controlHabanero.Width = 100; GridLayoutManager manager = new GridLayoutManager(controlHabanero, GetControlFactory()); manager.SetGridSize(1, 3); manager.FixColumnBasedOnContents(0); manager.FixColumnBasedOnContents(2); IControlHabanero col1Control = GetControlFactory().CreateControl(); col1Control.Width = 20; IControlHabanero col3Control = GetControlFactory().CreateControl(); col3Control.Width = 10; //---------------Execute Test ---------------------- manager.AddControl(col1Control, 1, 2); manager.AddControl(col3Control); //---------------Test Result ----------------------- Assert.AreEqual(LayoutManager.DefaultBorderSize, col1Control.Left); Assert.AreEqual(controlHabanero.Width - LayoutManager.DefaultBorderSize - col3Control.Width - LayoutManager.DefaultGapSize, col1Control.Left + col1Control.Width); //---------------Tear Down ------------------------- }
///<summary> /// Constructs a multiselector ///</summary> ///<param name="controlFactory"></param> public MultiSelectorWin(IControlFactory controlFactory) { _controlFactory = controlFactory; InitializeComponent(); _gridLayoutManager = new GridLayoutManager(this, controlFactory); PanelWin optionsPanel = new PanelWin(); _availableOptionsGroupBox.Dock = System.Windows.Forms.DockStyle.Fill; optionsPanel.Controls.Add(_availableOptionsGroupBox); PanelWin buttonPanel = new PanelWin(); GridLayoutManager buttonPanelManager = new GridLayoutManager(buttonPanel, controlFactory); buttonPanelManager.SetGridSize(6, 1); buttonPanelManager.AddControl(null); buttonPanelManager.AddControl(_btnSelect); buttonPanelManager.AddControl(_btnSelectAll); buttonPanelManager.AddControl(_btnDeselectAll); buttonPanelManager.AddControl(_btnDeselect); buttonPanelManager.AddControl(null); buttonPanelManager.FixRow(0, 25); buttonPanelManager.FixRow(1, 25); buttonPanelManager.FixRow(2, 25); buttonPanelManager.FixRow(3, 25); buttonPanelManager.FixRow(4, 25); buttonPanelManager.FixRow(5, 25); buttonPanelManager.FixColumnBasedOnContents(0); PanelWin selectionsPanel = new PanelWin(); _selectionsGroupBox.Dock = System.Windows.Forms.DockStyle.Fill; selectionsPanel.Controls.Add(_selectionsGroupBox); _gridLayoutManager.SetGridSize(1, 3); _gridLayoutManager.FixColumn(1, 100); _gridLayoutManager.AddControl(optionsPanel); _gridLayoutManager.AddControl(buttonPanel); _gridLayoutManager.AddControl(selectionsPanel); _manager = new MultiSelectorManager <T>(this); AvailableOptionsListBox.SelectedIndexChanged += delegate { GetButton(MultiSelectorButton.Select).Enabled = (AvailableOptionsListBox.SelectedIndex != -1); }; SelectedOptionsListBox.SelectedIndexChanged += delegate { GetButton(MultiSelectorButton.Deselect).Enabled = (SelectedOptionsListBox.SelectedIndex != -1); }; SetDoubleClickEventHandlers(); }
public void TestFixColumnBasedOnContents() { //----------------------Setup ------------------------------ ILabel myLabel = GetControlFactory().CreateLabel("test", false); _manager.FixColumnBasedOnContents(0); ILabel myLongLabel = GetControlFactory().CreateLabel("This is a long label", false); //--------------------- verify setup ----------------------- Assert.AreEqual(myLabel.PreferredWidth, myLabel.Width); Assert.That(myLongLabel.PreferredWidth, Is.LessThanOrEqualTo(myLongLabel.Width)); //--------------------- Execute Tests----------------------- _manager.AddControl(myLabel); _manager.AddControl(null); _manager.AddControl(null); _manager.AddControl(myLongLabel); //--------------------- Verify results----------------------- Assert.AreEqual(myLongLabel.PreferredWidth, myLabel.Width, "Width of column should be preferred width (or width) of largest control"); }
///<summary> /// Constructor for the <see cref="MultiSelectorVWG{T}"/> ///</summary> ///<param name="controlFactory"></param> public MultiSelectorVWG(IControlFactory controlFactory) { // _controlFactory = controlFactory; InitializeComponent(); _gridLayoutManager = new GridLayoutManager(this, controlFactory); PanelVWG optionsPanel = new PanelVWG(); _availableOptionsGroupBox.Dock = Gizmox.WebGUI.Forms.DockStyle.Fill; optionsPanel.Controls.Add(_availableOptionsGroupBox); PanelVWG buttonPanel = new PanelVWG(); GridLayoutManager buttonPanelManager = new GridLayoutManager(buttonPanel, controlFactory); buttonPanelManager.SetGridSize(6, 1); buttonPanelManager.AddControl(null); buttonPanelManager.AddControl(_btnSelect); buttonPanelManager.AddControl(_btnSelectAll); buttonPanelManager.AddControl(_btnDeselectAll); buttonPanelManager.AddControl(_btnDeselect); buttonPanelManager.AddControl(null); buttonPanelManager.FixRow(0, 25); buttonPanelManager.FixRow(1, 25); buttonPanelManager.FixRow(2, 25); buttonPanelManager.FixRow(3, 25); buttonPanelManager.FixRow(4, 25); buttonPanelManager.FixRow(5, 25); buttonPanelManager.FixColumnBasedOnContents(0); PanelVWG selectionsPanel = new PanelVWG(); _selectionsGroupBox.Dock = Gizmox.WebGUI.Forms.DockStyle.Fill; selectionsPanel.Controls.Add(_selectionsGroupBox); _gridLayoutManager.SetGridSize(1, 3); _gridLayoutManager.FixColumn(1, 100); _gridLayoutManager.AddControl(optionsPanel); _gridLayoutManager.AddControl(buttonPanel); _gridLayoutManager.AddControl(selectionsPanel); _manager = new MultiSelectorManager <T>(this); }