... using rect.width instead; and making no changes in appearance.
Some routines, like that for the sync lock icon, are pleasingly simplified.
But see comments about some questionable things that may have been based
on the misunderstanding that kTrackInfoWidth was the width between bounding
lines, when in fact, that width was 5 less.
... Rearrange drag is now simply the default of all other hit tests.
The comment, as to the purpose of the removed call to TrackSelFunc, is
obsolete, because clicks on hidden buttons and sliders have recently been
disabled.
The mention of "the area left of the minimize button" is obsolete because there
is no such area any more after 2.2.0 layout changes.
Just before this commit, click in the minimize button but near the left edge
did not minimize, but started a track rearrange drag! That should not be so.
... Formerly it was outside of the yellow focus at the right side. Now it
follows the yellow consistently on four sides.
The constant dx in TrackPanelAx::GetLocation might be adjusted.
No change of behavior is intended at other uses of FindTrackRect
... So that even if the time is "slightly" (less than 1/2 sample interval) left
of the discontinuity, the right-hand limit is always used.
Thus this compensates for some roundoff errors when pasting one clip with
an envelope into another.
This overcomes the objections that were in a comment in Envelope::Paste
to making control points with exactly equal times.
And therefore Paste can be rewritten to do so, but that has not happened yet.
Envelope points at exactly equal time coordinates can already be made by
dragging points in the envelope editor.
... that is, push a state only at button-up.
The undo during each drag increment didn't actually happen, because of a check
in OnUndo whether there is a drag in progress!
But this is not necessary to fix the excessive number of undo items, because
commit 63ae687bafd1123bf4bf7d00070e1dd9f38dc8a2 already did that by other means.
It only removes an unusual usage.
That is, don't assume uniformity of pixels per second, but supply the correct
first argument.
This will matter when there is a magnifier. But that will not be in the next
version.
This reintroduces the buttons to toggle display of individual midi
channels, and cleans up the code behind that feature.
This functionality has actually been present in production versions of
audacity for a while, at least for clicking. However, the buttons
themselves were not drawn, making it exteremly painful (but possible) to
use.
As requested by PRL, this is always enabled if USE_MIDI is defined.