Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

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.

    Thanks!

    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

    Hi
    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

    @patrickkidd
    Hi
    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