Sign up for the KDAB Newsletter
Stay on top of the latest news, publications, events and more.
Go to Sign-up
Find what you need - explore our website and developer resources
6 October 2020
Scrite is a free and open-source screenplay writing app for Linux, macOS, and Windows Desktops.
Prashanth Udupa has been developing desktop apps using Qt since 2001. As a long-time QtWidgets user, he had discarded QML as a viable desktop UI development tool when it was first announced around 2011. However, having used QML even within desktop apps over the past few years, he was convinced that QML could be used for building large & beautiful desktop apps, even productivity apps!
He discovered a handful of design patterns that one could leverage to build beautiful desktop apps using QML. In his talk, he shares some of these insights, specifically that
We have to break down everything into a model-view problem
We have to have mastery over the meta-object system
We have to get comfortable with creating new QML Attached Properties & Singletons
We need to pay attention to the fact that UI and Business Logic are in separate threads
We can use ScrollView+Flickable+Item+Repeater as a replacement for QGraphicsView
We may need to buckle up and subclass from QQuickItem occasionally
Using Loaders can help keep memory consumption in check
It pays to spend some time learning to learn using GammaRay. It can help bring you back from hell when things go wrong! I am not writing this simply because I am submitting a talk proposal to an event hosted by KDAB.
Lastly, you are likely to become a better software architect of Qt Widgets apps.
Links:
– https://www.prashanthudupa.com
– https://www.scrite.io
– https://www.vcreatelogic.com
Read more on https://www.qtdesktopdays.com/insights-from-building-a-desktop-productivity-app-using-qml/
Stay on top of the latest news, publications, events and more.
Go to Sign-up
Upgrade your applications from Qt 5 to Qt 6 with KDAB’s migration services. Get a free migration assessment and join a hands-on workshop to prepare your team for a successful transition!
Learn more