Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Song editor group operations #1212

Closed
unfa opened this issue Oct 15, 2014 · 9 comments
Closed

Song editor group operations #1212

unfa opened this issue Oct 15, 2014 · 9 comments

Comments

@unfa
Copy link
Contributor

unfa commented Oct 15, 2014

mockup

While more than 1 clip is selected, a special menu item would indicate that you're about to do something on a group of clips. Opening B+B editor or Piano roll editor or Automation editor is unapplicable here, so these items should be hidden (as the mockup shows).

Now you can delete, mute, copy, cut, paste (replace with clipboard contents), change color or rename all at once.

Pasting a group of clips would need to know what tracks these clips belong to (just like with notes in piano roll).
And just like with Piano roll, I think the pasted items should start at the playhead, so the user has precise control where to paste stuff.

Other possibility is special "duplicate" function (instead of copy+paste).
Duplicate could create duplicates on the tracks the clips are already on, offseting them by teh selection length.

Also just like in the Piano roll, the Ctrl+drag should deploy rectangular selection IMHO. It's not assigned to anything yet, and keeping this consistent among different places is very important.

So duplicating this:

 xxx 
    x

Would create this:

 xxx xxx
    x   x

That'd be very useful for duplicating song parts. A hotkey for this would also be great (Ctrl+D?)

Also - extending the length of one clip while others are selected should work just like in Piano roll - extend all selected by the same length. Same with moving deleting with Delete key and duplicating with Ctrl+drag when the drag is started over a clip (unlike the selecting drag that starts over an empty space).

@diizy
Copy link
Contributor

diizy commented Oct 15, 2014

On 10/15/2014 04:37 PM, unfa wrote:

While more than 1 clip is selected, a special menu item would incidate
that you're about to do something on a group of clips.

Now you can delete, mute, copy, cut, paste (replace with clipboard
contents), change color or rename all at once.

Wouldn't it be great?

It would totally be great. I wish we had someone who had the time and
skills to implement it.

@Sti2nd
Copy link
Contributor

Sti2nd commented Oct 16, 2014

huh, so how is it going on school, diizy? University or just school?

@tresf
Copy link
Member

tresf commented Oct 16, 2014

huh, so how is it going on school, diizy? University or just school?

http://lmms.io/forum/

:)

@Umcaruje
Copy link
Member

Some notes from #2453 by @qubodup:

I only now realize that this task would be very complex:

  • How to handle paste in a different track?
  • How to handle removed or added tracks between copy and paste?
  • How to handle clips that are in the way? (actually no problem, since lmms allows overlapping clips, confusing or not, it makes this easier).

I would suggest for the first implementation:

  • When copying, remember the ID of the track on which each selected clip is positioned. Make sure to use an ID that won't change if the user changes the name in the meantime(?).
  • On paste, ignore which track is being pasted to, just paste to the respective tracks, of which the ID has been recorded to the clipboard. Use the beat hovered by the mouse cursor to determine what beat/x-position to start paste-ing to
  • Since clips can overlap, just paste over existing ones.
  • Ideally support Cltr+c / Ctrl+v (which is currently not supported by single-clips yet).

Advanced features:

  • If at time of paste, clipboard clips have IDs of tracks that don't exist (any more), paste the rest still.
  • Make multi-clip operations be tracked by undo history
  • Make clipboard independant from history, so that users can go to the paste to it. Selection actions however should be part of the history even though this means you can't go back to the past, copy from there and bring the copies to the future, as selection actions would overwrite the future.
  • Allow adding/removing single clips to/from selection using Shift+click (shift is the "add" operator in the piano roll even though ctrl usually does this and shift usually enables box-drag select as far as I know.

@SecondFlight
Copy link
Member

I'm trying to decide whether or not it would make sense to break this apart into smaller issues. For example, I think it makes a lot of sense to delete the whole selection on right click -> delete, as opposed to the current behavior where it just deletes the clip you right clicked, disregarding the selection. It would also make sense to delete patterns when the delete key is pressed, especially now that we have reliable undo. These ideas probably both technically fit into this issue, but the issue spans a fairly large set of changes and we would have improved functionality even if we just implemented one or two.

@BaraMGB
Copy link
Contributor

BaraMGB commented Mar 6, 2018

@SecondFlight do you aware of this PR: #3649?

@SecondFlight
Copy link
Member

No, I wasn't. Looks great, @BaraMGB!

@vlad0337187
Copy link

Maybe this could fix some problems ?
#3025

@SecondFlight
Copy link
Member

As part of a pruning effort, this enhancement is archived into a dedicated "Better Workflow" checklist here #4877.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants