summaryrefslogtreecommitdiffstats
path: root/doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2009-04-24 11:34:15 (GMT)
committeraxis <qt-info@nokia.com>2009-04-24 11:34:15 (GMT)
commit8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76 (patch)
treea17e1a767a89542ab59907462206d7dcf2e504b2 /doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp
downloadQt-8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76.zip
Qt-8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76.tar.gz
Qt-8f427b2b914d5b575a4a7c0ed65d2fb8f45acc76.tar.bz2
Long live Qt for S60!
Diffstat (limited to 'doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp')
-rw-r--r--doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp60
1 files changed, 60 insertions, 0 deletions
diff --git a/doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp b/doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp
new file mode 100644
index 0000000..c296789
--- /dev/null
+++ b/doc/src/snippets/code/src_activeqt_control_qaxbindable.cpp
@@ -0,0 +1,60 @@
+//! [0]
+class MyActiveX : public QWidget, public QAxBindable
+{
+ Q_OBJECT
+ Q_PROPERTY(int value READ value WRITE setValue)
+
+public:
+ MyActiveX(QWidget *parent = 0);
+ ...
+
+ int value() const;
+ void setValue(int);
+};
+//! [0]
+
+
+//! [1]
+void MyActiveQt::setText(const QString &text)
+{
+ if (!requestPropertyChange("text"))
+ return;
+
+ // update property
+
+ propertyChanged("text");
+}
+//! [1]
+
+
+//! [2]
+long AxImpl::queryInterface(const QUuid &iid, void **iface)
+{
+ *iface = 0;
+ if (iid == IID_ISomeCOMInterface)
+ *iface = (ISomeCOMInterface*)this;
+ else
+ return E_NOINTERFACE;
+
+ AddRef();
+ return S_OK;
+}
+//! [2]
+
+
+//! [3]
+HRESULT AxImpl::QueryInterface(REFIID iid, void **iface)
+{
+ return controllingUnknown()->QueryInterface(iid, iface);
+}
+
+ulong AxImpl::AddRef()
+{
+ return controllingUnknown()->AddRef();
+}
+
+ulong AxImpl::Release()
+{
+ return controllingUnknown()->Release();
+}
+//! [3]