Dataflow programming GUI
-
wrote on 20 Jul 2012, 14:26 last edited by
Does Qt have any built in classes for building a gui based dataflow widget with modules that could be connected (input and output) by arrows or lines within the Graphics View Framework?
-
wrote on 20 Jul 2012, 20:57 last edited by
Nope. Will have to build the basic blocks with the GraphicsView Framework yourself. This is something so specific, they can't possibly include it built-in.
-
wrote on 21 Jul 2012, 23:36 last edited by
There is an example of building this sort of thing with QGraphicsView: see Diagram Scene Example
-
wrote on 22 Jul 2012, 15:13 last edited by
Thank you DerManu and ChrisW67.
@ChrisW67: I have downloaded and looked over Diagram Scene example from QtCreator -> Demos. My question is how to convert this type of diagrammatic flow into a dataflow programming application? In other words, how could I assign functions to the objects(basic flowchart shapes) and make the lines/arrows connectors? The only open source project I have found with this capability is Unipro UGENE - QtProject "Workflow Designer". The code is just to difficult for me to interpret, so I was hoping to start with something much smaller and build from there.
Thank you again for your replies. They are really a great help to us noobs.
-
wrote on 26 Jul 2012, 02:05 last edited by
I don't propose to design your entire project for you.
Give the process blocks a function that implements their process using the inputs passed from upstream. Give the process blocks a way to receive and hold inputs passed from upstream. When the last required input becomes available to a process then fire the process. When the process completes pass its outputs downstream to connected process blocks.
-
wrote on 26 Jul 2012, 07:54 last edited by
I wrote something like this in a previous job, and that work was published as open source (GPL).
!http://1.bp.blogspot.com/_s9HldKof-So/Snr8Mkmu0TI/AAAAAAAAAzU/-vsds_x9BWA/s1600/relationcalculator.png(old RelationCalculator screenshot)!
All the components are defined in plugins. If that suits you, you might have a "look":http://www.assembla.com/code/srtools/git/nodes/unstable-db/relationcalculator at it.
-
wrote on 30 Jul 2012, 22:22 last edited by
Thank you Andre. That's exactly the sort of thing I was looking for. I believe most of my questions will be answered in the code provided. But as always, I'm sure new ones will arise. Thank you again for the post and the open source project.
-
I wrote something like this in a previous job, and that work was published as open source (GPL).
!http://1.bp.blogspot.com/_s9HldKof-So/Snr8Mkmu0TI/AAAAAAAAAzU/-vsds_x9BWA/s1600/relationcalculator.png(old RelationCalculator screenshot)!
All the components are defined in plugins. If that suits you, you might have a "look":http://www.assembla.com/code/srtools/git/nodes/unstable-db/relationcalculator at it.
wrote on 14 Jul 2016, 15:06 last edited by jeanimatorvery helpful, thanks for share!