Yes, I would think it'd be perfect esp. for teaching situations to show both
how to /program/ trees to generate code, or where a teacher makes an app that
does something where the program can then be used as a simulator, such as
for laying out electronic circuits (see below).

Docs need to be fleshed out in terms of how to make use of it, as I'm not sure
"just" example code is sufficient for a widget like this. There's currently only
reference docs (docs of all the methods), but a doc needs to be put together to
show how it all works together.

There's a full example "test-app" program that shows how to make custom buttons 
and boxes
that let one add and multiply data streams together, generating a perl script
that can then be run in perl to duplicate the layout.

The example is wired to generate perl code, but the widget can also be used
for non-code generation situations, like in-memory data structures, or even
hardware control.

For instance I could see circuit layouts being done with this, where each "box"
could represent things like resistors, capacitors, solenoids, voltage 
generators,
timers, virtual oscilloscopes, etc. And the buttons on the box represent inputs
and outputs of these devices.

Or simple audio circuits where you can add sin and cos waves together to
graph out shapes.

This is one widget where I think either a video tutorial or deep discussion
with lots of screenshots would really be needed to fully get across how to
make good use of it.

In general, the idea is that the application programmer derive their own class
for the "boxes" and "buttons" so that the behavior of those can be defined.

For instance, defining a menu that pops up if you right click on buttons,
or have certain behavior occur when you try to connect buttons that represent
different data types, ie. connecting an integer to a string should either
trigger a conversion, or be disallowed/post a dialog.

Code generation is also a subject that can go a lot of directions.



Robert Arkiletian wrote:
> On Sat, Feb 20, 2010 at 11:03 AM, Greg Ercolano <[email protected]> wrote:
>> Thought I'd put this here:
>> http://seriss.com/people/erco/fltk/Fl_OpDesk/
>>
>> Builds on linux and windows, haven't tested on OSX yet.
>>
>> A more official release notice for this "mega widget" is forthcoming,
>> but thought I'd give you a preview.
>>
> 
> Holy cow,
> 
> Greg, you are amazing!
> 
> It immediately reminded me of logic gate diagrams.
> 
> Source code generation. So cool. I'm in deep thought thinking about
> possible applications of such new (and unique) widgets.
> 
> As they say: Build it and they will come.
> 
> Thanks for sharing and enriching FLTK :-)
> 
_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to