[erlang-questions] simple cross platform graphics component

Unix One <>
Mon Jul 3 00:11:40 CEST 2017


On 06/26/2017 04:01 AM, Joe Armstrong wrote:
> Any ideas here.
> 
> I want a cross platform graphics widget.
> 
> When started it should pop up a window and
> listen for messages on port P
> I should be able to connect to port P using UDP or TCP
> 
> I send the widget messages encoded in something
> (JSON, XML, OSC)
> 
> The messages contain descriptions of graphics objects (preferably SVG)

Since this is so specific, I wouldn't expect to find a ready made 
solution. But sounds like something I'd look into doing in Qt (maybe 
even in combination with QML); just because all the tools I'd need to 
build it should be readily available, wrapped in a nice package, heavily 
documented, with plenty of examples. I'd probably use qtcreator for 
Qt/QML programming.

Qt4 SVG viewer: https://doc-snapshots.qt.io/4.8/painting-svgviewer.html
Qt5 SVG viewer: http://doc.qt.io/qt-5/qtsvg-svgviewer-example.html
Qt5 network examples: http://doc.qt.io/qt-5/examples-network.html

Some 3rd party OSC efforts (not sure how useful they are):
Qt4 OSC UDP client & server: https://github.com/kampfschlaefer/ofq
Qt5 OSC: https://github.com/MugenSAS/osc-cpp-qt

And Qt erlang efforts (in PoC stage):
Qt5: https://github.com/kaos/QtErl
QML: https://github.com/krant/eqml

> The only program I have been able to find that does this is
> inscore (http://inscore.sourceforge.net/)
> 
> This uses OSC messages over UDP
> 
> What I'd really like is an SVG over OSC over UDP widget (even JSON
> over TCP would be OK - though less elegant)

BTW, it looks like inscore also uses Qt.


More information about the erlang-questions mailing list