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
