Hyprland/src/devices/Mouse.hpp

38 lines
920 B
C++
Raw Normal View History

#pragma once
#include "IPointer.hpp"
class CMouse : public IPointer {
public:
2024-06-20 18:05:35 +02:00
static SP<CMouse> create(SP<Aquamarine::IPointer> mouse);
2024-06-20 18:05:35 +02:00
virtual bool isVirtual();
virtual SP<Aquamarine::IPointer> aq();
private:
2024-06-20 18:05:35 +02:00
CMouse(SP<Aquamarine::IPointer> mouse);
2024-06-20 18:05:35 +02:00
WP<Aquamarine::IPointer> mouse;
2024-06-20 18:05:35 +02:00
struct {
CHyprSignalListener destroy;
2024-06-20 18:05:35 +02:00
CHyprSignalListener motion;
CHyprSignalListener motionAbsolute;
CHyprSignalListener button;
CHyprSignalListener axis;
CHyprSignalListener frame;
2024-06-20 18:05:35 +02:00
CHyprSignalListener swipeBegin;
CHyprSignalListener swipeEnd;
CHyprSignalListener swipeUpdate;
2024-06-20 18:05:35 +02:00
CHyprSignalListener pinchBegin;
CHyprSignalListener pinchEnd;
CHyprSignalListener pinchUpdate;
2024-06-20 18:05:35 +02:00
CHyprSignalListener holdBegin;
CHyprSignalListener holdEnd;
} listeners;
};