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
Paul Licameli
90eb4ec142
Make MIDI track stretch path-independent
2017-05-22 23:15:26 -04:00
Paul Licameli
9fb7185ea4
Rewrite undo handling for Stretch to be more like other drags...
...
... 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.
2017-05-22 23:12:36 -04:00
Paul Licameli
2eb6285ddc
Group some TrackPanel fields into a structure
2017-05-22 23:12:35 -04:00
Paul Licameli
01f853f174
Fix Windows build
2017-05-18 19:01:46 -04:00
Paul Licameli
f7578193b4
TrackPanel::OnClipMove is a static function
2017-05-18 07:46:54 -04:00
Paul Licameli
227850f9cd
Group some member variables into ClipMoveState
2017-05-18 07:45:04 -04:00
Paul Licameli
282abfce7f
Abstract TrackPanel::GetSnapLeft() and ::GetSnapRight()
2017-05-18 07:07:50 -04:00
Paul Licameli
d36ac2cedb
Revert "Fix for keyboard commands for time shifting clips"
...
This reverts commit b91160795dedce54745102027f8bb0908828772a.
2017-05-18 07:06:22 -04:00