Paul Licameli
1a317af2f5
Move code for handling the menu button out of TrackPanel, but...
...
... Still to do, move out the code for menu items. They remain accessible
from Shift-M but not from the menu button.
And ESC key is now implemented.
2017-06-15 08:21:36 -04:00
Paul Licameli
c3f5fea5fc
TrackPanel still draws Miminize and Close, but no longer handles...
...
clicks on them...
... also implemented ESC key for those drags
2017-06-15 08:21:36 -04:00
Paul Licameli
7cab380192
TrackPanel still draws Velocity, but no longer handles clicks on it...
...
... also implemented ESC key for that drag
2017-06-15 08:21:35 -04:00
Paul Licameli
a569476e79
TrackPanel still draws Gain and Pan, but no longer handles clicks on them...
...
... also implemented ESC key for those drags
2017-06-15 08:21:35 -04:00
Paul Licameli
5ee73f944d
TrackPanel still draws Mute and Solo, but no longer handles clicks on them...
...
... also implemented ESC key for those drags
2017-06-15 08:21:34 -04:00
Paul Licameli
f89cbefc7b
Temporary hack lets us defer encapsulation of track control panel drawing...
...
... while we can work on encapsulating the click-drag actions.
2017-06-15 08:21:33 -04:00
Paul Licameli
43968c4ac9
TrackPanel no longer implements clip joining or cutline expansion/deletion...
...
... also implement ESC key for these and added status bar message for
mouse-over
2017-06-15 08:21:30 -04:00
Paul Licameli
2496b0d7bc
TrackPanel no longer implements the envelope tool...
...
... also implement ESC key for it
2017-06-15 08:21:02 -04:00
Paul Licameli
ef38af71dd
Move more time-shifting functions out of TrackPanel.cpp
2017-06-15 08:21:01 -04:00
Paul Licameli
251976d93d
TrackPanel no longer implements the time shift tool...
...
... also implement ESC key for it
2017-06-15 08:21:01 -04:00
Paul Licameli
f1f254f974
TrackPanel no longer implements the draw tool...
...
... also implement ESC key for it
2017-06-15 08:21:00 -04:00
Paul Licameli
85c03bb3b3
TrackPanel no longer implements the zoom tool...
...
... Also changed the behavior of drawing of dashed lines: make them
disappear when they approach close enough that right-up will zoom out,
not in.
2017-06-15 08:20:59 -04:00
Paul Licameli
14d45eda33
Define and use the UIHandle and TrackPanelCell protocols, but...
...
...no actions reimplemented to them yet.
Later commits will move special cases one at a time from TrackPanel, preserving
all click and drag capabilities at each step. With a few exceptions, but those
lost abilities are restored in yet later commits. (Ctrl+Click on the Label
track being one.)
2017-06-15 08:20:56 -04:00
James Crook
f67cc7af25
Fix broken Windows build.
...
Was broken on MSVC 2013, due to a compiler bug.
2017-06-14 16:17:20 +01:00
Paul Licameli
5982dccd36
Redo layout tables as std::vector
2017-06-13 19:05:50 -04:00
Paul Licameli
063c6c236f
Table includes draw functions for status items
2017-06-13 18:57:34 -04:00
Paul Licameli
ce77f176b5
Table includes draw functions for Mute and Solo
2017-06-13 18:53:26 -04:00
Paul Licameli
4df84f126e
Table includes draw functions for sliders
2017-06-13 14:02:10 -04:00
Paul Licameli
329aa8393e
Table includes draw function for Midi controls
2017-06-13 14:02:10 -04:00
Paul Licameli
86763341af
Table includes draw function for Minimize and Sync-lock icon
2017-06-13 14:02:10 -04:00
Paul Licameli
b4e38c2838
Table includes draw function for Close and Title
2017-06-13 14:02:09 -04:00
Paul Licameli
ba014f042a
Add a slot for drawing functions to the TCP lines table
2017-06-13 14:01:37 -04:00
Paul Licameli
e554f0cdc6
TrackPanel::HasSoloButton is static and public
2017-06-13 14:01:37 -04:00
Paul Licameli
18b3bc0600
Separate functions defining the horizontal bounds of TCP items
2017-06-13 14:01:36 -04:00
Paul Licameli
b15bf441ec
Static TrackInfo slider accessors, const Track* arguments
2017-06-13 14:01:36 -04:00
Paul Licameli
1d1dded9ba
TrackInfo::SetTrackInfoFont is static
2017-06-13 14:01:36 -04:00
Paul Licameli
bf3f041abe
Make TrackInfo routines that calculate rectangles static
2017-06-12 13:34:50 -04:00
Paul Licameli
e2d77b399d
Move one more selection function out of TrackPanel
2017-06-11 16:14:26 -04:00
Paul Licameli
d834bcdbd1
Move some command handlers for selection and focus out of TrackPanel
2017-06-11 11:03:28 -04:00
Paul Licameli
a9f7cb26e7
Move selection state into AudacityProject, out of TrackPanel
2017-06-11 10:40:55 -04:00
Paul Licameli
4da881d1db
Define and use SelectionStateChanger
2017-06-11 10:40:50 -04:00
Paul Licameli
a594207265
Define class SelectionState; move some TrackPanel functions into it
2017-06-11 10:22:52 -04:00
Paul Licameli
991819bc28
Remove #includes
2017-06-10 14:27:17 -04:00
Paul Licameli
65c7beff99
Move mAdjustSelectionEdges from TrackPanel to ViewInfo
2017-06-08 15:30:52 -04:00
Paul Licameli
c300c33901
Remove a few unused members from class TrackPanel, and an unused #include
2017-06-08 15:30:31 -04:00
Paul Licameli
a33ec61ddf
Move code for toggling spectral selection (Q key) out of TrackPanel
2017-06-08 12:48:28 -04:00
Paul Licameli
3255ab6c5b
Remove some unused members
2017-06-07 21:57:42 -04:00
Paul Licameli
7bf7815c75
Move HideTopItem into class TrackInfo, for later use
2017-06-07 10:39:47 -04:00
Paul Licameli
84b5fd6075
Compute default WaveTrack height analogously to NoteTrack...
...
... though in fact this comes to the same 150 pixels as before, given the
present layout table.
2017-06-06 22:39:30 -04:00
Paul Licameli
f0c149b890
Default MIDI track height is enough to display velocity slider...
...
... It is computed from the layout table, and in fact comes to 158 pixels,
versus 150 for other tracks.
2017-06-06 22:39:30 -04:00
Paul Licameli
0204cd80c5
Make gain slider again visible in default sized WaveTrack
2017-06-06 22:39:30 -04:00
Paul Licameli
75bf6f90e4
Explanatory comments in TrackPanel drawing; fewer magic numbers
2017-06-06 13:17:51 -04:00
Paul Licameli
63c89e1fe3
Simplify logic of track control panel click to rearrange...
...
... 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.
2017-06-05 22:18:24 -04:00
Paul Licameli
52017948d1
Remove argument of DrawOutside that is no longer used...
...
... This only was a source of confusions.
2017-06-05 21:42:47 -04:00
Paul Licameli
4244d55b77
Fix NoteTrack stray lines; no magic numbers in DrawBordersWithin...
...
... even though we are now skipping that drawing step.
2017-06-05 21:42:36 -04:00
Paul Licameli
b8492d02d6
CalcItemY is table-driven; stack Mute & Solo for NoteTrack too in DA
2017-06-05 21:35:39 -04:00
Paul Licameli
c38efc1fcd
FindTrackRect omits all margins; better screen reader focus rects...
...
... 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
2017-06-04 11:31:46 -04:00
Paul Licameli
afd3b0ba19
Remove some uses of Track::GetHeight()...
...
Pass top-left point, not a rectangle, to places that did not use width or
height.
2017-06-04 08:29:32 -04:00
Paul Licameli
646c66f78f
Sync lock adjustment for NoteTrack stretch...
...
... It applies only at button-up, not in a previewing fashion during the drag.
Realizing that preview is more work than I want to do right now.
2017-05-22 23:25:39 -04:00
Paul Licameli
82ce041c75
Preview cursor for Stretch can take left, right, or center form
2017-05-22 23:16:42 -04:00