From d796c9dd933ab96ec83b9a634feedd5d32e1ba3f Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Tue, 8 Nov 2011 12:31:36 -0600 Subject: Test conversion to TQt3 from Qt3 8c6fc1f8e35fd264dd01c582ca5e7549b32ab731 --- doc/html/qaxwidget.html | 250 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 250 insertions(+) create mode 100644 doc/html/qaxwidget.html (limited to 'doc/html/qaxwidget.html') diff --git a/doc/html/qaxwidget.html b/doc/html/qaxwidget.html new file mode 100644 index 000000000..006e57f98 --- /dev/null +++ b/doc/html/qaxwidget.html @@ -0,0 +1,250 @@ + + + + + +TQAxWidget Class + + + + + + + +
+ +Home + | +All Classes + | +Main Classes + | +Annotated + | +Grouped Classes + | +Functions +

TQAxWidget Class Reference
[TQAxContainer module]

+ +

The TQAxWidget class is a TQWidget that wraps an ActiveX control. +More... +

This class is part of the TQt ActiveTQt Extension. +

#include <qaxwidget.h> +

Inherits TQWidget and TQAxBase. +

List of all member functions. +

Public Members

+ +

Important Inherited Members

+ +

Protected Members

+ +

Detailed Description

+

This class is defined in the TQt ActiveTQt Extension, which can be found in the qt/extensions directory. It is not included in the main TQt API. +

+ +The TQAxWidget class is a TQWidget that wraps an ActiveX control. + +

+ +

A TQAxWidget can be instantiated as an empty object, with the name +of the ActiveX control it should wrap, or with an existing +interface pointer to the ActiveX control. The ActiveX control's +properties, methods and events which only use supported data types, become available as TQt properties, +slots and signals. The base class TQAxBase provides an API to +access the ActiveX directly through the IUnknown pointer. +

TQAxWidget is a TQWidget and can be used as such, e.g. it can be +organized in a widget hierarchy, receive events or act as an event +filter. Standard widget properties, e.g. enabled are supported, but it depends on the ActiveX +control to implement support for ambient properties like e.g. +palette or font. TQAxWidget tries to provide the necessary hints. +

Warning: +You can subclass TQAxWidget, but you cannot use the Q_OBJECT macro +in the subclass (the generated moc-file will not compile), so you +cannot add further signals, slots or properties. This limitation +is due to the metaobject information generated in runtime. To work +around this problem, aggregate the TQAxWidget as a member of the +TQObject subclass. +

+


Member Function Documentation

+

TQAxWidget::TQAxWidget ( TQWidget * parent = 0, const char * name = 0, WFlags f = 0 ) +

+Creates an empty TQAxWidget widget and propagates parent, name and f to the TQWidget constructor. To initialize a control, +call setControl. + +

TQAxWidget::TQAxWidget ( const TQString & c, TQWidget * parent = 0, const char * name = 0, WFlags f = 0 ) +

+Creates an TQAxWidget widget and initializes the ActiveX control c. +parent, name and f are propagated to the TQWidget contructor. +

See also control. + +

TQAxWidget::TQAxWidget ( IUnknown * iface, TQWidget * parent = 0, const char * name = 0, WFlags f = 0 ) +

+Creates a TQAxWidget that wraps the COM object referenced by iface. +parent, name and f are propagated to the TQWidget contructor. + +

TQAxWidget::~TQAxWidget () +

+Shuts down the ActiveX control and destroys the TQAxWidget widget, +cleaning up all allocated resources. +

See also clear(). + +

bool TQAxWidget::createHostWindow ( bool initialized ) [virtual protected] +

+Creates the client site for the ActiveX control, and returns TRUE if +the control could be embedded successfully, otherwise returns FALSE. +If initialized is TRUE the control has already been initialized. +

This function is called by initialize(). If you reimplement initialize +to customize the actual control instantiation, call this function in your +reimplementation to have the control embedded by the default client side. +Creates the client site for the ActiveX control, and returns TRUE if +the control could be embedded successfully, otherwise returns FALSE. + +

TQVariant TQAxBase::dynamicCall ( const TQCString & function, const TQVariant & var1 = TQVariant ( ), const TQVariant & var2 = TQVariant ( ), const TQVariant & var3 = TQVariant ( ), const TQVariant & var4 = TQVariant ( ), const TQVariant & var5 = TQVariant ( ), const TQVariant & var6 = TQVariant ( ), const TQVariant & var7 = TQVariant ( ), const TQVariant & var8 = TQVariant ( ) ) +

+Calls the COM object's method function, passing the +parameters var1, var1, var2, var3, var4, var5, +var6, var7 and var8, and returns the value returned by +the method, or an invalid TQVariant if the method does not return +a value or when the function call failed. +

If function is a method of the object the string must be provided +as the full prototype, for example as it would be written in a +TQObject::connect() call. +

