/// <summary>
        /// Override to provide the right mouse action when trying
        /// to create links on the diagram
        /// </summary>
        /// <param name="pointArgs"></param>
        public override void OnViewMouseEnter(DslDiagrams::DiagramPointEventArgs pointArgs)
        {
            if (pointArgs == null)
            {
                throw new global::System.ArgumentNullException("pointArgs");
            }

            DslDiagrams::DiagramView activeView = this.ActiveDiagramView;

            if (activeView != null)
            {
                DslDiagrams::MouseAction action = null;
                if (activeView.SelectedToolboxItemSupportsFilterString(global::BizTalkMessaging.BizTalkMessagingToolboxHelper.Application_To_Broker_ConnectorFilterString))
                {
                    if (this.application_To_Broker_ConnectorConnectAction == null)
                    {
                        this.application_To_Broker_ConnectorConnectAction = new global::BizTalkMessaging.Application_To_Broker_ConnectorConnectAction(this);
                        this.application_To_Broker_ConnectorConnectAction.MouseActionDeactivated += new DslDiagrams::MouseAction.MouseActionDeactivatedEventHandler(OnConnectActionDeactivated);
                    }
                    action = this.application_To_Broker_ConnectorConnectAction;
                }
                else if (activeView.SelectedToolboxItemSupportsFilterString(global::BizTalkMessaging.BizTalkMessagingToolboxHelper.Broker_To_Application_ConnectorFilterString))
                {
                    if (this.broker_To_Application_ConnectorConnectAction == null)
                    {
                        this.broker_To_Application_ConnectorConnectAction = new global::BizTalkMessaging.Broker_To_Application_ConnectorConnectAction(this);
                        this.broker_To_Application_ConnectorConnectAction.MouseActionDeactivated += new DslDiagrams::MouseAction.MouseActionDeactivatedEventHandler(OnConnectActionDeactivated);
                    }
                    action = this.broker_To_Application_ConnectorConnectAction;
                }
                else
                {
                    action = null;
                }

                if (pointArgs.DiagramClientView.ActiveMouseAction != action)
                {
                    pointArgs.DiagramClientView.ActiveMouseAction = action;
                }
            }
        }
 /// <summary>
 /// Dispose of connect actions.
 /// </summary>
 protected override void Dispose(bool disposing)
 {
     try
     {
         if (disposing)
         {
             if (this.application_To_Broker_ConnectorConnectAction != null)
             {
                 this.application_To_Broker_ConnectorConnectAction.Dispose();
                 this.application_To_Broker_ConnectorConnectAction = null;
             }
             if (this.broker_To_Application_ConnectorConnectAction != null)
             {
                 this.broker_To_Application_ConnectorConnectAction.Dispose();
                 this.broker_To_Application_ConnectorConnectAction = null;
             }
         }
     }
     finally
     {
         base.Dispose(disposing);
     }
 }