2#include "qml_material/style/button_interaction_state.hpp"
3#include "qml_material/core/enum.hpp"
4Q_MOC_INCLUDE(
"qml_material/control/button.hpp")
8class QML_MATERIAL_API CardState :
public ButtonInteractionState {
10 QML_NAMED_ELEMENT(StateCard)
11 Q_PROPERTY(qml_material::Button* item READ item WRITE setItem NOTIFY itemChanged FINAL)
12 Q_PROPERTY(
int type READ type WRITE setType NOTIFY typeChanged BINDABLE bindableType FINAL)
14 int radius READ radius WRITE setRadius NOTIFY radiusChanged BINDABLE bindableRadius FINAL)
16 explicit CardState(QObject* parent =
nullptr);
18 void setItem(Button*);
21 QBindable<int> bindableType();
24 QBindable<int> bindableRadius();
25 Q_SIGNAL
void typeChanged();
26 Q_SIGNAL
void radiusChanged();
29 qreal baseElevation()
const;
30 Q_OBJECT_BINDABLE_PROPERTY_WITH_ARGS(CardState,
int, m_type, 0, &CardState::typeChanged)
31 Q_OBJECT_BINDABLE_PROPERTY_WITH_ARGS(CardState,
int, m_radius, 12, &CardState::radiusChanged)
32 BindingLifetime m_bindingLifetime { bindingSet().lifetime() };