Qt

Qt Weekly #20: Completing the offering: QOpenGLWindow and QRasterWindow

Published Thursday November 20th, 2014 | by

Together with the introduction of QOpenGLWidget, Qt 5.4 adds two more classes: QOpenGLWindow and QRasterWindow. Let us now look at the list of native window classes and OpenGL container widgets. The list may look long and confusing at first glance, but it is all quite logical so everything will fall into place quickly:

  • QWindow: Represents a native window in the windowing system. The fundamental window class in Qt 5. Every top-level window, be it widget or Quick based, will have a QWindow under the hood. Can also be used directly, without widgets or Quick, both for OpenGL and software rendered graphics. Has no dependencies to the traditional QWidget stack.
  • QRasterWindow: Convenience wrapper over QWindow for software rendered graphics.
  • QOpenGLWindow: Convenience wrapper over QWindow for OpenGL graphics. Optionally backed by a framebuffer object, but the default behavior (and thus performance) is equivalent to QWindow.
  • QOpenGLWidget: The modern replacement for Qt 4’s QGLWidget. A widget for showing OpenGL rendered content. Can be used like any other QWidget. Backed by a framebuffer object.
  • QQuickWindow: A QWindow subclass for displaying a Qt Quick 2 (QML) scene.
  • QQuickView: Convenience wrapper for QQuickWindow for easy setup of scenes loaded from QML files.
  • QQuickWidget: The equivalent of QQuickView in the QWidget world. Like QOpenGLWidget, it allows embedding a Qt Quick 2 scene into a traditional widget-based user interface. Backed by a framebuffer object.

For completeness sake, it is worth noting two additional APIs:

  • QQuickRenderControl: Allows rendering Qt Quick 2 scenes into framebuffer objects, instead of targeting an on-screen QQuickWindow.
  • QWidget::createWindowContainer(): In Qt 5.1 & 5.2 the only way to embed Qt Quick 2 content (or in fact any QWindow) into a widget-based UI was via this function. With the introduction of QQuickWidget and QOpenGLWidget this approach should be avoided as much as possible. Its usage should be restricted to cases where it is absolutely neccessary to have a real native window embedded into the widget-based interface and the framebuffer object-based, more robust alternatives are not acceptable, or where it is known in advance that the user interface layout is such that the embedded window will not cause issues (for example because the embedded window does not care about input, is not part of complex layouts that often get resized, etc.).

We will now take a look at no. 2 & 3, the QWindow convenience wrappers.

Read more …

13 Comments


Posted in Graphics, OpenGL, QPA, Qt

Qt Creator 3.3 beta released

Published Thursday October 30th, 2014 | by

We are happy to announce that we released Qt Creator 3.3 beta1 today.

editordraganddrop

It comes with enhanced support for splitting editors and additional editor windows. You can now drag & drop editors between splits by dragging the new file type icon, next to the document drop down (see screenshot). Hold the Ctrl key (or Option key on OS X) to open another editor on the same document, instead of moving it. The navigation views (such as Projects and Open Documents) also support dragging files onto splits. Dropping files from the system onto a Qt Creator window now will also open the file in the appropriate split.

Read more …

22 Comments


Posted in Qt, QtCreator, Releases

Qt 5.4 Beta Available

Published Friday October 17th, 2014 | by

I am extremely happy to announce that Qt 5.4 Beta is now available for download. There are a lot of new and interesting things in Qt 5.4 and I will try to summarize the most important highlights in this blog post.

Powerful Web Offering with Qt WebEngine

As the importance of HTML5 has grown we want to provide the best support for HTML5 within the Qt technology offering. The Qt WebEngine, a long-term R&D project based on the Chromium web engine has now reached fully supported version on desktop and embedded platforms.

