Difference between revisions of "CSC220 C++Qt Crash Course"
(→What is Qt?) |
(→What is Qt?) |
||
Line 20: | Line 20: | ||
<br /> | <br /> | ||
− | * | + | * <font size="+1">Qt is a cross-platform application framework </font>that is widely used for developing application software with graphical user interface (GUI) (in which case Qt is referred to as a widget toolkit when used as such) |
− | * Qt uses standard C++ but makes extensive use of a special code generator (called the Meta Object Compiler, or moc) | + | * <font size="+1">Qt uses standard C++</font> but makes extensive use of a special code generator (called the Meta Object Compiler, or moc) |
− | * Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software | + | * <font size="+1">Qt can also be used in several other programming languages</font> via language bindings. |
+ | |||
+ | * <font size="+1">It runs on all major platforms</font> | ||
+ | |||
+ | * <font size="+1">Non-GUI features include</font> | ||
+ | ** <font size="+1">SQL database access, </font> | ||
+ | ** <font size="+1">XML parsing, </font> | ||
+ | ** <font size="+1">thread management, </font> | ||
+ | ** <font size="+1">network support, </font> | ||
+ | ** <font size="+1">and a unified cross-platform API for file handling.</font> | ||
+ | |||
+ | * Distributed under the terms of the <font size="+1">GNU Lesser General Public License</font> (among others), <font size="+1">Qt is free and open source software</font> | ||
=Platforms= | =Platforms= |
Revision as of 12:39, 2 December 2010
--D. Thiebaut 16:25, 2 December 2010 (UTC)
This is Part 2 of a 2-lecture/lab introduction to C++ and GUI programming with Qt. Part 1 can be found here.
Main References
- Wikipedia Page on Qt
What is Qt?
- Qt is a cross-platform application framework that is widely used for developing application software with graphical user interface (GUI) (in which case Qt is referred to as a widget toolkit when used as such)
- Qt uses standard C++ but makes extensive use of a special code generator (called the Meta Object Compiler, or moc)
- Qt can also be used in several other programming languages via language bindings.
- It runs on all major platforms
- Non-GUI features include
- SQL database access,
- XML parsing,
- thread management,
- network support,
- and a unified cross-platform API for file handling.
- Distributed under the terms of the GNU Lesser General Public License (among others), Qt is free and open source software
Platforms
Standard Platforms
Qt is released by Nokia on the following platforms:
- Linux/X11 – Qt for X Window System (GNU/Linux, HP-UX, Solaris, AIX, etc.)
- Mac OS X – Qt for Apple Mac OS X. Support for applications on top of Cocoa APIs
- Windows – Qt for Microsoft Windows
- Embedded Linux – Qt for embedded platforms (PDA, Smartphone, etc.)
- Windows CE / Mobile – Qt for Windows CE
- Symbian – Qt for the Symbian platform. Qt is to replace Nokia's Avkon as the supported UI SDK for the development of Symbian applications. The Qt for Symbian development group has many quality-controlled articles available.
- Maemo – Qt for Maemo, merged with Moblin to MeeGo. There are many applications already written for Maemo based on the previous Internet Tablets. The Nokia N900 also supports Qt. The Forum Nokia Wiki has quality-controlled articles that support Qt development. The Maemo operating system has a development group on the Forum Nokia Wiki at Forum Nokia Wiki Maemo.
External ports
Since Nokia opened the Qt source code to the community on Gitorious various ports have been appearing. Here are some of them:
- Qt for OpenSolaris – Qt for OpenSolaris
- Qt for Haiku – Qt for Haiku OS
- Qt for OS/2 – Qt for OS/2 eCS platform.
- Qt-iPhone – Experimental development of Qt for the iPhone.
- Android-Lighthouse – Experimental development of Qt for Android.
- Qt for webOS – Experimental development of Qt for webOS on Palm Pre.
- Qt for Amazon Kindle DX – Experimental development of Qt for Amazon Kindle DX.
- Qt for Wayland – Experimental development of Qt for Wayland display server, could be used in Intel's MeeGo Touch.