diff options
| author | Sandro S. Andrade <sandroandrade@kde.org> | 2013-10-09 20:19:34 -0300 |
|---|---|---|
| committer | Sandro S. Andrade <sandroandrade@kde.org> | 2013-10-10 01:23:16 +0200 |
| commit | dc76a0dc87fe7ee0f94e96881990a4e83911fd8e (patch) | |
| tree | f5b0731e183ecfe8c8d0a888a966508984d921db /src/modeling/qmodelingobject.cpp | |
| parent | 01ae27fe58be35914b0c4f573782f90242a9bfd9 (diff) | |
Further refactoring in QtModeling (initial step)
Change-Id: Id8ca8a50edefeeb5c71206e96adbc4777eb82ccd
Reviewed-by: Sandro S. Andrade <sandroandrade@kde.org>
Diffstat (limited to 'src/modeling/qmodelingobject.cpp')
| -rw-r--r-- | src/modeling/qmodelingobject.cpp | 55 |
1 files changed, 53 insertions, 2 deletions
diff --git a/src/modeling/qmodelingobject.cpp b/src/modeling/qmodelingobject.cpp index 015f6d50..a6516b51 100644 --- a/src/modeling/qmodelingobject.cpp +++ b/src/modeling/qmodelingobject.cpp @@ -39,10 +39,61 @@ ** ****************************************************************************/ #include "qmodelingobject.h" +#include "qmodelingobject_p.h" QT_BEGIN_NAMESPACE -QHash< QString, QHash< QString, QHash<QtModeling::MetaPropertyDataRole, QVariant> > > QModelingObject::propertyDataHash; +QHash< QString, QHash< QString, QHash<QtModeling::MetaPropertyDataRole, QVariant> > > QModelingObjectPrivate::propertyDataHash; -QT_END_NAMESPACE +QModelingObjectPrivate::QModelingObjectPrivate() +{ +} +QModelingObjectPrivate::~QModelingObjectPrivate() +{ + qDeleteAll(groupProperties); +} + +QModelingObject::~QModelingObject() +{ +} + +bool QModelingObject::isPropertyModified(QMetaProperty metaProperty) const +{ + Q_D(const QModelingObject); + return d->modifiedResettableProperties.contains(QString::fromLatin1(metaProperty.name())); +} + +QVariant QModelingObject::propertyData(QString className, QMetaProperty metaProperty, QtModeling::MetaPropertyDataRole role) +{ + return QModelingObjectPrivate::propertyDataHash[className][QString::fromLatin1(metaProperty.name())][role]; +} + +int QModelingObject::propertyGroupIndex(QMetaProperty metaProperty) const +{ + Q_D(const QModelingObject); + int groupIndex = 0; + foreach (QString group, d->propertyGroups) { + foreach (QMetaProperty *metaPropertyPointer, d->groupProperties.values(group)) + if (metaPropertyPointer->name() == metaProperty.name()) + return groupIndex; + ++groupIndex; + } + return -1; +} + +const QStringList &QModelingObject::propertyGroups() const +{ + Q_D(const QModelingObject); + return d->propertyGroups; +} + +const QStringList &QModelingObject::modifiedResettableProperties() const +{ + Q_D(const QModelingObject); + return d->modifiedResettableProperties; +} + +QModelingObject::QModelingObject() +{ +} |
