summaryrefslogtreecommitdiffstats
path: root/src/activeqt/container/qaxobject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/activeqt/container/qaxobject.cpp')
-rw-r--r--src/activeqt/container/qaxobject.cpp24
1 files changed, 19 insertions, 5 deletions
diff --git a/src/activeqt/container/qaxobject.cpp b/src/activeqt/container/qaxobject.cpp
index 317f83b..4a30803 100644
--- a/src/activeqt/container/qaxobject.cpp
+++ b/src/activeqt/container/qaxobject.cpp
@@ -49,6 +49,7 @@
****************************************************************************/
#include "qaxobject.h"
+#include "qaxobject_p.h"
#include "qaxbase_p.h"
#include <quuid.h>
@@ -84,6 +85,11 @@ private:
QAxBaseObject *m_o;
};
+QAxBaseObject::QAxBaseObject(QObjectPrivate &d, QObject *parent)
+ : QObject(d, parent)
+{
+}
+
/*!
\class QAxBaseObject
\brief QAxBaseObject provides static properties and signals for QAxObject.
@@ -187,7 +193,7 @@ private:
QObject constructor. To initialize the object, call setControl().
*/
QAxObject::QAxObject(QObject *parent)
-: QAxBaseObject(parent)
+: QAxBaseObject(*new QAxObjectPrivate, parent)
{
axBaseInit(new QAxObjectSignalBridge(this));
}
@@ -199,7 +205,7 @@ QAxObject::QAxObject(QObject *parent)
\sa setControl()
*/
QAxObject::QAxObject(const QString &c, QObject *parent)
-: QAxBaseObject(parent)
+: QAxBaseObject(*new QAxObjectPrivate, parent)
{
axBaseInit(new QAxObjectSignalBridge(this));
setControl(c);
@@ -210,7 +216,7 @@ QAxObject::QAxObject(const QString &c, QObject *parent)
iface. \a parent is propagated to the QObject constructor.
*/
QAxObject::QAxObject(IUnknown *iface, QObject *parent)
-: QAxBaseObject(parent), QAxBase(iface)
+: QAxBaseObject(*new QAxObjectPrivate, parent), QAxBase(iface)
{
axBaseInit(new QAxObjectSignalBridge(this));
}
@@ -221,7 +227,8 @@ QAxObject::QAxObject(IUnknown *iface, QObject *parent)
*/
QAxObject::~QAxObject()
{
- clear();
+ Q_D(QAxObject);
+ d->clear();
}
unsigned long QAxObject::classContext() const
@@ -246,7 +253,14 @@ bool QAxObject::setControl(const QString &c)
void QAxObject::clear()
{
- QAxBase::clear();
+ Q_D(QAxObject);
+ d->clear();
+}
+
+void QAxObjectPrivate::clear()
+{
+ Q_Q(QAxObject);
+ q->QAxBase::clear();
}
/*!