Qt WebEngine provides a convenient API for both Qt Widgets and Qt Quick for using the Chromium web engine. Besides plain web viewing purposes Qt WebEngine takes full benefit of the whole Qt graphics stack integration allowing you to mix and overlay native Qt controls with web contents and OpenGL shaders. Of course, the fact that Qt provides a full application framework around the web engine makes Qt WebEngine truly an unparalled web engine API.

The new Qt WebChannel module acts as the bridge between QML/C++ and HTML/JavaScript allowing you to expose QObjects into the web context.

For platforms that do not allow distribution of Qt WebEngine as well as use cases where a full-blown web engine is not needed Qt 5.4 will introduce a technology preview of a new module called Qt WebView. It supports embedding the native web engines of the underlying operating system into Qt, and is currently available for Android and iOS. Because of this, Qt WebView also gives a convenient light-weight solution for simple web document integration. Qt WebView will be available with Qt 5.4 final as a separate add-on.

Read more …

72 Comments


Posted in Licensing, Qt, Releases

Qt Creator 3.2.2 released

Published Tuesday October 14th, 2014 | by

We are happy to announce the release of Qt Creator 3.2.2. This version of Qt Creator mainly fixes compatibility issues with Xcode 6 on OS X. See the change log for a complete list of changes. Also, we added the option to use Qt Creator under the LGPL v3. For more details about this addition, please check out the blog post “Adding LGPL v3 to Qt”.

You find the opensource version on the Qt Project download page, and Enterprise packages on the Qt Account Portal. Please post issues in our bug tracker. You can also find us on IRC on #qt-creator on irc.freenode.net, and on the Qt Creator mailing list.

5 Comments


Posted in Qt, QtCreator, Releases

Qt 5.3.2 Released with Qt Creator 3.2.1

Published Tuesday September 16th, 2014 | by

Today we have released Qt 5.3.2, the second patch update to Qt 5.3. In addition to improvements and fixes to Qt functionality it also packs Qt Creator 3.2.1 along with nice additions and patches to Qt Quick Compiler, Qt Quick Enterprise Controls and Qt Purchasing.

Also, with Qt 5.3.2 we are extremely proud of rolling out the new licensing tiers, now including the much-desired Indie Mobile tier. See the blog post about all the new announcements, and visit the new Qt download page for your copy of Qt 5.3.2!

With Qt 5.3.2 we are providing nice set of bug fixes and enhancements thanks to all the feedback and reports we’ve received! Qt 5.3.2 maintains backward and forward compatibility, both source and binary, with Qt 5.3.0 and the latest, 5.3.1, which was released this June. The list of changes can be found from the change files for each module.

The packages of Qt 5.3.2 also include new Qt Creator patch release, Qt Creator 3.2.1. See the blog post about Qt Creator 3.2.1 for details.

We are also releasing nice updates to a bunch of add-on modules for commercial Qt licensees, all installable through your Qt online installer. The new and exciting Qt Quick Compiler gets its first update and we are adding the long-awaited Tumbler control to Qt Quick Enterprise Controls! Here’s the overview of updates to Add-On modules:
Read more …

15 Comments


Posted in Qt, QtCreator, Releases

Qt Creator 3.2.1 released

Published Tuesday September 16th, 2014 | by

We are happy to announce Qt Creator 3.2.1. This release contains a range of bugfixes, including fixes for:

  • a freeze when using the current project or the all projects locator filters via keyboard shortcut
  • a deployment error in the OS X packages which led to the Clang code model plugin not loading
  • a crash when opening the context menu on C++ macro parameters

For a full list of fixes, please see our change log.

You find the opensource version on the Qt Project download page, and Enterprise packages on the Qt Account Portal. Please post issues in our bug tracker. You can also find us on IRC on #qt-creator on irc.freenode.net, and on the Qt Creator mailing list.

5 Comments


Posted in Qt, QtCreator, Releases

Qt Weekly #19: QOpenGLWidget

Published Wednesday September 10th, 2014 | by

