[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Greetings and a couple of other things
From: |
Matt Mitchell |
Subject: |
Re: Greetings and a couple of other things |
Date: |
Mon Sep 24 14:24:08 2001 |
User-agent: |
Mutt/1.2.5i |
> > But it might be nicer if param was a void*, and then widgets could
> > pass back an arbitrary data structure. This would let widget builders
> > make more complicated widgets.
>
> There is neither a need for plugins coming with their own widget
> builders, nor a facility to add them to Octal anyway---the widget system
> is not exposed as part of the OX_API for machine writers to use. The
> plugins have to remain toolkit and platform-agnostic, otherwise you have
> the problem that plagues a lot of Windows plugins that build their own
> GUI---you can't use them anywhere else.
And better yet, this would allow us to use the system without a GUI of any
kind. Good for testing and for innumerable other applications (embedding,
scripting, controller interfaces, etc.)
> The problem goes further if you pass void pointers around where the
> plugin defines some data structure. Someone needs to manage the object's
> lifetime and storage, someone needs to manage how it will be saved and
> loaded in *.OXF files, and then we'd need to rely on plugin writers
> never changing the save format for that data (or handling old formats if
> they do change it.) One requirement for this project is to prevent data
> obsolescence, i.e. a new OS or plugin version should not break a song
> you made, you should be able to compile the plugins and Octal itself and
> get going... plugins streaming ad-hoc data to save files is asking for
> trouble.
>
> But don't worry, I have seen relatively few plugin GUI's that did
> anything beyond wheels, sliders, and pulldowns, and for things beyond
> that (envelope edit, 2-d axis slider, both planned) we should have a
> single implementation that many plugins can use after the need for a new
> control type has been agreed upon.
Is anyone working on any of these things?
-m