Qt Modular Class Library
The Foundation: Qt Core Module
The Qt Core module forms the foundation of all Qt-based applications with core non-graphical classes used by other modules.
Key Functions
- File IO, event and object handling
- Multi-threading and concurrency
- Plugins, setting management
- Signals and Slots inter-object communications mechanism
Benefits
- Reduce development time and cost by leveraging a complete set of application building blocks
- Develop portable code from the ground up with cross-platform functionality
Back to the top
Custom, Dynamic User Interfaces: Qt Declarative
The Qt Declarative module provides a powerful set of classes for creating highly dynamic, custom user interfaces for touch-enabled mobile and embedded devices. Qt Declarative is a key component of the Qt Quick user interface creation kit, which can be used by developers familiar with CSS and JavaScript.
Key Functions
- QML Elements: A set of UI and behavioural building blocks
- Declarative programming approach
- QtDeclarativeView widget for displaying a Qt Declarative user interface
Benefits
- Rapidly create highly customized, advanced user interfaces
- Extend applications built using the QML language with C++
- Utilize a declarative approach to define the look and behavior of a UI
Back to the top
Blend Web and Rich Content and Services: Qt WebKit Integration
The Qt WebKit Integration is an integration of WebKit with Qt. It provides an HTML browser engine that makes it easy to embed web content into native applications, and to enhance web content with native controls.
Back to the top
Build Advanced Graphical User Interfaces: GUI Module
The Qt GUI module contains the functionality needed to develop advanced graphical user interface applications. Qt uses the native graphics API of each platform it supports, taking full advantage of system resources.
You can also create customized UIs with a unique look and feel with the Qt Quick UI creation kit.
Key Functions
- Complete set of customizable widgets
- 2D graphics canvas and OpenGL® integration
- Powerful font and layout engine
- Style engine and widget stylesheets
- Anti-aliasing, vector deformation, and SVG support
- Advanced graphics effects
- Support for ARGB top-level widgets
Benefits
- Build user interfaces in less lines of code with complete set of building blocks
- Complete control over the look and feel of your applications and devices
- Customize your UI with only a few lines of CSS code
- Deliver a rich user experience
Back to the top
ECMA Standard Scripting Engine: Qt Script Module
Qt includes a fully-integrated, ECMA standard scripting engine based on a JavaScriptCore back-end. Qt Script provides QObject integration, brings Qt’s Signals & Slots mechanism to scripting, and allows integration between C++ and scripting.
Key Functions
- ECMA standard scripting language (ECMAScript 3, the basis of JavaScript 1.5)
- Access to Qt's signals and slots mechanism for simplified inter-object communication
- Integrated QtScript Debugger
Benefits
- Script-enable your applications with a minimum of development effort
- Provide error reporting for scripts, and to let users track down bugs in their own scripts
Back to the top
Build Connected Applications: Networking Module
The Qt Networking module provides functionality to make network programming easier and cross-platform. Qt provides complete client and server socket abstraction, and implements common protocols such as HTTP, FTP and DNS, including support for asynchronous HTTP 1.1.
Key Functions
- Complete client and server socket abstraction
- High-level classes such as QHttp and QFtp that implement specific application-level protocols
- Lower-level classes such as QTcpSocket, QTcpServer, and QUdpSocket
- Support for HTTP, FTP, DNS, asynchronous HTTP 1.1
Benefits
- Makes network programming easier and cross-platform
Back to the top
Integrate with All Major Databases: Database Module
The QtSql module helps you provide seamless database integration to your Qt applications. Qt supports all major database drivers, and lets you send SQL to the database server, or have the Qt SQL classes generate SQL queries automatically.
Key Functions
- Driver Layer: Provides support for ODBC, MySQL, PSQL, SQLite, ibase, Oracle, Sybase, DB2
- API Layer: Provides access to specific databases
- UI Layer: Link data from a database to data-aware widgets
- Work with Qt’s Model/View programming model
Benefits
- Easily integrate data from databases into your Qt applications
- Present data in a variety of views
- Separate the data from the view, giving more flexibility for presenting data to the user in an intuitive way
Back to the top
Reduce Application Testing Time: Unit Testing Framework
Qt provides all the functionality commonly found in unit testing frameworks as well as extensions for testing graphical user interfaces.
Key Functions
- Lightweight, self-contained testing framework
- Functionality for mouse and keyboard simulation
- Integrates with Visual Studio and KDevelop IDEs
- Custom types can easily be added to the test data and test output
Benefits
- Reduce the time and cost needed to write and perform tests
- Rapidly run repeatable tests on your Qt applications
- Deliver higher quality applications and devices faster
Back to the top
Put XML to Work in Your Application: XML Module
The QtXml module provides a stream reader and writer for XML documents, C++ implementations of SAX and DOM and an XQuery & XPath engine. XQuery is a simple SQL-like query language for traversing XML documents to select and aggregate XML elements of interest and transform them for output as XML or in some other format. XQuery simplifies query tasks by eliminating the need for large amounts of procedural programming in C++.
Key Functions
- Stream reader and writer for XML documents
- C++ implementations of the SAX and DOM APIs
- Classes for higher level querying and manipulation of XML data using the XQuery query language
- Support for the XSLT transformation language for XML documents
- Support for XML Schema validation
Benefits
- Perform advanced XML queries with only a few lines of code
- Easily query, extract and transform XML data in your application
Back to the top
Advanced 3D Graphics: OpenGL Module
The QtOpenGL module offers classes that make it easy to incorporate 3D graphics with OpenGL and OpenGL ES in Qt applications. OpenGL is the standard graphics library for building cross-platform, hardware-accelerated, high performance visualization applications. While OpenGL is ideal for 3D visualization, it offers little support for creating application user interfaces.
Key Functions
- OpenGL widget to render graphics with the OpenGL API in Qt applications
- Integration with OpenGL ES on Linux/X11 and Windows CE
Benefits
- Easily include 3D graphics in your applications
- Take advantage of system resources for maximum graphics performance
- Use Qt’s rich GUI functionality to build advanced UIs for 3D applications
Back to the top
Take Advantage of Multicore Hardware: Multithreading Features
Qt’s cross-platform multi-threading functionality simplifies parallel programming, while added concurrency features make it easier to take advantage of multi-core architecture.
Key Functions
- Classes for thread, data and object management
- Type-safe inter-thread communication using Qt’s Signals and Slots
- High-level Concurrency APIs to abstract low-level threading primitives
Benefits
- Simplify multi-threaded programming
- Take advantage of multi-core architecture for maximum runtime performance
- Write multi-threaded programs without using low-level threading primitives
- Automaticallly adjust the number of threads used according to the number of processor cores available
Back to the top
Powerful 2D Graphics Canvas: Qt Graphics View
Qt Graphics View provides a surface for managing and interacting with a large number of custom-made 2D graphical items, and a view widget for visualizing the items, with support for zooming and rotation. Graphics View uses a BSP (Binary Space Partitioning) tree to provide very fast item discovery, and as a result of this, it can visualize large scenes in real-time, even with millions of items.
Key Functions
- Zooming, rotation, perspective transformation and animation
- Drag-and-drop and printing support
- Embed and interact with widgets in the graphics scene
- Accelerated rendering back-ends, including OpenGL, OpenGL ES, and OpenVG*
Benefits
- Build advanced graphic effects faster
- Visualize millions of graphical items with high performance
- Allow users to interact with your application in new ways
*Symbian platform only.
Back to the top