KDAB è lieta di annunciare una data italiana per il corso Programmazione Qt/QML per sistemi embedded, che si svolgerà a Milano dal 12 al 14 settembre 2017. Qt è un application framework moderno e ricco di funzionalità, utilizzato per realizzare applicazioni cross-platform per sistemi embedded, mobile e desktop. Qt è usato da oltre 800.000 sviluppatori […]
Author Archives: Giuseppe D'Angelo
KDAB trainings at CppCon 2017
Registrations for CppCon 2017 have just opened! CppCon is the annual conference for the C++ community: five days packed with amazing talks, inspiring keynotes, panel discussions, hallway chats, fun evening events and much more. CppCon is a project of the Standard C++ Foundation, a not-for-profit organization whose purpose is to support the C++ software developer […]
Disabling narrowing conversions in signal/slot connections
A small new feature that I have added to Qt 5.8 is the possibility of disabling narrowing conversions in the new-style QObject::connect statement. In this short blog post I would like to share with you why I thought this was useful and therefore implemented it. The problem Since Qt 5.0, the new-style, PMF-based (pointer to […]
What do I do if a slot is not invoked? A practical checklist to debug your signal/slot connections
All Qt developers have asked themselves at least once in their careers: “why isn’t my slot invoked?” (I’ve asked myself that question many, many times). There are a number of reasons why a connection may fail to be properly set up, and ultimately cause our slot not to be invoked. This blog post is a practical […]
New in Qt 5.8: meta-object support for namespaces Using namespaces in Qt for enumeration introspection
A small new feature that was added to Qt 5.8 is the ability for moc (Qt’s meta-object compiler) to extract meta-object information at the namespace level. This means, for instance, that you can have introspection support for enumerations defined in a namespace (not just in QObject subclasses, or classes tagged with Q_GADGET), and use such […]
KDAB contributions to Qt 5.8
Qt 5.8 has just been released! Another great release of Qt, made possible by thousands of commits by over a hundred different contributors: And here we are again, with the usual showcase of the most outstanding contributions to Qt 5.8 developed by KDAB engineers. In no particular order: Qt 3D Qt 3D continues to receive […]
Integrating OpenGL with Qt Quick 2 applications (part 2) Implementing overlays and underlays with the Qt Quick 2 renderer
In the last blog post we gave a very high level introduction to the Qt Quick 2 renderer. We also showed how various signals are emitted by the renderer during the synchronization and rendering steps. In this blog post we’re going to discuss those signals and show how they can be used to implement overlays […]
Un-deprecate your Qt project
The last post from my colleague Marc Mutz about deprecating Q_FOREACH caused quite an uproar amongst the Qt developers who follow this blog. I personally feel that this was caused fundamentally by a perceived threat: there is a cost associated to porting away a codebase from a well-known construct (Q_FOREACH) to a new and yet-undiscovered […]
Fixing bugs via lateral thinking Lessons learned by digging into obscure QML bugs
For today’s blog I would like to share with you the little adventure I had when fixing a very strange bug in Qt. Pop quiz Don’t think about this too much, just guess: what does this QML snippet print? There are no JavaScript semantic tricks involved; and using either == or === does not change […]
Integrating OpenGL with Qt Quick 2 applications Part 1
This talk will introduce you to various effective strategies of drawing raw OpenGL content inside a Qt Quick 2 scene. After a brief introduction to how the Qt Quick 2 renderer works, we will see the APIs in Qt 5.6 that allow us to integrate existing OpenGL code and QML. One of the foundation pillars […]