16 #ifndef KDSME_MODEL_ELEMENT_H
17 #define KDSME_MODEL_ELEMENT_H
19 #include "kdsme_core_export.h"
38 Q_PROPERTY(
KDSME::Element* parent READ parentElement WRITE setParentElement NOTIFY parentChanged FINAL)
39 Q_PROPERTY(Type type READ type CONSTANT FINAL)
40 Q_PROPERTY(Flags flags READ flags WRITE setFlags NOTIFY flagsChanged FINAL)
41 Q_PROPERTY(
QString label READ label WRITE setLabel NOTIFY labelChanged FINAL)
43 Q_PROPERTY(
QPointF pos READ pos WRITE setPos NOTIFY posChanged FINAL)
44 Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged FINAL)
45 Q_PROPERTY(qreal height READ height WRITE setHeight NOTIFY heightChanged FINAL)
47 Q_PROPERTY(
bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged FINAL)
49 Q_PROPERTY(
bool selected READ isSelected WRITE setSelected NOTIFY selectedChanged FINAL)
58 TimeoutTransitionType,
71 ElementIsDragEnabled = 0x1,
72 ElementIsSelectable = 0x2,
73 ElementIsEditable = 0x4,
75 Q_DECLARE_FLAGS(Flags, Flag)
80 virtual Type type()
const;
83 void setFlags(Flags flags);
89 void setLabel(
const QString& label);
96 quintptr internalId()
const;
97 void setInternalId(quintptr
id);
99 void setInternalPointer(
void* ptr);
100 void* internalPointer()
const;
103 void setPos(
const QPointF& pos);
105 qreal height()
const;
106 void setHeight(qreal height);
109 void setWidth(qreal width);
113 bool isVisible()
const;
114 void setVisible(
bool visible);
116 bool isSelected()
const;
117 void setSelected(
bool selected);
119 QSizeF preferredSize()
const;
120 virtual QRectF boundingRect()
const;
122 Element* parentElement()
const;
123 void setParentElement(
Element* parent);
124 void setParent(
QObject*
object);
127 virtual QString toDisplayString()
const;
129 Q_INVOKABLE
static const char* typeToString(Type type);
130 Q_INVOKABLE
static Type stringToType(
const char* type);
133 void parentChanged(
Element* parent);
134 void flagsChanged(Flags flags);
135 void labelChanged(
const QString& label);
136 void posChanged(
const QPointF& pos);
137 void heightChanged(qreal height);
138 void widthChanged(qreal width);
139 void visibleChanged(
bool visible);
140 void selectedChanged(
bool selected);
149 Q_DECLARE_METATYPE(KDSME::Element::Type)
152 #endif // TREESTRUCTURE_H