5#include <QQmlParserStatus>
7#include <qqmlregistration.h>
8#include "qml_material/export.hpp"
12class QML_MATERIAL_API FloatingToolbarExit :
public QObject,
public QQmlParserStatus {
15 Q_INTERFACES(QQmlParserStatus)
16 Q_PROPERTY(qreal distance READ distance WRITE setDistance NOTIFY distanceChanged FINAL)
17 Q_PROPERTY(qreal offset READ offset WRITE setOffset NOTIFY offsetChanged FINAL)
18 Q_PROPERTY(
bool active READ active NOTIFY activeChanged FINAL)
19 Q_PROPERTY(
bool enabled READ enabled WRITE setEnabled NOTIFY enabledChanged FINAL)
20 Q_PROPERTY(
bool reverseLayout READ reverseLayout WRITE setReverseLayout NOTIFY
21 reverseLayoutChanged FINAL)
23 explicit FloatingToolbarExit(QObject* parent =
nullptr);
24 void classBegin()
override;
25 void componentComplete()
override;
26 qreal distance()
const {
return m_distance; }
27 qreal offset()
const {
return m_offset; }
28 bool active()
const {
return m_active; }
29 bool enabled()
const {
return m_enabled; }
30 bool reverseLayout()
const {
return m_reverseLayout; }
31 void setDistance(qreal);
32 void setOffset(qreal);
33 void setEnabled(
bool);
34 void setReverseLayout(
bool);
35 Q_INVOKABLE
void begin();
36 Q_INVOKABLE
void scrollBy(QPointF consumed);
37 Q_INVOKABLE
void settle();
38 Q_INVOKABLE
void reset();
39 Q_SIGNAL
void distanceChanged();
40 Q_SIGNAL
void offsetChanged();
41 Q_SIGNAL
void activeChanged();
42 Q_SIGNAL
void inputStarted();
43 Q_SIGNAL
void enabledChanged();
44 Q_SIGNAL
void reverseLayoutChanged();
47 bool m_initializing =
false;
48 std::optional<qreal> m_initialOffset;
49 void update(qreal offset,
bool active);
52 bool m_active =
false;
53 bool m_enabled =
true;
54 bool m_reverseLayout =
false;