private void ControlsToData()
 {
     if (connectorLocationPin == null)
         connectorLocationPin = new ConnectorLocation();
     connectorLocationPin.connectorID = edtConnectorId.Text;
     connectorLocationPin.pinID = edtConnectorPinId.Text;
 }
 //----------------------------------------//
 //--- Add a new connector location pin ---//
 //----------------------------------------//
 protected override void btnAdd_Click(object sender, EventArgs e)
 {
     var form = new ConnectorLocationPinForm(_connectors);
     //--------------------------------------------------------------------------------------------------------------//
     //--- If there already locations in the list, then lets grab the last connector id and set it on the new pin ---//
     //--------------------------------------------------------------------------------------------------------------//
     var locationPin = new ConnectorLocation();
     if (lvList.Items.Count > 0)
         locationPin.connectorID = ((ConnectorLocation) lvList.Items[lvList.Items.Count - 1].Tag).connectorID;
     form.ConnectorLocation = locationPin;
     if (DialogResult.OK == form.ShowDialog())
     {
         AddConnectorLocation(form.ConnectorLocation);
     }
 }
 private bool HasConnectorLocation( ConnectorLocation connectorLocation )
 {
     bool hasConnectorLocation = false;
     foreach (ListViewItem selectedItem in SelectedItems)
     {
         ConnectorLocation item = selectedItem.Tag as ConnectorLocation;
         if (item != null && item.connectorID.Equals( connectorLocation.connectorID ) &&
             item.pinID.Equals( connectorLocation.pinID ))
         {
             hasConnectorLocation = true;
             break;
         }
     }
     return hasConnectorLocation;
 }
 //-------------------------------------------------------------------------------------------//
 //--- Add a new connector location list control to the list view as well as the data list ---//
 //-------------------------------------------------------------------------------------------//
 public void AddConnectorLocation(ConnectorLocation connectorLocation)
 {
     if (!HasConnectorLocation(connectorLocation))
         AddListViewItem(connectorLocation);
 }
 public static bool LoadFromFile(string fileName, out ConnectorLocation obj)
 {
     System.Exception exception;
     return LoadFromFile(fileName, out obj, out exception);
 }
 //-------------------------------------------------------------//
 //--- Add a connector location pin to the list view control ---//
 //-------------------------------------------------------------//
 private int AddListViewItem(ConnectorLocation connectorLocation)
 {
     if (connectorLocation == null)
         connectorLocation = new ConnectorLocation();
     var item = new ListViewItem(connectorLocation.connectorID);
     item.SubItems.Add(connectorLocation.pinID);
     item.Tag = connectorLocation;
     if (lvList.Columns.Count >= 2)
     {
         lvList.Columns[0].Width = -2;
         lvList.Columns[1].Width = -2;
     }
     return lvList.Items.Add(item).Index;
 }
 /// <summary>
 /// Deserializes xml markup from file into an ConnectorLocation1 object
 /// </summary>
 /// <param name="fileName">string xml file to load and deserialize</param>
 /// <param name="obj">Output ConnectorLocation1 object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns>
 public static bool LoadFromFile(string fileName, out ConnectorLocation obj, out System.Exception exception)
 {
     exception = null;
     obj = default(ConnectorLocation);
     try
     {
         obj = LoadFromFile(fileName);
         return true;
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return false;
     }
 }
 public static bool Deserialize(string input, out ConnectorLocation obj)
 {
     System.Exception exception;
     return Deserialize(input, out obj, out exception);
 }
 /// <summary>
 /// Deserializes workflow markup into an ConnectorLocation1 object
 /// </summary>
 /// <param name="input">string workflow markup to deserialize</param>
 /// <param name="obj">Output ConnectorLocation1 object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns>
 public static bool Deserialize(string input, out ConnectorLocation obj, out System.Exception exception)
 {
     exception = null;
     obj = default(ConnectorLocation);
     try
     {
         obj = Deserialize(input);
         return true;
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return false;
     }
 }
 private void DataToControls()
 {
     if (connectorLocation == null)
         connectorLocation = new ConnectorLocation();
     connectorLocationPinControl.ConnectorLocationPin = connectorLocation;
 }
 private void ControlsToData()
 {
     if (connectorLocation == null)
         connectorLocation = new ConnectorLocation();
     connectorLocation = connectorLocationPinControl.ConnectorLocationPin;
 }