Discussion:
Scroll wheel for Note track vertical ruler (Re: My second set of EXPERIMENTAL_MIDI_OUT changes are ready, now with scrubbing support!)
(too old to reply)
Paul Licameli
2017-07-03 18:31:17 UTC
Permalink
On Sun, Jul 2, 2017 at 5:01 PM, Pokechu22 <
I've finished up my second round of EXPERIMENTAL_MIDI_OUT changes.
Makes use of the mouse wheel with the vertical ruler for note tracks (the
piano). Behavior's the same as with normal wave tracks: control zooms in
and out, and shift scrolls up and down.
Poke, I looked at this first, because I want to push it first, as something
easily separated from the rest, but possibly conflicting with my pending
work and I want to resolve that as soon as I can.

I think it works nicely with Shift, to move the piano keyboard up and down.

But with Control, the magnification changes, yet it needs more work, to
leave the key that is under the mouse pointer as the fixed center of the
magnification change.

Yet I have decided to push it as it is now and let you address this problem
later.

PRL
Paul Licameli
2017-07-03 22:32:07 UTC
Permalink
On Mon, Jul 3, 2017 at 4:15 PM, Pokechu22 <
I see what you mean. As-is, control-based zooming basically works the
same as if you left- or right-clicked in that area. When left or right
clicking, the note you clicked is moved to the center (which is the same
with wave tracks: if you click .5, then that's moved to the center). But
with the wheel, it should keep the note you zoomed on in the same position
(which is what it does with wave tracks). I'll implement that.
(FYI: the 2 commits after that, "Implement Shift+Right-click for full
extent on the note track VRuler" and "Fix note track status message", are
both in the same place as that commit, and are highly related - you may
want to pull those too since they could cause similar conflicts)
I have now pushed those two, too.

PRL
--Poke
Post by Paul Licameli
I've finished up my second round of EXPERIMENTAL_MIDI_OUT changes.
- 71b0ba0e02 "Implement scrolling for the note track vertical
ruler": Makes use of the mouse wheel with the vertical ruler for note
control zooms in and out, and shift scrolls up and down.
Poke, I looked at this first, because I want to push it first, as
something easily separated from the rest, but possibly conflicting with my
pending work and I want to resolve that as soon as I can.
I think it works nicely with Shift, to move the piano keyboard up and down.
But with Control, the magnification changes, yet it needs more work, to
leave the key that is under the mouse pointer as the fixed center of the
magnification change.
Yet I have decided to push it as it is now and let you address this
problem later.
PRL
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
https://lists.sourceforge.net/lists/listinfo/audacity-devel
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Paul Licameli
2017-07-04 11:27:01 UTC
Permalink
On Tue, Jul 4, 2017 at 4:04 AM, Pokechu22 <
Done (87ff25e3a). It can get a bit off-center due to rounding (only a
full note can be displayed), but for normal zooms (not 1 note taking up
half of the track) it works fine.
--Poke
I pushed this, which is a further improvement, but there are more problems
to fix.

Before or after this commit, with Ctrl+mousewheel I can zoom out farther
than I can with shift+right click. I think there should be a consistent
limit.

For zooming in, there should be a limit, perhaps where one octave is shown.

When I zoom in, behavior gets very strange. There are black stripes at the
top or bottom of the track or both that grow thicker as I zoom in, to the
point that it fills most of the view.

And this is not related to the scroll wheel, but I observe that if I grab
the bottom of the track and resize, then notes remain a fixed pixel height,
so that I see more or fewer. But to be consistent with what wave tracks
do, notes should change height, so that a constant number of them show.
The fix for this might involve making Track::SetHeight a virtual function.
If so I recommand not worrying too much about keeping
EXPERIMENTAL_OUTPUT_DISPLAY buildable.

Can NoteTrack::mPitchHeight and mBottomNote and perhaps others be non-whole
numbers? That might fix the wobbling of the keys and closer levels of
zoom-in with the mouse. You would need to examine their uses carefully to
reason about the other consequences.

PRL
Post by Paul Licameli
I've finished up my second round of EXPERIMENTAL_MIDI_OUT changes.
- 71b0ba0e02 "Implement scrolling for the note track vertical
ruler": Makes use of the mouse wheel with the vertical ruler for note
control zooms in and out, and shift scrolls up and down.
Poke, I looked at this first, because I want to push it first, as
something easily separated from the rest, but possibly conflicting with my
pending work and I want to resolve that as soon as I can.
I think it works nicely with Shift, to move the piano keyboard up and down.
But with Control, the magnification changes, yet it needs more work, to
leave the key that is under the mouse pointer as the fixed center of the
magnification change.
Yet I have decided to push it as it is now and let you address this
problem later.
PRL
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
https://lists.sourceforge.net/lists/listinfo/audacity-devel
------------------------------------------------------------
------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Loading...