[linux-audio-dev] Re: Project: modular synth editor

Marcus Andersson marcus.t.andersson at spray.se
Fri Jan 16 21:49:48 UTC 2004


Hi,

IMHO, think less about GTK and more about designing a language that can 
be used to describe the GUI of a modular synthesizer. Why not for 
example use XML or LISP or some other notation not being C. Then use 
C+GTK to implement the new language.

Features to consider for the language:
* A widget set particularly designed for synthesizers.
* A way to construct modules from widgets.
* Cable and port types/coloring.
* Canvas grid that modules snap to.
* How user events are sent to the backend.
* How backend events update the GUI.
* Reusability of widget declarations.

Marcus

Juhana Sadeharju wrote:

>Hello.
>
>NMEdit was mentioned in my list. I'm in their devel list but
>it has been quite quiet.
>
>I will check Graphviz better in a few days but can one make
>Quasimodo or Nord Modular type "graphs" with it? In a quick
>look I saw some composite icons (not widgets?), but I feel
>Graphviz is not very usable for us.
>
> -*-
>
>Both the standalone editor and the embedded editor would be needed.
>Standalone editor could use sockets and shared memory for communicating
>between the editor and application. Embedded editor could be launch
>by filling in a callback table and calling the editor:
>  GtkWidget *editor;
>  editor = editor_create(callbacktable);
>  gtk_widget_show(editor);
>
>It could be slightly more complex if GTK is not the only supported
>toolkit. We also could have editor_menu_create() if one wants
>attach the editor related menu to application's menubar.
>
> -*-
>
>Should we provide a standard (XML script?) for building module
>interfaces? New GUI widgets would be included as soon as somebody
>writes them. This kind of approach would be needed in creating
>plugin GUIs and environments (a la Logic Audio).
>
>Should we allow module author to code the GUI for the module using
>directly GTK?
>
>How GMPI handles the plugin GUIs? I see that we would do an overlapping
>work here.
>
> -*-
>
>Assume I have written a module GUI with GTK. I load the calling
>function to the editor and create the GUI with
>  modulewidget = mymodule_create_gui();
>  gtk_widget_show(modulewidget);
>
>Now, can I trace the whole widget hierarchy starting from "modulewidget"?
>
>In GTK, can one attach names to the widgets?  E.g., I have a small
>pixmap of a connector where a cable is plugged in. I want name all
>these widgets as "connector". Then in the editor I would search all
>connectors by tracing the widget hierarchy and looking for "connector"
>names.
>
>We need to know where these connectors are located because we want be
>able to plug the cables in. Alternatively we could describe the
>locations in a file, but then we would be bound to the fixed shape GUIs.
>
> -*-
>
>In gtk related mailing lists I have already suggested a general way
>how to implement a zoom in the editor (Widget Portal). If that is not
>possible in GTK, then I see no other way than write new widgets with
>a zoom ability.
>
>Regards,
>Juhana
>
>
>  
>





More information about the Linux-audio-dev mailing list