On Monday 05 Feb 2007 10:21, Guillaume Laurent wrote:
> On Monday 05 February 2007 00:54, nilitonilito nilitonilito wrote:
> > No in my example in cakewalk it wasn't a real-time filter(sorry for my
> > not well chosen examples). Here was the idea : everything you can do
> > using the menus,  buttons, clicks, midi input events... (like add a note
> > at such position, create a midi track with such a name...) you can
> > describe it in the script, you have in addition, loop and conditional
> > branching.
>
> Oh ok, not really what I had in mind either... Well, the right tool to do
> that is dcop (or dbus in kde4), something we'll flesh out eventually,
> rather than adding a language of our own. But again I'm not sure how useful
> that would actually be in practice.

I think it would be both fun and not particularly hard to do.  We do have a 
few shreds of DCOP support already for calling basic menu functions (loading 
a file, playing from a given time etc), but not really for any editing.

On the other hand, I've previously seen this kind of thing more as a way of 
doing things that _aren't_ in the menu, so as to construct new menu functions 
and suchlike.  And that sounds a bit more like the sort of thing the original 
poster here might be after.

Some of the menu options we have already might have been easier to build if 
there had been a script-style interface to make them from.  It needn't even 
necessarily have involved a scripting language -- just an interface that 
works at a slightly higher level than our basic data structures, allowing the 
author to avoid worrying about tedious problems like what happens to 
iterators in a container if you erase an element from the container, etc etc.

A C/C++ API that offered the basic inspection and editing facilities on 
Rosegarden event data (_not_ literal MIDI data, the way I had been conceiving 
of it anyway) in a robust sort of way, so that a program using them could not 
crash and would be reasonably unlikely to fail to complete for any obscure 
reason, would be a useful thing in and of itself and could then be wrapped 
using any sort of scripting language interface.

You can see a few bits of header code for something like this in 
src/base/ScriptAPI.h.  The header file has been there for two years without 
ever being properly worked out or having any implementation at all written, 
basically because I (for once) actually avoided spending a whole chunk of 
time working on something that I found interesting but suspected nobody else 
would ever use.  If there is evidence that someone else might actually use it 
after all, it can probably be made into something that works pretty quickly.


Chris

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to