PythonQt
Examples

Examples are available in the examples directory. The PyScriptingConsole implements a simple interactive scripting console that shows how to script a simple application. The PyLauncher application can be used to run arbitrary PythonQt scripts given on the commandline.

The following shows a simple example on how to integrate PythonQt into your Qt application:

#include "PythonQt.h"
#include <QApplication>
...
int main( int argc, char **argv )
{
// init PythonQt and Python itself
// get a smart pointer to the __main__ module of the Python interpreter
// add a QObject as variable of name "example" to the namespace of the __main__ module
context.addObject("example", &example);
// do something
context.evalScript("print example");
context.evalScript("def multiply(a,b):\n return a*b;\n");
args << 42 << 47;
QVariant result = context.call("multiply", args);
...
PyObject * PythonQtConvertPairToPython(const void *inPair, int metaTypeId)
a smart pointer that stores a PyObject pointer and that handles reference counting automatically
void addObject(const QString &name, QObject *object)
add the given object to the module as a variable with name (it can be removed via clearVariable)
static void init(int flags=IgnoreSiteModule|RedirectStdOut, const QByteArray &pythonQtModuleName=QByteArray())
PythonQtObjectPtr getMainModule()
get the main module of python
static PythonQt * self()
get the singleton instance