protected override void OnClick() { try { // ------------------------------------ // Set the selection tool as the // current tool // ------------------------------------ _hookHelper.ExecuteSelectionTool(); // ------------------------------------- // Initialize the window with the helper // ------------------------------------- FiberSpliceWindow.AddinImpl winImpl = AddIn.FromID <FiberSpliceWindow.AddinImpl>( ThisAddIn.IDs.Esri_Telecom_Tools_Windows_FiberSpliceWindow); FiberSpliceWindow spliceWindow = winImpl.UI; spliceWindow.DisplaySplices(_spliceHelper); //Get dockable window. UID dockWinID = new UIDClass(); dockWinID.Value = @"esriTelcoTools_FiberSpliceWindow"; IDockableWindow dockWindow = ArcMap.DockableWindowManager.GetDockableWindow(dockWinID); dockWindow.Show(true); } catch (Exception ex) { _logHelper.addLogEntry(DateTime.Now.ToString(), "ERROR", "FiberSpliceCommand::OnClick()", ex.Message); } }
void Events_OnStartEditing() { // ----------------------------------- // Check to see if we are editing the // telecom workspace, and that // workspace is valid, if not ignore. // ----------------------------------- ESRI.ArcGIS.Geodatabase.IFeatureWorkspace workspace = (ESRI.ArcGIS.Geodatabase.IFeatureWorkspace)ArcMap.Editor.EditWorkspace; IFeatureWorkspace fwksp = TelecomWorkspaceHelper.Instance().CurrentWorkspace; bool wkspIsValid = TelecomWorkspaceHelper.Instance().CurrentWorkspaceIsValid; if (workspace == null || !wkspIsValid || !workspace.Equals(fwksp)) { return; } // ----------------------------------- // Workspace is valid for editing. // Get the splice form and set to // edit mode // ----------------------------------- FiberSpliceWindow.AddinImpl winImpl = AddIn.FromID <FiberSpliceWindow.AddinImpl>( ThisAddIn.IDs.Esri_Telecom_Tools_Windows_FiberSpliceWindow); FiberSpliceWindow spliceWindow = winImpl.UI; spliceWindow.IsEditing = true; }
// protected override void Dispose(bool disposing) // { // base.Dispose(disposing); //// Events.OnStartEditing -= new IEditEvents_OnStartEditingEventHandler(Events_OnStartEditing); //// Events.OnStopEditing -= new IEditEvents_OnStopEditingEventHandler(Events_OnStopEditing); // } void Events_OnStopEditing(bool save) { // ----------------------------------- // Get the splice form and set to // read only mode // ----------------------------------- FiberSpliceWindow.AddinImpl winImpl = AddIn.FromID <FiberSpliceWindow.AddinImpl>( ThisAddIn.IDs.Esri_Telecom_Tools_Windows_FiberSpliceWindow); FiberSpliceWindow spliceWindow = winImpl.UI; spliceWindow.IsEditing = false; }