traverso-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-devel] extending functionality of traverso by writing command


From: Remon
Subject: [Traverso-devel] extending functionality of traverso by writing command plugins
Date: Wed, 14 Feb 2007 16:15:02 +0100
User-agent: KMail/1.9.6

Hi,

<snip Jonatans 'pseudo' code /snip>

> So, what about putting this into a Command class, and there we go ?

I've given it a shot, a little bit harder then I tought, mainly due audio 
source / clip manager stuff, that's still in alpha fase.


What is in my mind for some time now. You (yes, you all) want features, with 
un/redo possible, assigned to key facts, and so on.

This is possible right now.
Historable actions are all written by means of creating a new Command class 
that inherit Command. Traverso is written as a framework. You request 
something from the core, so of course, you're limited to what functions are 
available, the core emits signals, and the GUI automatically updates itself.

Good, so I wrote a ExternalClipProcessing command class, and it's constructor 
has a reference to the audioclip it has to process on.

Now I added the key fact < E > in the keymap file, and assigned it to the 
objectname "AudioClipView" and function "process_external".

Here the problem comes, I _have_ to add this function to AudioClipView to make 
it work!

Now this: If you can write new Command class as a plugin, and place it in a 
dir where traverso looks for command plugins, and somehow dispatching the < E 
> keyfact to AudioClipView makes it return a new plugin object, _your_ new 
plugin object, one can add new functionality by means of writing plugins!

Jonatan doesn't have to ask me anymore: could you add feature x or y, he can 
write it himself, and since qt 4.2 runs in the glib event loop, he can even 
write a gtk gui for his new command object, to get the sox command from.

Question is, how can I dynamically let objects return the correct plugin ??

RFC please,

Remon




reply via email to

[Prev in Thread] Current Thread [Next in Thread]