/// <summary> /// Method <c>redistributeGadgets</c> moves gadgets that are out of columns /// after display changment. /// </summary> public void redistributeGadgets() { DisplayConfigurationManager displayManager = new DisplayConfigurationManager(); int nbColumns = currentDisplay.getColumns().Count; if (nbColumns < gadgetsColumns.Count) { for (int i = nbColumns; i < gadgetsColumns.Count; i++) { List<Gadget> gadgetsToMove = new List<Gadget>(); foreach (Gadget gadget in gadgetsColumns[i]) { gadgetsToMove.Add(gadget); } foreach (Gadget gadget in gadgetsToMove) { gadgetsColumns[i].Remove(gadget); gadgetsColumns[nbColumns - 1].Add(gadget); } } } }
public void initializeCockpitConfigurationTest() { DisplayConfigurationManager displayManager = new DisplayConfigurationManager(); List<Gadget> gadgets = new List<Gadget>(); Gadget gadget = new Gadget(1, "gadget1", position: 0); gadgets.Add(gadget); gadget = new Gadget(2, "gadget2", position: 0); gadgets.Add(gadget); gadget = new Gadget(3, "gadget3", position: 0); gadgets.Add(gadget); gadget = new Gadget(4, "gadget4", position: 1); gadgets.Add(gadget); gadget = new Gadget(5, "gadget5", position: 1); gadgets.Add(gadget); gadget = new Gadget(6, "gadget6", position: 1); gadgets.Add(gadget); cockpitConfiguration = new CockpitConfiguration(33, gadgets, displayManager.getDisplayWithId(1)); TestContext.RequestedPage.Session.Add("currentCockpitConfiguration", cockpitConfiguration); }
/// <summary> /// This method has to regroup all informations concerning cockpit configuration /// based on parameter <paramref name="userName"/>. Once it's done, an instance /// of <c>CockpitConfiguration</c> is created and returned. /// </summary> /// <param name="userName">Contains the userName needed to know which cockpit /// configuration to restore from database.</param> /// <returns>The new instance of <c>CockpitConfiguration</c> is returned.</returns> /// <exception cref="Exception">An exception is raised and thrown if a problem occurs /// with database query.</exception> /// <remarks>If the user hasn't any cockpit configuration attributed, a default /// one is loaded.</remarks> public CockpitConfiguration getConfiguration(string userName) { XmlDocument configurationXml = getConfigurationXml(userName); int configurationID = int.Parse(configurationXml.GetElementsByTagName("cockpitConfiguration")[0].Attributes.GetNamedItem("ID").InnerText); /* * Then, display configuration is restored */ XmlNode cockpitDisplayConfigIdNode = configurationXml.GetElementsByTagName("displayConfig")[0]; int displayConfigurationID = int.Parse(cockpitDisplayConfigIdNode.InnerText); DisplayConfigurationManager displayManager = new DisplayConfigurationManager(); DisplayConfiguration displayConfiguration = displayManager.getDisplayWithId(displayConfigurationID); /* * Finally, the list of gadgets used in the cockpit configuration are * restored and created. */ XmlNodeList gadgetNodes = configurationXml.GetElementsByTagName("gadget"); GadgetManager gadgetManager = new GadgetManager(); List<Gadget> gadgets=new List<Gadget>(); int gadgetId, gadgetPosition, uniqueId=0; foreach (XmlNode gadgetNode in gadgetNodes) { gadgetId = int.Parse(gadgetNode.Attributes.GetNamedItem("ID").InnerText); gadgetPosition = int.Parse(gadgetNode.Attributes.GetNamedItem("column").InnerText); Gadget gadgetToAdd = gadgetManager.getGadgetWithId(gadgetId); gadgetToAdd.setPosition(gadgetPosition); gadgetToAdd.setUniqueID(uniqueId++); gadgets.Add(gadgetToAdd); } return new CockpitConfiguration(configurationID, gadgets, displayConfiguration); }
public void updateGadgetPositionTest() { int originColumnId = 0; // TODO: Initialize to an appropriate value int originRowId = 0; // TODO: Initialize to an appropriate value int destinationColumnId = 0; // TODO: Initialize to an appropriate value int destinationRowId = 0; // TODO: Initialize to an appropriate value CockpitConfiguration cockpitConfigurationToObtain; //***************************************************************** DisplayConfigurationManager displayManager = new DisplayConfigurationManager(); List<Gadget> gadgets = new List<Gadget>(); Gadget gadget = new Gadget(1, "gadget1", position: 0); gadgets.Add(gadget); gadget = new Gadget(2, "gadget2", position: 0); gadgets.Add(gadget); gadget = new Gadget(3, "gadget3", position: 0); gadgets.Add(gadget); gadget = new Gadget(4, "gadget4", position: 1); gadgets.Add(gadget); gadget = new Gadget(5, "gadget5", position: 1); gadgets.Add(gadget); gadget = new Gadget(6, "gadget6", position: 1); gadgets.Add(gadget); cockpitConfigurationToObtain = new CockpitConfiguration(23, gadgets, displayManager.getDisplayWithId(1)); //************************************************************************************** cockpitConfiguration = EditCockpit.updateGadgetPosition(originColumnId, originRowId, destinationColumnId, destinationRowId); TestContext.RequestedPage.Session.Add("currentCockpitConfiguration", cockpitConfiguration); compareCockpitConfigurations(cockpitConfigurationToObtain); //move gadget 5 on second position first column gadgets = new List<Gadget>(); gadget = new Gadget(1, "gadget1", position: 0); gadgets.Add(gadget); gadget = new Gadget(5, "gadget5", position: 0); gadgets.Add(gadget); gadget = new Gadget(2, "gadget2", position: 0); gadgets.Add(gadget); gadget = new Gadget(3, "gadget3", position: 0); gadgets.Add(gadget); gadget = new Gadget(4, "gadget4", position: 1); gadgets.Add(gadget); gadget = new Gadget(6, "gadget6", position: 1); gadgets.Add(gadget); cockpitConfigurationToObtain = new CockpitConfiguration(12, gadgets, displayManager.getDisplayWithId(1)); cockpitConfiguration = EditCockpit.updateGadgetPosition(2, 2, 1, 1); compareCockpitConfigurations(cockpitConfigurationToObtain, isGadgetsPositionTrue: false); //*********************************************************************************************** gadgets = new List<Gadget>(); gadget = new Gadget(5, "gadget5", position: 0); gadgets.Add(gadget); gadget = new Gadget(1, "gadget1", position: 0); gadgets.Add(gadget); gadget = new Gadget(2, "gadget2", position: 0); gadgets.Add(gadget); gadget = new Gadget(3, "gadget3", position: 0); gadgets.Add(gadget); gadget = new Gadget(4, "gadget4", position: 1); gadgets.Add(gadget); gadget = new Gadget(6, "gadget6", position: 1); gadgets.Add(gadget); cockpitConfigurationToObtain = new CockpitConfiguration(11, gadgets, displayManager.getDisplayWithId(1)); compareCockpitConfigurations(cockpitConfigurationToObtain, isGadgetsPositionTrue: true); }
private void createDialog() { Panel displayChooserContainer = new Panel(); displayChooserContainer.ID = "columnChooserContainer"; displayChooserContainer.CssClass = "dialogable"; displayManager = new DisplayConfigurationManager(); for(int i=0; i<displayManager.getDisplayConfigurationCollection().Count; i++) { DisplayConfiguration displayConfiguration = displayManager.getDisplayConfigurationCollection()[i]; Panel displayPanel = new Panel(); displayPanel.ID="displayConfig"+i; displayPanel.Style.Add("float", "left"); displayPanel.Style.Add("width", "30%"); displayPanel.Style.Add("height", "100px"); Table displayTable = new Table(); displayTable.Width = Unit.Percentage(100); TableRow row = new TableRow(); row.Width = Unit.Percentage(100); row.Height = Unit.Pixel(100); //for each column of display configuration for(int j=0; j<displayConfiguration.getNbColumns(); j++) { TableCell column = new TableCell(); column.Width = Unit.Percentage(displayConfiguration.getColumns()[j]); column.BorderColor = System.Drawing.Color.Black; column.BorderWidth = Unit.Pixel(2); column.Controls.Add(new LiteralControl("<br/>")); row.Cells.Add(column); } displayTable.Rows.Add(row); displayPanel.Controls.Add(displayTable); Button chooseButton = new Button(); chooseButton.Text = "Choose"; chooseButton.CommandArgument = displayConfiguration.getDisplayId().ToString(); EventHandler buttonHandler = new EventHandler(this.display_Click); chooseButton.Click += buttonHandler; displayPanel.Controls.Add(chooseButton); displayChooserContainer.Controls.Add(displayPanel); } Master.FindControl("MainContent").Controls.Add(displayChooserContainer); }