/// <summary> /// The method called by walkinside, just before the plugin is removed from walkinside environment. /// </summary> /// <param name="viewer">The context of the viewer when plugin is created.</param> /// <returns>True if destruction of plugin succeeded.</returns> public bool DestroyPlugin( IVRViewerSdk viewer ) { _avevaManager.OnClosing(); viewer.ProjectManager.OnProjectOpen -= new VRProjectEventHandler( ProjectManager_OnProjectOpen ); viewer.ProjectManager.OnProjectClose -= new VRProjectEventHandler( ProjectManager_OnProjectClose ); viewer.ProjectManager.OnBranchSelect -= new VROnBranchSelectedEventHandler( ProjectManager_OnBranchSelect ); viewer.UI.UnregisterVRFORM( m_ToolStripItem1, typeof( AssetView ) ); viewer.UI.PluginMenu.DropDownItems.Remove( m_ToolStripItem1 ); m_ToolStripItem1 = null; _avevaManager = null; Root = null; return true; }
void ProjectManager_OnProjectOpen( object o, VRProjectEventArgs e ) { IVRBranch[] rootarray = e.Project.ProjectManager.CurrentProject.BranchManager.GetBranchesByType( 0 ); if( rootarray.Length > 0 ) { Root = rootarray[0]; _avevaManager = new AssetViewManager(); IVRSelection first = CurrentViewer.CreateSelection(); first.Add( Root.Manager.GetBranch( 35626 ) ); first.GoTo(); first.Dispose(); } }