| Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |
The QAxScriptManager class provides a bridge between application objects and script code. More...
This class is part of the Qt ActiveQt Extension.
#include <qaxscript.h>
Inherits QObject.
This class is defined in the Qt ActiveQt Extension, which can be found in the qt/extensions directory. It is not included in the main Qt API.
The QAxScriptManager class provides a bridge between application objects and script code.
The QAxScriptManager acts as a bridge between the COM objects embedded in the Qt application through QAxObject or QAxWidget, and the scripting languages available through the Windows Script technologies, usually JScript and VBScript.
Create one QAxScriptManager for each separate document in your application, and add the COM objects the scripts need to access using addObject(). Then load() the script sources and invoke the functions using call().
Warning: This class is not available with the bcc5.5 and MingW compilers.
It is usual to create one QAxScriptManager for each document in an application.
You must add all the necessary objects before loading any scripts.
Adds a generic COM wrapper for object to the manager. object must be exposed as a COM object using the functionality provided by the QAxServer module.. Applications using this function you must link against the qaxserver library.
In most script engines the only supported parameter type is "const QVariant&", for example, to call a JavaScript function
function setNumber(number)
{
n = number;
}
use
QValueList args;
args << 5;
script->call("setNumber(const QVariant&)", args);
As with dynamicCall the
parameters can directly be embedded in the function string.
script->call("setNumber(5)");
However, this is slower.
Functions provided by script engines that don't support introspection are not available and must be called directly using QAxScript::call() on the respective script object.
Note that calling this function can be significantely slower than using call() on the respective QAxScript directly.
Calls function passing arguments as parameters, and returns the result. Returns when the script's execution has finished.
This signal is emitted when an execution error occured while running script.
code, description, sourcePosition and sourceText contain information about the execution error.
The function returns a pointer to the script for the given code if the code was loaded successfully; otherwise it returns 0.
If language is empty it will be determined heuristically. If code contains the string "End Sub" it will be interpreted as VBScript, otherwise as JScript. Additional script engines can be registered using registerEngine().
You must add all the objects necessary (using addObject()) before loading any scripts. If code declares a function that is already available (no matter in which language) the first function is overloaded and can no longer be called via call(); but it will still be available by calling its script directly.
See also addObject(), scriptNames(), and functions().
Loads the source code from the file. The script can later be referred to using its name which should not be empty.
The function returns a pointer to the script engine for the code in file if file was loaded successfully; otherwise it returns 0.
The script engine used is determined from the file's extension. By default ".js" files are interpreted as JScript files, and ".vbs" and ".dsm" files are interpreted as VBScript. Additional script engines can be registered using registerEngine().
The script engine will be used when loading files with the given extension, or when loading source code that contains the string code.
You can use the returned pointer to call functions directly through QAxScript::call(), to access the script engine directly, or to delete and thus unload the script.
This file is part of the Qt toolkit. Copyright © 1995-2004 Trolltech. All Rights Reserved.
| Copyright © 2004 Trolltech | Trademarks | Qt 3.3.0
|