Qt Script C++ Classes | Qt Script

Qt 5.9 | Qt Script | Qt Script C++ Classes

Qt 5.9.2 Reference Documentation

# Qt Script C++ Classes

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

This documentation was introduced in Qt 4.3.

## Classes

QScriptable | Access to the Qt Script environment from Qt C++ member functions
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
QScriptSyntaxCheckResult | The result of a script syntax check
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
QScriptValue | Acts as a container for the Qt Script data types
QScriptValueIterator | Java-style iterator for QScriptValue

## 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.

This module is mainly provided for backwards compatibility reasons with Qt 4.x and not being actively developed any further. For new code please consider using the QJSEngine, etc. 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 | GNU Library General Public License v2 or later