public override void StartCommand()
        {
            base.StartCommand();

            base.SubscribeToEvent(Interaction.InteractionTypeEnum.kSelection);

            //initialize interaction previewgraphics objects

            //create and display the dialog
            m_connectCmdDlg = new ConnectCmdDlg(m_inventorApplication, this);

            if (m_connectCmdDlg != null)
            {
                m_connectCmdDlg.Activate();
                m_connectCmdDlg.TopMost       = true;
                m_connectCmdDlg.ShowInTaskbar = false;
                m_connectCmdDlg.Show();
            }

            //initialize data members
            m_thisSurface      = null;
            m_connectToSurface = null;

            m_thisCav      = null;
            m_connectToCav = null;

            m_UCS = null;

            //enable interaction
            EnableInteraction();
        }
        public ConnectCmd()
        {
            m_connectCmdDlg = null;

            m_thisSurface      = null;
            m_connectToSurface = null;

            m_thisCav      = null;
            m_connectToCav = null;

            m_UCS          = null;
            m_highlightSet = null;
        }
        public override void StopCommand()
        {
            //Terminate this preview graphic
            TerminatePreviewGraphics();

            //destroy the command dialog
            m_connectCmdDlg.Hide();
            m_connectCmdDlg.Dispose();
            m_connectCmdDlg = null;

            if (m_highlightSet != null)
            {
                this.ClearHighlight();
            }

            if (m_UCS != null)
            {
                m_UCS.Visible = false;
            }

            base.StopCommand();
        }