[Top][All Lists]

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

Re: [Traverso-devel] Some work on AudioClipView

From: Remon Sijrier
Subject: Re: [Traverso-devel] Some work on AudioClipView
Date: Wed, 23 Jul 2008 21:30:44 +0200
User-agent: KMail/1.9.9

Hi Peter,

Nice work, documentation of the code always lags a bit (a lot actually)
The doc formating seems fine, looks similar to other documentation I added.

About the hard selection, some selection work has been in the works, but it's 
a somewhat difficult subject.
See for a discussion of general selection the forum:,102.0.html

It's a somewhat long read, but you'll get a glimpse of what has been going on 
in my mind in respect to selecting items.

Only operating on a 'part' of an AudioClip like copy, cut etc... The idea is 
to use allready existing Command classes for that, there might be need to 
make some of them more versatile, or to create new ones that use existing 
ones to perform a sequence of actions. Like cutting away part of a clip could 
be done by 2 Splits, and one Move. (there has been a Crop command that did 
just that, but became obsolete due refactoring of code long time ago) Now the 
resulting 2 clips can be stored into a AudioClipGroup and displayed as just 
one clip, which btw is just an idea, since that doesn't exist yet :)

In respect to selecting a group of items, I started with something really 
basic in AudioClipSelection:
QRect                   m_selectionArea;
QList<AudioClip* >      selectedClips;
and the like.

My idea is/was to adjust the size of the SelectionViewItem (to be created) or 
just painting the selection area on the sheetcanvas, a pointer of which can 
be obtained from the cTor of ClipSelection (the cTor should have a pointer to 
the sheetcanvass' object, it doesn't have one currently) in the 
ClipSelection::jog() function.
In the finish_hold() the selection thing then can be made persistent, so we 
have a 'floating' viewitem on top of the audioclipsviews etc on which we can 
dispatch new key/mouse events.
Or use the more advanced key events: 

[ S ] + <some_other_key_to_show_a_list_of_available_actions> and pick one :)

You might not now that one, see for an example [ G ] + <up/down arrow> or [ 
D ] + <right mouse button> to get all the [ D ] + < available keys > actions. 
Drag on an AudioClip has a few of them!

Just a bunch of ideas....

The preferred way of submitting patches is to diff them against the original, 
attach the diff to the mail, so I can read the diff and patch my own tree to 
upload it to cvs if it's fine with me.
As soon as I'm getting tired of submitting your patches, you'll get a cvs 
account yourself :D

Hope this is of some help!


reply via email to

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