+    activeX->dynamicCall( "Navigate(const TQString&)", "www.trolltech.com" );
+    
+ +

Alternatively a function can be called passing the parameters embedded +in the string, e.g. above function can also be invoked using +

+    activeX->dynamicCall("Navigate(\"www.trolltech.com\");
+    
+ +All parameters are passed as strings; it depends on the control whether +they are interpreted correctly, and is slower than using the prototype +with correctly typed parameters. +

If function is a property the string has to be the name of the +property. The property setter is called when var1 is a valid TQVariant, +otherwise the getter is called. +

+    activeX->dynamicCall( "Value", 5 );
+    TQString text = activeX->dynamicCall( "Text" ).toString();
+    
+ +Note that it is faster to get and set properties using +TQObject::property() and TQObject::setProperty(). +

It is only possible to call functions through dynamicCall() that +have parameters or return values of datatypes supported by +TQVariant. See the TQAxBase class documentation for a list of +supported and unsupported datatypes. If you want to call functions +that have unsupported datatypes in the parameter list, use +queryInterface() to retrieve the appropriate COM interface, and +use the function directly. +

+    IWebBrowser2 *webBrowser = 0;
+    activeX->queryInterface( IID_IWebBrowser2, (void**)&webBrowser );
+    if ( webBrowser ) {
+        webBrowser->Navigate2( pvarURL );
+        webBrowser->Release();
+    }
+    
+ +

This is also more efficient. + +

Example: qutlook/centralwidget.cpp. +

TQVariant TQAxBase::dynamicCall ( const TQCString & function, TQValueList<TQVariant> & vars ) +

+This is an overloaded member function, provided for convenience. It behaves essentially like the above function. +

Calls the COM object's method function, passing the +parameters in vars, and returns the value returned by +the method. If the method does not return a value or when +the function call failed this function returns an invalid +TQVariant object. +

The TQVariant objects in vars are updated when the method has +out-parameters. + +

TQAxObject * TQAxBase::querySubObject ( const TQCString & name, const TQVariant & var1 = TQVariant ( ), const TQVariant & var2 = TQVariant ( ), const TQVariant & var3 = TQVariant ( ), const TQVariant & var4 = TQVariant ( ), const TQVariant & var5 = TQVariant ( ), const TQVariant & var6 = TQVariant ( ), const TQVariant & var7 = TQVariant ( ), const TQVariant & var8 = TQVariant ( ) ) +

+Returns a pointer to a TQAxObject wrapping the COM object provided +by the method or property name, passing passing the parameters +var1, var1, var2, var3, var4, var5, var6, +var7 and var8. +

If name is provided by a method the string must include the +full function prototype. +

If name is a property the string must be the name of the property, +and var1, ... var8 are ignored. +

The returned TQAxObject is a child of this object (which is either of +type TQAxObject or TQAxWidget), and is deleted when this object is +deleted. It is however safe to delete the returned object yourself, +and you should do so when you iterate over lists of subobjects. +

COM enabled applications usually have an object model publishing +certain elements of the application as dispatch interfaces. Use +this method to navigate the hierarchy of the object model, e.g. +

+    TQAxWidget outlook( "Outlook.Application" );
+    TQAxObject *session = outlook.querySubObject( "Session" );
+    if ( session ) {
+        TQAxObject *defFolder = session->querySubObject(
+                                "GetDefaultFolder(OlDefaultFolders)",
+                                "olFolderContacts" );
+        //...
+    }
+    
+ + +

Example: qutlook/centralwidget.cpp. +

bool TQAxWidget::translateKeyEvent ( int message, int keycode ) const [virtual protected] +

+Reimplement this function to pass certain key events to the +ActiveX control. message is the Window message identifier +specifying the message type (ie. WM_KEYDOWN), and keycode is +the virtual keycode (ie. VK_TAB). +

If the function returns TRUE the key event is passed on to the +ActiveX control, which then either processes the event or passes +the event on to TQt. +

If the function returns FALSE the processing of the key event is +ignored by ActiveTQt, ie. the ActiveX control might handle it or +not. +

The default implementation returns TRUE for the following cases: +

+ + +
WM_SYSKEYDOWN +WM_SYSKEYUP +WM_KEYDOWN +
All keycodes +VK_MENU +VK_TAB, VK_DELETE and all non-arrow-keys in combination with VK_SHIFT, +VK_CONTROL or VK_MENU +
+

This table is the result of experimenting with popular ActiveX controls, +ie. Internet Explorer and Microsoft Office applications, but for some +controls it might retquire modification. + + +


+This file is part of the TQt toolkit. +Copyright © 1995-2007 +Trolltech. All Rights Reserved.


+ +
Copyright © 2007 +TrolltechTrademarks +
TQt 3.3.8
+
+ -- cgit v1.2.1