1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-22 22:13:35 +02:00
vcmi/client/eventsSDL/InputSourceMouse.h

35 lines
856 B
C++
Raw Normal View History

/*
* InputSourceMouse.h, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#pragma once
#include "../../lib/Point.h"
struct SDL_MouseWheelEvent;
struct SDL_MouseMotionEvent;
struct SDL_MouseButtonEvent;
enum class MouseButton;
2023-05-20 00:51:10 +02:00
/// Class that handles mouse input from SDL events
class InputSourceMouse
{
Point middleClickPosition;
int mouseButtonsMask = 0;
const int mouseToleranceDistance;
public:
InputSourceMouse();
void handleEventMouseMotion(const SDL_MouseMotionEvent & current);
void handleEventMouseButtonDown(const SDL_MouseButtonEvent & current);
void handleEventMouseWheel(const SDL_MouseWheelEvent & current);
void handleEventMouseButtonUp(const SDL_MouseButtonEvent & current);
};