Exemplo n.º 1
0
        /// <summary>
        /// Stops input handling.
        /// </summary>
        public void Stop()
        {
            // Deregister all events
            if (m_rendererElement != null)
            {
                SeeingSharpRendererElement rendererElement = m_rendererElement;
                m_rendererElement.Dispatcher.BeginInvoke(new Action(() =>
                {
                    rendererElement.MouseWheel        -= OnRendererElement_MouseWheel;
                    rendererElement.MouseDown         -= OnRendererElement_MouseDown;
                    rendererElement.MouseUp           -= OnRendererElement_MouseUp;
                    rendererElement.MouseMove         -= OnRendererElement_MouseMove;
                    rendererElement.MouseLeave        -= OnRendererElement_MouseLeave;
                    rendererElement.LostFocus         -= OnRendererElement_LostFocus;
                    rendererElement.LostKeyboardFocus -= OnRendererElement_LostKeyboardFocus;
                    rendererElement.GotFocus          -= OnRenderElement_GotFocus;
                    rendererElement.PreviewMouseUp    -= OnRendererElement_PreviewMouseUp;
                }));
            }

            m_rendererElement = null;

            m_stateKeyboard       = new KeyboardState();
            m_stateMouseOrPointer = new MouseOrPointerState();
        }
Exemplo n.º 2
0
        /// <summary>
        /// Starts input handling.
        /// </summary>
        /// <param name="viewObject">The view object (e. g. Direct3D11Canvas).</param>
        public void Start(IInputEnabledView viewObject)
        {
            m_rendererElement = viewObject as SeeingSharpRendererElement;
            if (m_rendererElement == null)
            {
                throw new ArgumentException("Unable to handle given view object!");
            }

            // Register all events needed for mouse camera dragging
            m_rendererElement.Dispatcher.BeginInvoke(new Action(() =>
            {
                m_rendererElement.MouseWheel        += OnRendererElement_MouseWheel;
                m_rendererElement.MouseDown         += OnRendererElement_MouseDown;
                m_rendererElement.MouseUp           += OnRendererElement_MouseUp;
                m_rendererElement.MouseMove         += OnRendererElement_MouseMove;
                m_rendererElement.MouseLeave        += OnRendererElement_MouseLeave;
                m_rendererElement.GotFocus          += OnRenderElement_GotFocus;
                m_rendererElement.LostFocus         += OnRendererElement_LostFocus;
                m_rendererElement.LostKeyboardFocus += OnRendererElement_LostKeyboardFocus;
                m_rendererElement.PreviewMouseUp    += OnRendererElement_PreviewMouseUp;
                m_rendererElement.KeyUp             += OnRendererElement_KeyUp;
                m_rendererElement.KeyDown           += OnRendererElement_KeyDown;
            }));
        }