/** * @brief Process mouse dragging events. * @param mousePt Screen position of mouse. */ void MouseDragging(const Point2D& mousePt) { MouseLeftDown(mousePt); return; }
LRESULT CALLBACK CoreWindow::WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch (msg) { case WM_ACTIVATE: // Watch For Window Activate Message { // LoWord Can Be WA_INACTIVE, WA_ACTIVE, WA_CLICKACTIVE, // The High-Order Word Specifies The Minimized State Of The Window Being Activated Or Deactivated. // A NonZero Value Indicates The Window Is Minimized. //if ((LOWORD(wParam) != WA_INACTIVE) && !((BOOL)HIWORD(wParam))) // m_isActive=true; // Program Is Active //else // m_isActive=false; // Program Is No Longer Active return 0; // Return To The Message Loop } case WM_ERASEBKGND: return 0; case WM_DESTROY: return 0; case WM_CLOSE: PostQuitMessage(0); return 0; case WM_PAINT: { if (m_inited) Draw(); break; } case WM_SIZE: { resize(LOWORD(lParam),HIWORD(lParam)); break; } case WM_LBUTTONDOWN: SetCapture(hWnd); MouseLeftDown(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); break; case WM_LBUTTONUP: MouseLeftUp(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); ReleaseCapture(); break; case WM_RBUTTONDOWN: SetCapture(hWnd); MouseRightDown(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); break; case WM_RBUTTONUP: MouseRightUp(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); ReleaseCapture(); break; case WM_MBUTTONDOWN: SetCapture(hWnd); MouseMiddleDown(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); break; case WM_MBUTTONUP: MouseMiddleUp(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); ReleaseCapture(); break; case WM_MOUSEMOVE: MouseMove(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); break; case WM_KEYDOWN: KeyDown(wParam); break; case WM_KEYUP: KeyUp(wParam); break; case WM_SYSCOMMAND: // Intercept System Commands { switch (wParam) // Check System Calls { case SC_SCREENSAVE: // Screensaver Trying To Start? case SC_MONITORPOWER: // Monitor Trying To Enter Powersave? return 0; // Prevent From Happening } break; } } return DefWindowProc(hWnd, msg, wParam, lParam); }
/** * @brief Process mouse left button float click events. * @param mousePt Screen position of mouse. * @return True if view is processing the event, else false. */ void MouseLeftDblClick(const Point2D& mousePt) { MouseLeftDown(mousePt); }