Qt Script C++ Classes

The Qt Script module provides classes for making Qt applications scriptable. More...

This module was introduced in Qt 4.3.

Classes

QScriptClass

Interface for defining custom behavior of (a class of) Qt Script objects

QScriptClassPropertyIterator

Iterator interface for custom Qt Script objects

QScriptContext

Represents a Qt Script function invocation

QScriptContextInfo

Additional information about a QScriptContext

QScriptEngine

Environment for evaluating Qt Script code

QScriptEngineAgent

Interface to report events pertaining to QScriptEngine execution

QScriptExtensionPlugin

Abstract base for custom QScript extension plugins

QScriptProgram

Encapsulates a Qt Script program

QScriptString

Acts as a handle to "interned" strings in a QScriptEngine

QScriptSyntaxCheckResult

The result of a script syntax check

QScriptValue

Acts as a container for the Qt Script data types

QScriptValueIterator

Java-style iterator for QScriptValue

QScriptable

Access to the Qt Script environment from Qt C++ member functions

Detailed Description

The Qt Script module only provides core scripting facilities; the Qt Script Tools module provides additional Qt Script-related components that application developers may find useful.

Warning: This module is not actively developed. It is provided for backwards compatibility with Qt 4 only. For new code, use QJSEngine and related classes in the Qt QML module instead.

To include the definitions of the module's classes, use the following directive:

#include <QtScript>

To link against the module, add this line to your qmake .pro file:

QT += script

For detailed information on how to make your application scriptable with Qt Script, see Making Applications Scriptable.

License Information

Qt Commercial Edition licensees that wish to distribute applications that use the Qt Script module need to be aware of their obligations under the GNU Library General Public License (LGPL).

Developers using the Open Source Edition can choose to redistribute the module under the appropriate version of the GNU LGPL.

Commercial customers that do not want to depend on LGPL code can consider using the QJSEngine and QJSValue classes in the Qt Qml module. These classes offer a similar but more narrow scripting API that is sufficient for most use cases and is not dependent on LGPL code.

Qt Script is licensed under the GNU Library General Public License.
Individual contributor names and copyright dates can be found
inline in the code.

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Library General Public License for more details.

You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB.  If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.

Qt Script furthermore contains third party code that is also licensed under the GNU General Public License, version 2, or later:

JavaScriptCore, version Snapshot from 2011-01-27

GNU Library General Public License v2 or later

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.