9class InputBlock :
public QObject {
13 Q_PROPERTY(
bool when READ when WRITE setWhen NOTIFY whenChanged FINAL)
14 Q_PROPERTY(QQuickItem* target READ target WRITE setTarget NOTIFY targetChanged FINAL)
15 Q_PROPERTY(Qt::MouseButtons acceptMouseButtons READ acceptMouseButtons WRITE
16 setAcceptMouseButtons NOTIFY acceptMouseButtonsChanged FINAL)
17 Q_PROPERTY(
bool acceptHover READ acceptHoverEvents WRITE setAcceptHoverEvents NOTIFY
18 acceptHoverEventsChanged FINAL)
19 Q_PROPERTY(
bool acceptTouch READ acceptTouchEvents WRITE setAcceptTouchEvents NOTIFY
20 acceptTouchEventsChanged FINAL)
21 Q_PROPERTY(
bool acceptWheel READ acceptWheelEvents WRITE setAcceptWheelEvents NOTIFY
22 acceptWheelEventsChanged FINAL)
25 InputBlock(QObject* parent =
nullptr);
27 QQuickItem* target()
const;
28 void setTarget(QQuickItem*);
33 Qt::MouseButtons acceptMouseButtons()
const;
34 void setAcceptMouseButtons(Qt::MouseButtons buttons);
35 bool acceptHoverEvents()
const;
36 void setAcceptHoverEvents(
bool enabled);
37 bool acceptTouchEvents()
const;
38 void setAcceptTouchEvents(
bool accept);
39 bool acceptWheelEvents()
const;
40 void setAcceptWheelEvents(
bool accept);
42 bool eventFilter(QObject* obj, QEvent* event)
override;
44 Q_SIGNAL
void whenChanged();
45 Q_SIGNAL
void targetChanged();
46 Q_SIGNAL
void acceptMouseButtonsChanged();
47 Q_SIGNAL
void acceptHoverEventsChanged();
48 Q_SIGNAL
void acceptTouchEventsChanged();
49 Q_SIGNAL
void acceptWheelEventsChanged();
51 Q_SLOT
void trigger();
55 bool canHover {
false };
56 bool canTouch {
false };
57 Qt::MouseButtons mouseButtons { Qt::NoButton };
58 void saveState(QQuickItem*);
59 void restoreState(QQuickItem*);
65 QPointer<QQuickItem> mTarget;