After Qt 5.3’s introduction of QQuickWidget, Qt 5.4 adds QOpenGLWidget, the long-awaited replacement for the legacy QGLWidget. This widget retains the familiar initializeGL/resizeGL/paintGL API, while enabling full interoperability with other widgets in complex user interfaces.

Internally QOpenGLWidget is built on the same technology as QQuickWidget. Unlike QGLWidget, it is not a native window and will not turn any siblings or ancestors into native either. This avoids stacking, clipping, focus and performance issues and is expected to behave identically across all supported platforms.

Read more …

16 Comments


Posted in Graphics, OpenGL, Qt

Qt 5.4 Alpha Available

Published Monday September 8th, 2014 | by

Qt 5.4 release process is ongoing and we now have the Qt 5.4 Alpha release available. As always, the Alpha is in source code only. Binary installers will be available in a few weeks with the Beta release. Features of Qt 5.4 are now frozen and in the next months the focus is in finalising and polishing functionality. To give an overview what is coming with Qt 5.4, I’ll summarise the highlights of the Qt 5.4 Alpha release.

Read more …

41 Comments


Posted in Qt, Releases

Adding LGPL v3 to Qt

Published Wednesday August 20th, 2014 | by

20 years ago, Trolltech, the company that created Qt, was founded. One of its founding principles was to release Qt as free software to the open source community. In the early versions, this was limited to Unix/Linux and the X11 windowing system. Over the years, more and more platforms were included into the open source version of Qt.

At the same time, the licenses under which Qt was available evolved. The Qt 1.x source code was still released under a rather restrictive license. With Qt 2, we moved over to the QPL. Some years later, with Qt 4.0, Qt started to embrace the GPL v2, to remove some license conflicts between GPL-based applications and the QPL.

Trolltech was involved in talks with the Free Software Foundation (FSF) when the GPL v3 was created, and we added this license as an optional license for Qt after it was published by the FSF. Finally, in 2009 Nokia added LGPL v2.1 as a licensing option to Qt.

The spirit of all GNU licenses is about a strong copyleft, giving users rather strong access and rights to the source code of application and libraries. It was always meant to protect the users’ freedom to modify the application and underlying libraries and run the modified application.

Read more …

16 Comments


Posted in Community, KDE, News, Qt

Qt Creator 3.2.0 released

Published Tuesday August 19th, 2014 | by

We are happy to announce the Qt Creator 3.2.0 release today. This release adds many smaller and larger features, as well as fixing bugs. A few examples:

  • Block selections in text editors now allow you to do “column editing”, meaning that all selected lines are edited simultaneously (Qt Creator Manual)
  • Context help can now be configured to open in an external window (without disabling Help mode)
  • Support for C99 designated initializers and concatenated strings was added to the C++ code model, as well as improvements to encoding handling and lambda support and many other things
  • More panes are now searchable with Ctrl+F, for example the project tree
  • The QML profiler received many performance and stability improvements again

Enterprise Qt Creator users can now also use the QML profiler to debug their JavaScript memory usage in QML. (This is only available when using Qt 5.4 for the debugged application.)

Also have a look at our change log, for a more complete overview. I also want to thank the more than 50 contributors to this version of Qt Creator.

You find the opensource version on the Qt Project download page, and Enterprise packages on the Qt Account Portal. Please post issues in our bug tracker. You also can find us on IRC on #qt-creator on irc.freenode.net, and on the Qt Creator mailing list.

Note: With Qt Creator 3.2 we drop support for OS X 10.6 (Snow Leopard). The technical reason for this is that Apple does not support any kind of C++11 on that OS version. Of course that does not affect on which platforms you can run your Qt applications on. But it is not possible to run the Qt Creator 3.2 binaries on 10.6, and it also is not possible to compile Qt Creator 3.2 on 10.6 with the tool chains provided by Apple.

43 Comments


Posted in Qt, QtCreator, Releases

  1. Pages:
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. ...
  10. 79