Please nominate your Qt Champions for 2021!

Best way for cross-platform interactive graphical/canvas widget?

  • Hi there!

    I need to implement an interactive graphical timeline that looks something like the attached concept shots. It should be hardware accelerated across platforms.

    What's the best way to do this? QWidget? QGraphicsView? Quick? I have extensive experience with QWidget, decent experience with QGraphicsView, and no experience with Quick.


    3_1523158459899_timeline_trend-graph.jpg 2_1523158459899_graphic-design-timeline.jpg 1_1523158459899_36151671-timeline-design-template-with-icons-and-graphics-idea-to-display-information-steps-for-industrial-fa.jpg 0_1523158459898_1604.m00.i121.n067.f.c06.157268597-gtp-timeline-infographic-with-line-charts-.jpg

  • Lifetime Qt Champion

    I think a QGraphicsView custom item would work super.
    QML is also very suited for this.
    However, if you are not using QML already and timeline is to be used in Widget
    application, i would go with QGraphicsFramework - as the amount of boilerplate for mixing
    QML and c++ is not that trivial. (for all the timeline data)

    But could also be a good excuse to learn QML ;)

  • @mrjj Thanks for your response. How is the painting performance on QWidget compare to doing something similar in QtQuick?

  • Lifetime Qt Champion

    QGraphicsFramework can be openGL accelerated and in that regards
    be as fast as QtQuick.

    A QPainter implementation might be slow on hi resolutions displays but
    would also run fine on desktop class pc.

Log in to reply