/// <summary> /// Implementation of SolidEdgeFramework.ISolidEdgeAddIn.OnDisconnection(). /// </summary> public void OnDisconnection(SolidEdgeFramework.SeDisconnectMode DisconnectMode) { switch (DisconnectMode) { case SolidEdgeFramework.SeDisconnectMode.seDisconnectAtShutdown: break; case SolidEdgeFramework.SeDisconnectMode.seDisconnectByUser: break; case SolidEdgeFramework.SeDisconnectMode.seDisconnectExternally: break; } // Unhook all events. UnhookAllEvents(); }
/// <summary> /// Implementation of SolidEdgeFramework.ISolidEdgeAddIn.OnDisconnection(). /// </summary> public void OnDisconnection(SolidEdgeFramework.SeDisconnectMode DisconnectMode) { // Handle DisconnectMode if necessary. switch (DisconnectMode) { case SolidEdgeFramework.SeDisconnectMode.seDisconnectAtShutdown: break; case SolidEdgeFramework.SeDisconnectMode.seDisconnectByUser: break; case SolidEdgeFramework.SeDisconnectMode.seDisconnectExternally: break; } // Cleanup. _edgeBarController.Dispose(); _edgeBarController = null; // Unhook all events. UnhookAllEvents(); }
void SolidEdgeFramework.ISolidEdgeAddIn.OnDisconnection(SolidEdgeFramework.SeDisconnectMode DisconnectMode) { if (IsDefaultAppDomain) { if (_isolatedAddIn != null) { // Forward call to isolated AppDomain. _isolatedAddIn.OnDisconnection(DisconnectMode); // Unload isolated domain. if (_isolatedDomain != null) { AppDomain.Unload(_isolatedDomain); } _isolatedDomain = null; _isolatedAddIn = null; } } else { OnDisconnection(DisconnectMode); if (_ribbonController != null) { try { _ribbonController.Dispose(); } catch { } _ribbonController = null; } if (_edgeBarController != null) { try { _edgeBarController.Dispose(); } catch { } _edgeBarController = null; } if (_viewOverlayController != null) { try { _viewOverlayController.Dispose(); } catch { } _viewOverlayController = null; } } }
/// <summary> /// Called during SolidEdgeFramework.ISolidEdgeAddIn.OnDisconnection(). /// </summary> public virtual void OnDisconnection(SolidEdgeFramework.SeDisconnectMode DisconnectMode) { }
public override void OnDisconnection(SolidEdgeFramework.SeDisconnectMode DisconnectMode) { }
/// <summary> /// Called when the addin is about to be unloaded by Solid Edge. /// </summary> public override void OnDisconnection(SolidEdgeFramework.SeDisconnectMode DisconnectMode) { // Disconnect from all COM events. _connectionPointController.UnadviseAllSinks(); }