- Qt 5.15
- Qt Script
- Qt Script C++ Classes
- Qt 5.15.19 Reference Documentation

# 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