5#include <qqmlregistration.h>
6#include "qml_material/export.hpp"
11class QML_MATERIAL_API FloatingToolbarScroll :
public QObject {
14 Q_PROPERTY(
bool expanded READ expanded WRITE setExpanded NOTIFY expandedChanged FINAL)
15 Q_PROPERTY(
bool enabled READ enabled WRITE setEnabled NOTIFY enabledChanged FINAL)
16 Q_PROPERTY(
bool reverseLayout READ reverseLayout WRITE setReverseLayout NOTIFY
17 reverseLayoutChanged FINAL)
18 Q_PROPERTY(qreal expandScrollThreshold READ expandScrollThreshold WRITE setExpandScrollThreshold
19 NOTIFY expandScrollThresholdChanged FINAL)
20 Q_PROPERTY(qreal collapseScrollThreshold READ collapseScrollThreshold WRITE
21 setCollapseScrollThreshold NOTIFY collapseScrollThresholdChanged FINAL)
23 explicit FloatingToolbarScroll(QObject* parent =
nullptr);
24 bool expanded()
const {
return m_expanded; }
25 bool enabled()
const {
return m_enabled; }
26 bool reverseLayout()
const {
return m_reverseLayout; }
27 qreal expandScrollThreshold()
const {
return m_expandThreshold; }
28 qreal collapseScrollThreshold()
const {
return m_collapseThreshold; }
29 void setExpanded(
bool);
30 void setEnabled(
bool);
31 void setReverseLayout(
bool);
32 void setExpandScrollThreshold(qreal);
33 void setCollapseScrollThreshold(qreal);
34 Q_INVOKABLE
void scrollBy(QPointF consumed);
35 Q_INVOKABLE
void reset();
36 Q_SIGNAL
void expandedChanged();
37 Q_SIGNAL
void enabledChanged();
38 Q_SIGNAL
void reverseLayoutChanged();
39 Q_SIGNAL
void expandScrollThresholdChanged();
40 Q_SIGNAL
void collapseScrollThresholdChanged();
41 Q_SIGNAL
void expandRequested();
42 Q_SIGNAL
void collapseRequested();
45 bool m_expanded =
true;
46 bool m_enabled =
true;
47 bool m_reverseLayout =
false;
48 qreal m_expandThreshold = 40;
49 qreal m_collapseThreshold = 40;
50 qreal m_remaining = 40;