CSC220 C++Qt Crash Course

From dftwiki3
Revision as of 12:43, 2 December 2010 by Thiebaut (talk | contribs) (Standard Platforms)
Jump to: navigation, search

--D. Thiebaut 16:25, 2 December 2010 (UTC)


Page under construction!
UnderConstruction.jpg


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

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.


  • GNU Lesser General Public License, Qt is free and open source

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.


  • Maemo – Qt for Maemo, merged with Moblin to MeeGo.


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.