/// <summary> /// Connects the control <param name="visualParentInPSMTree"/> via <see cref="PSM_ComponentConnector"/> control. /// </summary> public void InitializeConnector(IConnectable visualParentInPSMTree) { if (visualParentInPSMTree != null) { Connector = new PSM_ComponentConnector(XCaseCanvas, visualParentInPSMTree, this, ((PSMElementViewHelper)ViewHelper).ConnectorViewHelper); Connector.Junction.SelectionOwner = this; } }
/// <summary> /// Updates the connection to parent control when parent control changes /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="System.ComponentModel.PropertyChangedEventArgs"/> instance containing the event data.</param> void ModelPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == "Parent" || e.PropertyName == "ParentUnion") { if ((GetModelParent()) != null && XCaseCanvas.ElementRepresentations.IsElementPresent((GetModelParent()))) { ((PSMElementViewHelper)ViewHelper).ConnectorViewHelper.Points.Clear(); InitializeConnector(); } else { if (Connector is PSM_ComponentConnector) { Connector = null; } } } }