#pragma once #include "IPointer.hpp" class CVirtualPointerV1Resource; class CVirtualPointer : public IPointer { public: static SP create(SP resource); virtual bool isVirtual(); virtual SP aq(); private: CVirtualPointer(SP); WP pointer; struct { CHyprSignalListener destroy; CHyprSignalListener motion; CHyprSignalListener motionAbsolute; CHyprSignalListener button; CHyprSignalListener axis; CHyprSignalListener frame; CHyprSignalListener swipeBegin; CHyprSignalListener swipeEnd; CHyprSignalListener swipeUpdate; CHyprSignalListener pinchBegin; CHyprSignalListener pinchEnd; CHyprSignalListener pinchUpdate; CHyprSignalListener holdBegin; CHyprSignalListener holdEnd; } listeners; };