summaryrefslogtreecommitdiffstats
path: root/doc/html/qaxaggregated.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/html/qaxaggregated.html')
-rw-r--r--doc/html/qaxaggregated.html155
1 files changed, 155 insertions, 0 deletions
diff --git a/doc/html/qaxaggregated.html b/doc/html/qaxaggregated.html
new file mode 100644
index 0000000..6c8c672
--- /dev/null
+++ b/doc/html/qaxaggregated.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/extensions/activeqt/control/qaxbindable.cpp:185 -->
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>QAxAggregated Class</title>
+<style type="text/css"><!--
+fn { margin-left: 1cm; text-indent: -1cm; }
+a:link { color: #004faf; text-decoration: none }
+a:visited { color: #672967; text-decoration: none }
+body { background: #ffffff; color: black; }
+--></style>
+</head>
+<body>
+
+<table border="0" cellpadding="0" cellspacing="0" width="100%">
+<tr bgcolor="#E5E5E5">
+<td valign=center>
+ <a href="index.html">
+<font color="#004faf">Home</font></a>
+ | <a href="classes.html">
+<font color="#004faf">All&nbsp;Classes</font></a>
+ | <a href="mainclasses.html">
+<font color="#004faf">Main&nbsp;Classes</font></a>
+ | <a href="annotated.html">
+<font color="#004faf">Annotated</font></a>
+ | <a href="groups.html">
+<font color="#004faf">Grouped&nbsp;Classes</font></a>
+ | <a href="functions.html">
+<font color="#004faf">Functions</font></a>
+</td>
+<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>QAxAggregated Class Reference<br><small>[<a href="qaxserver.html">QAxServer module</a>]</small></h1>
+
+<p>The QAxAggregated class is an abstract base class for implementations of
+additional COM interfaces.
+<a href="#details">More...</a>
+<p>This class is part of the <b>Qt ActiveQt Extension</b>.
+<p><tt>#include &lt;<a href="qaxbindable-h.html">qaxbindable.h</a>&gt;</tt>
+<p><a href="qaxaggregated-members.html">List of all member functions.</a>
+<h2>Public Members</h2>
+<ul>
+<li class=fn>virtual long <a href="#queryInterface"><b>queryInterface</b></a> ( const&nbsp;QUuid&nbsp;&amp;&nbsp;iid, void&nbsp;**&nbsp;iface ) = 0</li>
+</ul>
+<h2>Protected Members</h2>
+<ul>
+<li class=fn>IUnknown * <a href="#controllingUnknown"><b>controllingUnknown</b></a> () const</li>
+<li class=fn>QWidget * <a href="#widget"><b>widget</b></a> () const</li>
+<li class=fn>QObject * <a href="#object"><b>object</b></a> () const</li>
+</ul>
+<hr><a name="details"></a><h2>Detailed Description</h2>
+<p> This class is defined in the <b>Qt <a href="activeqt.html#ActiveQt">ActiveQt</a> Extension</b>, which can be found in the <tt>qt/extensions</tt> directory. It is not included in the main Qt API.
+<p>
+
+The QAxAggregated class is an abstract base class for implementations of
+additional COM interfaces.
+
+<p>
+
+<p> Create a subclass of QAxAggregated and reimplement
+<a href="#queryInterface">queryInterface</a>() to support additional COM interfaces. Use
+multiple inheritance from those COM interfaces. Implement the
+IUnknown interface of those COM interfaces by delegating the calls
+to QueryInterface(), AddRef() and Release() to the interface
+provided by <a href="#controllingUnknown">controllingUnknown</a>().
+<p> Use the <a href="#widget">widget</a>() method if you need to make calls to the <a href="qwidget.html">QWidget</a>
+implementing the ActiveX control. You must not store that pointer
+in your subclass (unless you use <a href="qguardedptr.html">QGuardedPtr</a>), as the QWidget can
+be destroyed by the ActiveQt framework at any time.
+
+<hr><h2>Member Function Documentation</h2>
+<h3 class=fn>IUnknown * <a name="controllingUnknown"></a>QAxAggregated::controllingUnknown () const<tt> [protected]</tt>
+</h3>
+
+<p> Returns the IUnknown interface of the ActiveX control. Implement
+the IUnknown interface in your QAxAggregated subclass to delegate
+calls to QueryInterface(), AddRef() and Release() to the interface
+provided by this function.
+<p> <pre>
+ HRESULT AxImpl::QueryInterface( REFIID iid, void **iface )
+ {
+ return controllingUnknown()-&gt;QueryInterface( iid, iface );
+ }
+
+ unsigned long AxImpl::AddRef()
+ {
+ return controllingUnknown()-&gt;AddRef();
+ }
+
+ unsigned long AxImpl::Release()
+ {
+ return controllingUnknown()-&gt;Release();
+ }
+ </pre>
+
+<p> The QAXAGG_IUNKNOWN macro expands to the code above, and you can
+use it in the class declaration of your subclass.
+
+<h3 class=fn><a href="qobject.html">QObject</a>&nbsp;* <a name="object"></a>QAxAggregated::object () const<tt> [protected]</tt>
+</h3>
+
+<p> Returns a pointer to the <a href="qobject.html">QObject</a> subclass implementing the COM object.
+This function might return 0.
+<p> <b>Warning:</b>
+You must not store the returned pointer, unless you use a
+<a href="qguardedptr.html">QGuardedPtr</a>, since the QObject can be destroyed by <a href="activeqt.html#ActiveQt">ActiveQt</a> at any
+time.
+
+<h3 class=fn>long <a name="queryInterface"></a>QAxAggregated::queryInterface ( const&nbsp;<a href="quuid.html">QUuid</a>&nbsp;&amp;&nbsp;iid, void&nbsp;**&nbsp;iface )<tt> [pure virtual]</tt>
+</h3>
+
+<p> Reimplement this pure virtual function to support additional COM
+interfaces. Set the value of <em>iface</em> to point to this object to
+support the interface <em>iid</em>. Note that you must cast the <tt>this</tt> pointer to the appropriate superclass.
+<p> <pre>
+ long AxImpl::queryInterface( const <a href="quuid.html">QUuid</a> &amp;iid, void **iface )
+ {
+ *iface = 0;
+ if ( iid == IID_ISomeCOMInterface )
+ *iface = (ISomeCOMInterface*)this;
+ else
+ return E_NOINTERFACE;
+
+ AddRef();
+ return S_OK;
+ }
+ </pre>
+
+<p> Return the standard COM results S_OK (interface is supported) or
+E_NOINTERFACE (requested interface is not supported).
+<p> <b>Warning:</b>
+Even though you must implement the IUnknown interface if you
+implement any COM interface you must not support the IUnknown
+interface in your <a href="#queryInterface">queryInterface</a>() implementation.
+
+<h3 class=fn><a href="qwidget.html">QWidget</a>&nbsp;* <a name="widget"></a>QAxAggregated::widget () const<tt> [protected]</tt>
+</h3>
+
+<p> Returns a pointer to the <a href="qwidget.html">QWidget</a> subclass implementing the ActiveX control.
+This function might return 0.
+<p> <b>Warning:</b>
+You must not store the returned pointer, unless you use a
+<a href="qguardedptr.html">QGuardedPtr</a>, since the QWidget can be destroyed by <a href="activeqt.html#ActiveQt">ActiveQt</a> at any
+time.
+
+<!-- eof -->
+<hr><p>
+This file is part of the <a href="index.html">Qt toolkit</a>.
+Copyright &copy; 1995-2007
+<a href="http://www.trolltech.com/">Trolltech</a>. All Rights Reserved.<p><address><hr><div align=center>
+<table width=100% cellspacing=0 border=0><tr>
+<td>Copyright &copy; 2007
+<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
+<td align=right><div align=right>Qt 3.3.8</div>
+</table></div></address></body>
+</html>