Paul Licameli
c98ab0aec9
Make RecordingPrefs.cpp independent of Warning
2019-07-13 19:54:41 -04:00
Paul Licameli
f420122001
Dependencies does not need ProjectWindow
2019-07-13 18:10:11 -04:00
Paul Licameli
908228b431
ProgressDialog does not depend on ErrorDialog
2019-07-13 18:10:11 -04:00
Paul Licameli
6c9246d090
LangChoice.h not used (anywhere?)
2019-07-13 16:32:07 -04:00
Paul Licameli
3a1456bf53
Make OverlayPanel independent of AColor
2019-07-13 16:08:29 -04:00
Paul Licameli
fb713a5339
ASlider wasn't using Ruler
2019-07-12 22:52:34 -04:00
Paul Licameli
beb378f61a
Revert the change of radio items to check items at fa6b5de
2019-07-11 12:54:36 -04:00
Paul Licameli
633153c91f
Delegate DoDetailedHitTest through base class WaveTrackSubView
2019-07-11 10:37:30 -04:00
Paul Licameli
54493f34a5
Correct vertical ruler width recalculation for multiple sub-views...
...
... though not more than one is yet shown
2019-07-11 10:33:58 -04:00
Paul Licameli
dd369da6a0
Define WaveTrackView::GetAllSubViews
2019-07-10 11:35:57 -04:00
Paul Licameli
d6317ae6af
Merge LinkingHtmlWindow into HelpSystem...
...
... they cooperated closely in a cycle of two not worth breaking
2019-07-10 10:34:04 -04:00
Paul Licameli
f4b370d1e2
Wave track view type stored in the views not the tracks...
...
... and some latent support added for multiple views.
Still unsettled is what Nyquist should do with tracks with multiple view types;
for now only pass one of them.
2019-07-10 10:21:07 -04:00
Paul Licameli
fa6b5dea88
Generalize WaveTrackView::GetDisplay to return multiple values...
...
... something better might be done in Nyquist Lisp, where we still pass a
single value
2019-07-10 10:19:04 -04:00
Paul Licameli
2f544bda7a
Reimplement WaveTrackView::SetDisplay, eliminating mDisplay...
...
... and much generality for the future in reporting the sub-view division to
TrackPanel.
SetDisplay will have the effect of making one of possibly multiple views take
up all the height. Where we need to save and restore or otherwise copy the
sub-views, there is more information now than just one enum value.
2019-07-10 10:10:41 -04:00
Paul Licameli
357b593c66
Define ClientData::Site::size
2019-07-09 20:09:59 -04:00
Paul Licameli
6ccca16a75
Move display type from WaveTrack to WaveTrackView
2019-07-09 20:09:59 -04:00
Paul Licameli
c28e47bd38
Define static Get functions for WaveTrackView
2019-07-09 20:09:59 -04:00
Paul Licameli
99a1e5a11d
Remove some unnecessary tests of WaveTrack::GetDisplay()...
...
... trust the hit-tests of the views to guarantee these conditions
2019-07-09 20:09:59 -04:00
Paul Licameli
3715c079b4
Test view class, not track display type, for spectral selection
2019-07-09 20:09:59 -04:00
Paul Licameli
d8b3d16554
Make const overload of ClientData::Site::ForEach usable
2019-07-09 16:05:52 -04:00
Paul Licameli
36cb2918be
Break various small cycles, and a few other noncyclic dependencies
2019-07-09 15:29:35 -04:00
Paul Licameli
bac841f497
TrackView wasn't using TrackControls
2019-07-09 14:55:33 -04:00
Paul Licameli
db16150366
Break cycle: TrackPanelResizerCell, TrackPanelResizeHandle, TrackView
2019-07-09 14:55:31 -04:00
Paul Licameli
586eb0d4cb
Break cycle of ODDecodeBlockFile and ODDecodeTask
2019-07-09 13:39:08 -04:00
Paul Licameli
395f169bad
Break cycle of ImageManipulation and Theme
2019-07-09 13:23:07 -04:00
Paul Licameli
f2f6ff3a1b
Break cycle of ScriptCommandRelay and CommandBuilder
2019-07-09 13:23:07 -04:00
Paul Licameli
7e1c469d7f
Remove some unnecessary #include directives
2019-07-09 12:45:50 -04:00
Paul Licameli
a08bd5782b
Break cycle of Prefs, Languages, FileNames
2019-07-09 12:21:08 -04:00
Paul Licameli
7d75f1bfc4
Remove unnecessary #include
2019-07-09 10:55:18 -04:00
Paul Licameli
d7a0fa72db
WaveTrackView does not depend on SpectrumView, WaveformView
2019-07-09 10:23:49 -04:00
Paul Licameli
22dbe69f5c
Remove friends
2019-07-09 09:51:37 -04:00
Paul Licameli
2bec03ac08
TrackView subclasses do not depend on corresponding TrackControls...
...
... use an AttachedVirtualFunction to compute the default view height from
the controls.
This frees LabelTrackControls from cycles.
Also made Track::DoSetHeight non-virtual
2019-07-09 00:05:01 -04:00
Paul Licameli
9ca295c9f7
Remove some unnecessary #include-s
2019-07-08 23:53:41 -04:00
Paul Licameli
51e0c2221f
Remove duplicate call to DrawItems introduced at 488cb46
2019-07-08 22:13:51 -04:00
Paul Licameli
5312406450
Separation of waveform and spectrum UI...
...
... Different classes for the views, vertical rulers, and dragging handles in
the rulers.
Track panel subdivision finds the delegate sub-view of the appropriate kind to
display and interact with, with the help of a new virtual function in TrackView.
Some anticipation of split views of wave tracks too, not implemented yet.
This adds some files, splitting up existing files that collected too much
unrelated functionality, because waveform and spectrogram drawing and
interaction in fact have very little in common.
It was not done to break up old dependency cycles. In fact it leaves the
new SpectrumView and WaveformView in cycles with WaveTrackView. Something
might be done to fix that later.
2019-07-08 11:46:54 -04:00
Paul Licameli
fd7e06e458
Undo the temporary rewrites of WaveTrackView draw and hit-test...
...
... switching on display type and replicating what the sub-view classes did;
now these methods of WaveTrackView should not be reached
2019-07-08 11:44:44 -04:00
Paul Licameli
8d29746af9
Classes no more instantiated after previous commit become namespaces
2019-07-08 10:56:17 -04:00
Paul Licameli
c7b888b903
WaveTrackView now delegates to the proper sub-view...
...
... by a redefined area subdivision policy in TrackPanel
So the SpectrumView, WaveformView, and associated ruler and handle classes
find real use, while WaveTrackView is really used only for its height and to
supply the delegate, and WaveTrackVRulerControls and WaveTrackVZoomHandle
are not used
There is also some anticipation of multiple track views
2019-07-08 10:27:43 -04:00
Paul Licameli
ecbbf7afe8
Cut and paste spectrum and waveform views to new files
2019-07-08 10:27:41 -04:00
Paul Licameli
96e5525646
Fill in the methods for Spectrum & Waveform views...
...
... Keeping WaveTrackView functioning
2019-07-08 10:18:15 -04:00
Paul Licameli
d36ce45381
Declare pointers to WaveTrack sub-views, with stub methods for now
2019-07-08 09:46:00 -04:00
Paul Licameli
28dcf45bbe
Cut and paste spectrum and waveform vruler controls into new files
2019-07-08 09:46:00 -04:00
Paul Licameli
32ae2e718f
Fill in the methods for Spectrum & Waveform VRuler controls...
...
... Keeping WaveTrackVRulerControls functioning
2019-07-08 09:46:00 -04:00
Paul Licameli
cffbf6f401
Separate classes for waveform, spectrum VRulers, stub methods for now
2019-07-08 09:46:00 -04:00
Paul Licameli
bc823294f2
Cut and paste waveform and spectrum vzoom handle functions
2019-07-08 09:46:00 -04:00
Paul Licameli
d991295efb
Implement classes SpectrumVZoomHandle, WaveformVZoomHandle
2019-07-08 09:46:00 -04:00
Paul Licameli
f7dc21436d
Separate functions for vertical zooming of spectrum and waveform
2019-07-08 09:46:00 -04:00
Paul Licameli
fa7de8ce3a
Remove always true third argument of WaveTrackVZoomHandle::DoZoom
2019-07-08 09:46:00 -04:00
Paul Licameli
cbdf5f24fe
New files to separate spectrum/waveform views and VRulers
2019-07-08 09:45:59 -04:00
Paul Licameli
3dc4216dcc
Rewrite bff30b6 delaying the effect...
...
... otherwise some stack overflows might happen in Refresh of TrackPanel or
AdornedRulerPanel
2019-07-08 09:39:48 -04:00