Tweaking the curve#2217
Conversation
Added the following new tools to the piano roll toolbar: - Vertical Stretch Tool - Horizontal Stretch Tool - Vertical Shift Tool - Horizontal Shift Tool Added tooltips and icons corresponding to these tools, and updated the settings in PianoRoll.axaml, Strings.axaml, and PianoRollStyles.axaml. Implemented the behavior of the new tools in PianoRoll.axaml.cs and extended the ExpCanvasPointerPressed and ExpCanvasPointerMoved methods. Added logic to CurveViewModel.cs to support the new tools. Implemented the TryGetSelection method to retrieve the selection range. Added new state classes to NoteEditStates.cs and implemented editing logic (move, scale) for each tool.
|
Would it be possible to add a setting to ignore any values that are 0/default when using the shift tools? |
|
@nagotown If you don't want to move the default values, I think it's best to simply not select them. As for the behavior of the selection, I haven't made any specific changes to it, so it remains exactly as it was when the curve selection feature was first added. |
|
The reason why I wouldn't just select very specific parts is related to the last part of my reply. It's a bit of a hassle with the grid snapping. By the way, could you check my PR on this branch? |
fixes icon display
Added new curve editing tools to the piano roll.
Added the following new tools to the piano roll toolbar:
Added tooltips and icons corresponding to these tools, and updated the settings in PianoRoll.axaml, Strings.axaml, and PianoRollStyles.axaml.
Implemented the behavior of the new tools in PianoRoll.axaml.cs and extended the ExpCanvasPointerPressed and ExpCanvasPointerMoved methods.
Added logic to CurveViewModel.cs to support the new tools.
Implemented the TryGetSelection method to retrieve the selection range.
Added new state classes to NoteEditStates.cs and implemented editing logic (move, scale) for each tool.
