/// <summary> /// Precessing the mouse /// </summary> /// <param name="e"></param> public override void Process(Event e) { #if DEBUG if (DebugMode) { Debug.Log("MouseProcessor.Process"); } #endif _mousePosition = new Point(e.mousePosition.x, e.mousePosition.y); /** * Note: MouseMove events could be sent in editor only!!! * -> look into ScreenSizeProcessor class for capturing mouse move * */ if (e.rawType == EventType.MouseDrag) { #if DEBUG if (DebugMode) { Debug.Log("MouseProcessor.MouseDrag"); } #endif //SystemManager.MouseDragHandler(e, _mousePosition); if (SystemManager.MouseDragSignal.Connected) { SystemManager.MouseDragSignal.Emit(e, _mousePosition); } //e.Use(); } else if (e.rawType == EventType.MouseDown) { #if DEBUG if (DebugMode) { Debug.Log("MouseProcessor.MouseDown"); } #endif Signal signal = MouseUtil.DifferentiateMouseButton(e.button, SystemManager.MouseDownSignal, SystemManager.RightMouseDownSignal, SystemManager.MiddleMouseDownSignal ); if (signal.Connected) { signal.Emit(e, _mousePosition); } //e.Use(); } else if (e.rawType == EventType.MouseUp) { #if DEBUG if (DebugMode) { Debug.Log("MouseProcessor.MouseUp"); } #endif Signal signal = MouseUtil.DifferentiateMouseButton(e.button, SystemManager.MouseUpSignal, SystemManager.RightMouseUpSignal, SystemManager.MiddleMouseUpSignal ); if (signal.Connected) { signal.Emit(e, _mousePosition); } } //e.Use(); }