What is new in Qt 5.3

New Features

  • Qt Core:
    • Logging: You can now configure logging rules (i.e. which message types for which categories are printed) on the filesystem, in QtProject/qtlogging.ini. You can also using qCDebug and friends in a printf-style way, in addition to the streaming operator syntax.
  • Qt GUI:
    • Qt’s iOS plugin now implements support for input methods, spell checking and word completion.
    • Embedded Linux platform specifics (plugins like eglfs and linuxfb) are now documented.
    • New classes QPageSize and QPageLayout to manage PDF and printed document page sizes and layout.
    • QPdfWriter uses QPageSize and QPageLayout, can now set page orientation and paint resolution.
    • EGL support is now able to cope with OpenGL ES 3.0 and desktop OpenGL versions
  • Qt Print Support
    • New QPA class QPlatformPrintDevice to abstract platform print device hardware, new implementations for Windows, Mac and Linux.
    • QPrinterInfo provides more details on the print device hardware
    • QPrinter uses QPageSize and QPageLayout to improve page layout handling
    • QPrinter has had the behaviour of most functions standardised across all platforms (as detailed below)
    • Mac can now have each painted page with a different orientation, and can set Collate Copies and Document Name.
    • Mac and Windows now support setting Document Creator and Duplex Mode
    • Mac and Linux now support using Windows Page ID (DMPAPER values)
    • Linux now requires CUPS 1.4 (RHEL 5 no longer supported)
  • Qt Quick:
    • Introduced QQuickWidget for easy and flexible integration of Quick views with QWidget-based UIs.
    • MultiPointTouchArea will either handle the mouse as a single touch point, or allow mouse events to pass through if mouseEnabled is false
  • Qt Quick Controls:
    • The Calendar control was added. Calendar allows selection of dates from a grid of days, similar to QCalendarWidget.
    • MenuStyle and MenuBarStyle introduced.
  • Qt Quick Dialogs:
    • The QML implementations are now built with QtQuick.Controls (and therefore the source is moved from qtdeclarative.git to qtquickcontrols.git), which enables adding some features such as folder shortcuts (both standard locations and bookmarked locations), and comboboxes for file filters and writing systems.
    • There is a new Dialog type which provides only the standard buttons, so that you can construct dialogs with arbitrary contents, such as various types of input dialogs and pickers.
  • Qt Network:
    • Support for the SPDY protocol (version 3.0) was added.
  • XCB/X11 platform plugin:
    • Support for XInput2 smooth scrolling. The plugin now listens for XInput2 scrolling events which means it will respond to high resolution smooth scrolling events on devices where they are supported. Currently this is mainly touch pads.
  • iOS platform plugin:
    • Support for input methods added.
    • Support for word completion and spell checking added.
    • Support for QClipboard added.
    • “Hide keyboard” gesture added.
  • Qt Multimedia:
    • A new QCameraInfo class was added. It allows to get static information about cameras such as physical position and sensor orientation. In addition, the class provides a way to list available cameras on the system and deprecates QCamera::availableDevices().
  • Qt WebKit:
    • Support for HTML5 Video Track. Subtitles and captions for HTML5 video.
    • Support for Indexed DB API. See http://www.w3.org/TR/IndexedDB/
    • Improved support for Mac HiDPI mode
  • Qt Positioning:
    • The module has been ported to Android and iOS. Android supports position and satellite updates while iOS supports position updates only.
  • Qt Bluetooth:
    • The module has been ported to Android.
  • Qt QML:
    • Profiling support for V4, using the same event types as the QML profiler.
    • Profile or debug multiple QML engines in one application with the new EngineControl debug service.

New Modules

  • Enginio A Backend-as-a-Service solution to ease the backend development for connected and data-driven applications.
  • Qt WebSockets An add-on module that implements the WebSocket standard (RFC 6455 – http://tools.ietf.org/html/rfc6455 ).

Support for New Platforms

  • Windows Runtime platforms: Windows 8/RT (Modern UI), Windows Phone 8
    • Documentation is available here [qt-project.org].
    • A “getting started” tutorial is available here [blog.qt.digia.com].

Qt Creator 3.1

  • Editors
    • Better support of multiple editors/windows
  • C++:
    • Experimental new Clang based code model as opt-in
  • iOS:
    • Better support of multiple devices
  • QML:
    • Better Qbs support
    • Better defaulting/import resolving
    • Javascript profiler frontend (V4 only), integrated in QML profiler “events” and “timeline” views.
  • Debugger:
    • Improved LLDB support
    • Removed support for GDB builds without Python
  • Devices:
    • SSH parameters now available as QtC variables, e.g. for use in custom run configs

Installation

  • New reference installers
    • Qt for WinRT
    • Qt for Windows Phone
  • New target binaries
    • Qt for MSVC 2013 (32 & 64 bit OpenGL and Angle)

Deprecated

  • Mac OS 10.6 support is deprecated and scheduled for removal in Qt 5.4.

Categories: