2 min read

Storyboard and Qt integration

Storyboard was created to be a portable and platform agnostic solution.  This allows us to give the same experience across Linux, QNX, Green Hills and so on.  We often get asked how we deal with or compete with Qt.  We see Qt as a platform abstraction layer like all of our other systems, it just happens to have an optional graphics component.


Recently we have been looking into how Storyboard could integrate into or communicate with a Qt based application.  Storyboard gives UI developers and designers an extremely fast and efficient way to build modern HMI solutions (you can see an example here of how Storyboard differs from QML for UI Development).  This solution is cross platform and extremely small and efficient.  Users of Qt are also generally building cross platform applications and using QtGui may not be an option due to memory and performance concerns.  Storyboard can be used in conjunction with Qt in order to solve these problems and still give the developer a cross platform solution.

One option to integrate Storyboard and Qt is to run Storyboard as a Qt widget.  This allows Storyboard content to be displayed and interacted with onscreen with any other Qt based widget elements.

Another option allows users to remove the QtGui component and use Storyboard for the entire UI.  This will also have the benefit of saving memory and increased performance.  In this option Storyboard is run as the user interface and a non-GUI Qt application is written to preform backend logic.  The Qt application can then communicate with Storyboard using a Qt/Storyboard IO bridge allowing data and events to seamlessly be transfered between the 2 environments.

As can be seen Storyboard and Qt are not a mutually exclusive solution, they can work together.  I think Qt users will find that Storyboard gives them a rich visual design tool and will help speed their designs to market while still maintaining a cross platform application.

Originally published: Jan 24, 2014 10:23:43 AM, updated 03/23/20

Brian Edmond
Written by Brian Edmond

Brian co-founded Crank Software in 2007, after leading the graphics development group at QNX Software Systems where he spent the majority of his career working and consulting on UI design, embedded software architecture, and web browser technology. As he watched embedded graphics teams struggle, he developed an acute understanding of the common workflow problem between the designers and engineers. Brian built Crank Storyboard out of this need to help these teams collaborate more effectively, optimize for exceptional performance, and get their award-winning touch screens to market, close to 50% faster. A triathlon and mountain biking enthusiast (explaining the name Crank Software), Brian is a regular Ironman and cyclocross participant, and can often be found biking the trails with his co-founders behind the Crank offices in Kanata, Ottawa. Brian holds an Electrical Engineering degree from the Technical University of Nova Scotia.

Post a Comment

New call-to-action