- 1 Programming Language Support & Language Bindings
- 2 C++ Development with Qt
- 3 QML Development with Qt Quick
- 4 These are third party language bindings for Qt
- 4.1 "PySide: Python for Qt":http://www.pyside.org (LGPL)
- 4.2 "PyQt":http://www.riverbankcomputing.com/news (GPL 3/commercial)
- 4.3 "Qt for Java":http://qt.gitorious.org/qt-jambi (QtJambi, Windows/Mac/Linux)
- 4.4 "Qt for Ruby":http://techbase.kde.org/Development/Languages/Ruby (QtRuby)
- 4.5 "Qt for BASIC":http://www.kbasic.com/ (KBasic)
- 4.6 "Qt for Ada 2005":http://www.qtada.com/ (QtAda)
- 4.7 Perl bindings
- 4.8 "Qt for D":http://www.dsource.org/projects/qtd (QtD)
- 4.9 "Qt for Pascal":http://wiki.lazarus.freepascal.org/Qt4_binding (FPC Qt4 Binding)
- 4.10 "Qt for Lua":http://www.nongnu.org/libqtlua/ (QtLua)
- 4.11 "Qt for Haskell":http://qthaskell.berlios.de/ (qtHaskell)
- 4.12 "Qt Quick for Haskell":http://www.gekkou.co.uk/software/hsqml/ (HsQML)
- 4.13 "Qt Quick for OCaml":http://kakadu.github.io/lablqt/ (lablqt)
- 4.14 "Qt for PHP":http://sourceforge.net/projects/php-qt/ (PHP-Qt)
- 4.15 "Qt for Chicken Scheme":http://wiki.call-cc.org/eggref/4/qt (Qt 4 egg)
- 5 References
Programming Language Support & Language Bindings
C++ Development with Qt
Qt provides an intuitive C++ class library with a rich set of application build blocks for C++ development. Qt goes beyond C++ in the areas of inter-object communication and flexibility for advanced GUI development. Qt adds the following features to C+:
- Powerful mechanism for inter-object communication called "signals and slots":https://doc.qt.io/qt-5/signalsandslots.html
- Queryable and designable "object properties ":https://doc.qt.io/qt-5/properties.html#qt-s-property-system
- Powerful "events and events filters ":https://doc.qt.io/qt-5/eventsandfilters.html
- Contextual "string translation for internationalization ":https://doc.qt.io/qt-5/i18n.html
- Sophisticated interval driven "timers":https://doc.qt.io/qt-5/timers.html that make it possible to elegantly integrate many tasks in an event-driven GUI
- Hierarchical and queryable "object trees":https://doc.qt.io/qt-5/objecttrees.html that organize object ownership in a natural way
- "Guarded pointers":https://doc.qt.io/qt-5/qpointer.html that are automatically set to 0 when the referenced object is destroyed, unlike normal C++ pointers which become dangling pointers when their objects are destroyed
- A "dynamic cast ":https://doc.qt.io/qt-5/metaobjects.html works across library boundaries.
QML Development with Qt Quick
- Optimized for touch-based, animated mobile UIs
- Includes a set of graphical and behavioral building blocks: "QML Elements ":http://doc.qt.nokia.com/4.7/qdeclarativeelements.html
- No C++ knowledge required for UI creation, but can be extended with C++
"Find out more about Qt Quick":http://doc.qt.nokia.com/4.7/qdeclarativeintroduction.html
These are third party language bindings for Qt
"PySide: Python for Qt":http://www.pyside.org (LGPL)
- Documentation (Guides and Tutorials)
- "Mailing list":http://lists.qt-project.org/mailman/listinfo/pyside
- "Source code":http://qt.gitorious.org/pyside
- "Bug Tracker":https://bugreports.qt.io/browse/PYSIDE
"PyQt":http://www.riverbankcomputing.com/news (GPL 3/commercial)
- "Reference Guide (PyQt4)":http://pyqt.sourceforge.net/Docs/PyQt4/
- "API Documentation (PyQt4)":http://pyqt.sourceforge.net/Docs/PyQt4/classes.html
- "Reference Guide (PyQt5)":http://pyqt.sourceforge.net/Docs/PyQt5/index.html
- "API Documentation (PyQt5)":http://pyqt.sourceforge.net/Docs/PyQt5/class_reference.html
"Qt for Java":http://qt.gitorious.org/qt-jambi (QtJambi, Windows/Mac/Linux)
Qt Jambi – Qt bindings to the Java programming language – is maintained by the community. You can find more information from http://qt-jambi.org.
- "Jambi Community":http://qt-jambi.org/
- "Old tutorial":http://doc.qt.digia.com/qtjambi-4.4/html/com/trolltech/qt/qtjambi-tutorial.html
- "Old API Javadoc":http://doc.qt.digia.com/qtjambi-4.4/html/index.html
"Qt for Ruby":http://techbase.kde.org/Development/Languages/Ruby (QtRuby)
The project provides complete bindings to both the KDE API and the Qt APIs. The Korundum package includes both a QtRuby Qt-only binding along with the full combined Qt/KDE one. The QtRuby package contains just Qt bindings with no dependencies on KDE.
- "Book":http://www.pragmaticprogrammer.com/titles/ctrubyqt/ (for Qt 3)
"Qt for BASIC":http://www.kbasic.com/ (KBasic)
KBasic uses Qt as its toolkit to provide cross-platform abilities. KBasic is a further BASIC dialect and is related to VB.NET™, Visual Basic®, Visual Basic for Application® and Java™. It combines several features and includes built-in backward support for QBasic®.
"Qt for Ada 2005":http://www.qtada.com/ (QtAda)
QtAda is an Ada2005 language prividing bindings to the Qt libraries and a set of useful tools. QtAda supports Qt version 4.6 and later.
"official PerlQt and PerlKDE":https://projects.kde.org/projects/kde/kdebindings/perl
This is what the Linux distros ship. Expect updates for Qt5 in 2013. Subscribe to the "kde-bindings list":http://lists.kde.org/?l=kde-bindings for news.
This repository used to be at "Google code":http://code.google.com/p/perlqt4/, then moved to KDE in 2012. Some outdated code snapshots are on "CPAN":http://search.cpan.org/~cburel/; prefer the KDE repository.
"Vadim Likhota bindings":http://search.cpan.org/~vadiml/
One-man effort, last updated 2008. "opendesktop.org mirror":http://www.opendesktop.org/content/show.php/?action=content&content=69748
"Dongxu Ma bindings":http://search.cpan.org/~dongxu/
One-man effort, last update 2012. "GitHub mirror":https://github.com/dxma/cpan/wiki
Outdated, Qt3 only.
Outdated, Qt2 and Qt1 only.
=== "Qt for C#":http://techbase.kde.org/Development/Languages/QtSharp (Qyoto) Qyoto makes it possible to develop Qt and KDE applications using C#, or any other .NET language. Qyoto uses SMOKE, and offers access to almost all Qt and KDE classes. ===
"Qt for D":http://www.dsource.org/projects/qtd (QtD)
QtD is a binding of the Qt framework to the "D programming language version 2.":http://www.digitalmars.com/d/2.0/index.html
"Qt for Pascal":http://wiki.lazarus.freepascal.org/Qt4_binding (FPC Qt4 Binding)
The Free Pascal Qt4 binding allows Free Pascal to interface with the C++ Library Qt. This binding does not cover the whole Qt4 framework but only the classes needed by the Cross Platform Lazarus IDE to use Qt as a Widget set. More "info":http://users.telenet.be/Jan.Van.hijfte/qtforfpc/fpcqt4.html
"Qt for Lua":http://www.nongnu.org/libqtlua/ (QtLua)
The QtLua library are trying to make Qt4 applications scriptable using the Lua scripting language as an alternative to the QtScript module.
"Qt for Haskell":http://qthaskell.berlios.de/ (qtHaskell)
"Qt Quick for Haskell":http://www.gekkou.co.uk/software/hsqml/ (HsQML)
"Qt Quick for OCaml":http://kakadu.github.io/lablqt/ (lablqt)
"Qt for PHP":http://sourceforge.net/projects/php-qt/ (PHP-Qt)
"Qt for Chicken Scheme":http://wiki.call-cc.org/eggref/4/qt (Qt 4 egg)
An incomplete binding which supports loading UI files, binding to GUIs thus instantiated, and networking and dbus functionality.
Pages in category "LanguageBindings"
The following 16 pages are in this category, out of 16 total.