In December 2019 the Qt Marketplace was launched. Since it is relatively new (as of January 2021), If you haven’t yet tried the wonderful world of Qt plugins, you’re not alone and this post is for you! It discusses top Qt Plugins that will add different unique flavors to your Qt experience. Sure, Incredibuild is lucky enough to be included (listed in the list of most popular Qt plugins), but we’re not the only ones. There are other plugins on that list that are worth mentioning and examining. let us introduce you to them and hopefully, you’ll try them out and judge for yourself. Let’s dive right in!
We’re all about acceleration so this plugin is close to our heart. Felgo accelerates the Qt development experience (except for Qt compilations: that’s on us), offering over 200 APIs, tools, and Cloud Services (ready components to speed up the development process, such as responsive layout, push notifications, UI controls, analytics/telemetry components, and many others). It is multi-platform (macOS, Windows, Linux, Android, and iOS) and it works with Java and C++ and known for assisting in creating mobile apps and games FAST! As for the ease of use, it is considered especially easy to use and simple. A special bonus is the possibility to incorporate 3D objects as well as some great features such as AR (Augmented Reality), virtual reality, and machine learning.
Image source: Felgo
Among the additions offered by Felgo you can find:
- Code Refactoring
- Qt Based IED
- Code reloading for testing purposes
- CI/CD platform or automated builds
GammaRay™ (by KDAB)
GammaRay is an introspection tool for Qt applications that relies on the QObject introspection mechanism and offers the ability to observe and manipulate your application at runtime (also works remotely on embedded object). It is especially handy in complex highly visual Qt frameworks (model/view, state machines, scene graphs) as it allows a high-level view of behavior and data structures as opposed to the instruction-level debugger which is much more low level. Basically, it provides a way to visualize the application behavior.
Squish GUI Automation Tool (by froglogic)
Squish is a cutting-edge cross-platform (desktop, mobile, web application, or embedded system), cross-device (remote- and multi-application testing) GUI automated testing tool for regression and system tests with a dedicated version for Qt-based applications. It supports all Qt widgets, QML, Qt Quick controls, embedded Qt Webkit and Qt WebEngine. The icing on the cake is that Squish supports HMI tests on embedded devices.
Among its features:
- Test script recording and playback
- Object identification and verifications
- IDE for script authoring, refactoring, and debugging
- Support for BDD (Behavior Driven Development)
- A wide range of popular script languages for test scripting
- Integrations into Test Management and CI-Systems
- Image based testing and AI-driven Optical Character Recognition (OCR) support
Squish Coco by froglogic
Coco is a multi-language (C, C++, SystemC, C#, Tcl and QML code), cross-platform and cross-compiler code coverage analysis tool (measures coverage of statements, branches and conditions). It basically checks, without making any change, how much of your application source code is covered in your testing (for example, unit testing, interactive testing, and acceptance testing), and provides you with data on which additional tests need to be written (quite handy isn’t it?), how the test coverage changed over time and more.
Among Coco’s features you may find:
- Reporting and analytics in different formats such as text, HTML, XML, JUnit, Cobertura
- Integrates with various build, test and continuous integration frameworks (like Jenkins)
- Report (and record) tests execution times (that works well with Incredibuild that can reduce testing times)
- Function Profiler – code performance
- Tool Qualification Kit – to check the tests are qualified for security reasons
In addition, Cocos goes well with froglogic’s Squish GUI Automation Tool for GUI tests and allows to test the code coverage
If you’re looking for a chart component, look no further. Qt Charts, which relies on the Qt Graphics View Framework, offers all sorts of charts for your UI (Line chart, Spline chart, Area chart, Scatter chart, of course – Pie chart, the good old Bar chart, Polar chart, and Candlestick chart), providing you with amazing possibilities. In addition, the charts can be dynamic and interactive (including zooming and gestures capabilities).
Image source: Qt Marketplace
The charts are divided into themes, as follows:
- Light theme, (the default theme)
- Cerulean blue theme
- Dark theme
- Sand brown theme
- Natural color system (NCS) blue theme
- High contrast theme
- Icy blue theme
- Qt theme
Amongst Qt plugins, this is our favorite (aren’t you surprised?).
Incredibuild is a plug-and-play solution that turbocharges Qt development and empowers Qt users to dramatically reduce their Qt applications compilation time and testing times. Incredibuild uses idle CPU power in the user’s network or public cloud to turn each computer into a supercomputer with hundreds and even thousands of cores. Incredibuild for Qt creator provides amazing results: 8x faster builds, 80% shorter release cycles and 4x the number of iterations. The icing on the cake is the Virtualized Distributed Processing™ technology that allows using the same code, processes and tools while turbocharging development.
What’s happening on the other side?
If you’re a publisher that wants to issue a new Qt plugin (congratulations!) then by all means visit the helpful Qt online resources about creating Qt plugins and how to do so successfully. Don’t worry, it’s quite easy and I’m sure you’ll catch on.
Don’t be shy, try it!
I have to admit I’m quite curious to see what will happen to the Qt plugins in 10 years’ time. If I have to speculate, I think it will boom. But speculations aside… In this post, I tried providing you with useful plugins that allow you to explore the Qt world like never before. Now it’s on you. To find out if a certain plugin is a good fit, try it out and see for yourself. And, of course, if you have more plugins to contribute, you’re more than welcome to contact us at marketing at incredibuild.com.