mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2026-01-21 04:55:38 -05:00
74 lines
1.6 KiB
C++
74 lines
1.6 KiB
C++
|
|
#include "MouseTracker.h"
|
||
|
|
|
||
|
|
void MouseTracker::OnMouseMoved(wxMouseEvent& event) {
|
||
|
|
if (isMouseDown) {
|
||
|
|
const wxSize ClientSize = target->GetClientSize();
|
||
|
|
float mouseX = (float) event.m_x / (float) ClientSize.x;
|
||
|
|
float mouseY = (float) event.m_y / (float) ClientSize.y;
|
||
|
|
|
||
|
|
deltaMouseX = mouseX - lastMouseX;
|
||
|
|
deltaMouseY = mouseY - lastMouseY;
|
||
|
|
|
||
|
|
lastMouseX = mouseX;
|
||
|
|
|
||
|
|
if (vertDragLock && mouseY != lastMouseY) {
|
||
|
|
target->WarpPointer(event.m_x, lastMouseY * ClientSize.y);
|
||
|
|
} else {
|
||
|
|
lastMouseY = mouseY;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void MouseTracker::OnMouseDown(wxMouseEvent& event) {
|
||
|
|
const wxSize ClientSize = target->GetClientSize();
|
||
|
|
|
||
|
|
lastMouseX = (float) event.m_x / (float) ClientSize.x;
|
||
|
|
lastMouseY = (float) event.m_y / (float) ClientSize.y;
|
||
|
|
|
||
|
|
isMouseDown = true;
|
||
|
|
}
|
||
|
|
|
||
|
|
void MouseTracker::OnMouseWheelMoved(wxMouseEvent& event) {
|
||
|
|
// std::cout << "wheel?" << std::endl;
|
||
|
|
}
|
||
|
|
|
||
|
|
void MouseTracker::OnMouseReleased(wxMouseEvent& event) {
|
||
|
|
isMouseDown = false;
|
||
|
|
}
|
||
|
|
|
||
|
|
void MouseTracker::OnMouseLeftWindow(wxMouseEvent& event) {
|
||
|
|
isMouseDown = false;
|
||
|
|
}
|
||
|
|
|
||
|
|
float MouseTracker::getDeltaMouseX() {
|
||
|
|
return deltaMouseX;
|
||
|
|
}
|
||
|
|
|
||
|
|
float MouseTracker::getDeltaMouseY() {
|
||
|
|
return deltaMouseY;
|
||
|
|
}
|
||
|
|
|
||
|
|
float MouseTracker::getLastMouseX() {
|
||
|
|
return lastMouseX;
|
||
|
|
}
|
||
|
|
|
||
|
|
float MouseTracker::getLastMouseY() {
|
||
|
|
return lastMouseY;
|
||
|
|
}
|
||
|
|
|
||
|
|
float MouseTracker::getMouseX() {
|
||
|
|
return mouseX;
|
||
|
|
}
|
||
|
|
|
||
|
|
float MouseTracker::getMouseY() {
|
||
|
|
return mouseY;
|
||
|
|
}
|
||
|
|
|
||
|
|
void MouseTracker::setVertDragLock(bool dragLock) {
|
||
|
|
vertDragLock = dragLock;
|
||
|
|
}
|
||
|
|
|
||
|
|
bool MouseTracker::mouseDown() {
|
||
|
|
return isMouseDown;
|
||
|
|
}
|