diff options
| author | Sandro S. Andrade <sandroandrade@kde.org> | 2013-09-02 22:02:41 -0300 |
|---|---|---|
| committer | Sandro S. Andrade <sandroandrade@kde.org> | 2013-09-03 03:04:37 +0200 |
| commit | a143fe8c5451493b128b4c6f0750f02b58af8666 (patch) | |
| tree | 4b74787f6ece9256db04dc65002cae749f6936b3 /src/modeling/qmodelingobject.h | |
| parent | 2bfe659e4d30b449747585e18eeb84bfc5d73f43 (diff) | |
Add initial version of new UML metamodel implementation
Change-Id: Ic29a04dc49fac075d9c736237573b7f4e3da85ef
Reviewed-by: Sandro S. Andrade <sandroandrade@kde.org>
Diffstat (limited to 'src/modeling/qmodelingobject.h')
| -rw-r--r-- | src/modeling/qmodelingobject.h | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/src/modeling/qmodelingobject.h b/src/modeling/qmodelingobject.h index fca7d302..fba397e1 100644 --- a/src/modeling/qmodelingobject.h +++ b/src/modeling/qmodelingobject.h @@ -38,12 +38,16 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#ifndef QMODELINGOBJECT_H -#define QMODELINGOBJECT_H +#ifndef QMODELINGBASE_H +#define QMODELINGBASE_H #include <QtModeling/QtModelingGlobal> -#include <QtCore/QVariant> +#include <QtCore/QSet> +#include <QtCore/QList> +#include <QtCore/QString> +#include <QtCore/QPointer> +#include <QtCore/QMetaType> QT_BEGIN_HEADER @@ -51,27 +55,24 @@ QT_BEGIN_NAMESPACE QT_MODULE(QtModeling) -#define QM_D(Class) Class##Private *d = dynamic_cast<Class##Private *>(d_ptr); -#define QM_Q(Class) Class *q = dynamic_cast<Class *>(q_ptr); - class QObject; -class QModelingObjectPrivate; class Q_MODELING_EXPORT QModelingObject { public: - QModelingObject(); - virtual ~QModelingObject(); - - QObject *asQObject() const; + virtual ~QModelingObject() {} + inline QObject *asQObject() { return _qObject; } + bool deletingFromQObject; protected: - QModelingObject(QModelingObjectPrivate *dd); - QModelingObjectPrivate *d_ptr; + QModelingObject() : deletingFromQObject(false), _qObject(0) {} + QPointer<QObject> _qObject; }; QT_END_NAMESPACE +Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QModelingObject) *) + QT_END_HEADER -#endif // QMODELINGOBJECT_H +#endif // QMODELINGBASE_H |
