[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-devel] Curves, nodes and behaviour (a.k.a. Envelopes?)
From: |
Remon |
Subject: |
[Traverso-devel] Curves, nodes and behaviour (a.k.a. Envelopes?) |
Date: |
Thu, 30 Nov 2006 23:07:05 +0100 |
User-agent: |
KMail/1.9.5 |
Hi guys,
I've been working a little on adding visual support for Curves, and of course
the ability to edit those.
There are however some things I'd like to know your opinions about:
1. Should moving nodes be recorded, so it's un/redoable ? The UndoStack is
part of the Song, however, moving nodes could quickly fill up the stack, so
undoing an action before you started moving nodes is well, only possbible if
you undo all the movements of nodes first...
This could be solved by adding a undostack for each Curve, any ideas on this
one?
2. What kind of curves do we have actually? Gain and Pan, both for Track and
AudioClips ?
Should they be created and active by default ?
One idea (which is perhaps the default in other applications as well), is to
use the gain/pan value to set the first node of the Gain/Pan curve as the
offset/start node which can't be removed and only moved vertically ....
3. Keyboard actions for adding/removing/moving nodes.
Since there is [D] for dragging (audioclip) allready, I figured it made sense
to use that one. This also means that if there is a Curve 'active' you can't
move the underlying clip (since the Curve will catch the move command first!)
Since curves will only be 'editable' in 'CurveMode', this shouldn't be a
problem.
I'm actually thinking to disable actions for Track/AudioClip/Song which are
available in 'EditMode' (the only mode until now), depending on their nature,
when in 'CurveMode'.
<< R >> is used for Removal (Track currently, maybe we should use it also for
AudioClip ?) so I used that too, moving and removal actions are done on
the 'active' (blinking) curvenode btw.
4. What should happen if you drag a node before it's previous node or after
it's next node ?
Should the drag-range of a node be the range between it's previous and next
node, or should it be the whole curve range?
If the latter, the curve should re-arrange the nodes when the node is dragged
before/after it's prev/next node!
5. Other ideas, use cases ?
Greetings,
Remon
P.S.
This is not in cvs yet!
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Traverso-devel] Curves, nodes and behaviour (a.k.a. Envelopes?),
Remon <=