Commit Graph

8168 Commits

Author SHA1 Message Date
Paul Licameli
358aac3181 Change some behavior of ShuttleGui::AddBitmapButton...
... which is not now used, but soon will be
2020-01-23 19:06:17 -05:00
Paul Licameli
46e99bb038 Move EffectPresetsDialog out of Effect.cpp 2020-01-23 15:23:46 -05:00
Paul Licameli
808d4accfd Remove some friends from Effect 2020-01-23 15:23:46 -05:00
Paul Licameli
e5625bfb89 Move EffectDialog out of Effect.cpp 2020-01-23 15:23:43 -05:00
Paul Licameli
68281fe0ee Split up Ruler::Updater::Update 2020-01-23 13:53:54 -05:00
Paul Licameli
580ad8221e Mutable cache for ruler updates, so Draw functions can be const 2020-01-23 13:51:12 -05:00
Paul Licameli
a2babc646f Use the correct font to find lead size for custom fonts 2020-01-23 13:39:22 -05:00
Paul Licameli
99064d6dd5 Mutable cache for Ruler's chosen fonts 2020-01-23 13:35:32 -05:00
Paul Licameli
21306d6186 Remove indirection storing number scale in Ruler 2020-01-23 13:27:05 -05:00
Paul Licameli
fec3b11674 Demote more of the ruler updating procedure into Updater 2020-01-23 13:18:47 -05:00
Paul Licameli
fe4db0dd8e Nix Ruler member vars used only for grid drawing; more const methods 2020-01-23 12:56:11 -05:00
Paul Licameli
ef44143cbf Fix a comment 2020-01-23 12:56:10 -05:00
SteveDaulton
9a0ee24c5c bug 2290: Add error message
See https://bugzilla.audacityteam.org/show_bug.cgi?id=2290#c9
2020-01-23 12:59:53 +00:00
Paul Licameli
10eb5864ac Don't quit update of vertical ruler of short spectrogram views...
... This caused visible anomalies, for instance when dragging the stereo track
separator between channels.  Numbers from one channel used to be drawn over
the ruler of the opposite channel.
2020-01-22 20:21:45 -05:00
Paul Licameli
537ace493e Don't draw 0 at top of spectrogram scale (bug in 8cf7d0b) 2020-01-22 19:58:53 -05:00
Paul Licameli
ec723466ba Invalidate Ruler, whenever anything the Updater uses is reassigned 2020-01-22 13:38:37 -05:00
Paul Licameli
edba1b5b28 Avoid unnecessary update before drawing ruler grid...
... which matters for some displays such as in Equalization, though not for
track vertical rulers
2020-01-22 13:38:36 -05:00
Paul Licameli
b0154f89e0 Move Tick and TickCustom methods to temporary worker structure...
... which forces us to be more explicit about just what parts of the Ruler
state are used in it (when we construct it) and be sure they don't modify it
2020-01-22 13:38:34 -05:00
Paul Licameli
8cf7d0b8e9 Make Ruler::Tick and TickCustom const member functions...
... on the way to making them not (direct) member functions of Ruler.

Hoist the choice of font and destination label array out of them, and
group other outputs into an argument.
2020-01-22 12:51:08 -05:00
Paul Licameli
2c0afdd77a TickSizes::LabelString takes one less argument...
... so that Ruler::Tick uses major in one less place
2020-01-22 12:09:52 -05:00
Paul Licameli
80dd2fbec9 Further factoring of font size setting...
... and fix uninitialized lead size in case of user-supplied fonts (though
this capability isn't yet used anywhere)
2020-01-22 12:09:52 -05:00
Paul Licameli
e08543650b Factor function to choose ruler fonts 2020-01-22 12:09:52 -05:00
Paul Licameli
3876031669 Group ruler fonts and lead into a structure 2020-01-22 12:09:52 -05:00
Paul Licameli
80f884b0b7 Don't need extra indirection handling wxFont, see documentation of it 2020-01-22 12:09:52 -05:00
Paul Licameli
05c80cfb4f narrow scopes of loop indices 2020-01-22 12:09:52 -05:00
Paul Licameli
605a4056c9 Fix bug in 3a64b17...
... which make, for instance, excessive tick marks when in Mel spectrogram
scale
2020-01-22 12:08:37 -05:00
Paul Licameli
a14d5c348a Eliminate Ruler::mDC 2020-01-21 19:58:05 -05:00
Paul Licameli
3a64b172c8 Demote duplicated code in Ruler into a static function 2020-01-21 19:36:02 -05:00
Paul Licameli
8729f3fb8e Simplify Ruler with std::vector members 2020-01-21 16:07:27 -05:00
Paul Licameli
7682961f53 Remove unused members of Ruler 2020-01-21 15:17:51 -05:00
Paul Licameli
a84391b4a2 Eliminate some members from Ruler...
... Move some fields used only during formatting into a temporary structure.

(And fixing a minor problem with uninitialized variables in case of logarithmic
scale, which made it unpredictable how Plot Spectrum with logarithmic
frequencely axis formatted numbers.)
2020-01-21 12:53:33 -05:00
SteveDaulton
32a60103b4 bug 2290: Bail if no DTMF sequence 2020-01-20 21:29:50 +00:00
Paul Licameli
9cd7a5eaf3 Bug2277 partial: in dB ruler, always draw midline value if in range...
... and also draw the zeroes if in range, taking precedence over the extreme
values (which might be positive dB values when zoomed out or scrolled).

See comments 10 and 11 in the bug report.
2020-01-20 12:29:28 -05:00
Paul Licameli
72d8a927e7 Fix Linux build 2020-01-20 07:17:50 -05:00
Paul Licameli
e110f66ff8 PrefsPanel classes registered; PrefsDialog.cpp independent of headers 2020-01-20 00:19:13 -05:00
Paul Licameli
1555fd84a4 define PrefsPanel::Registration 2020-01-20 00:16:13 -05:00
Paul Licameli
b5c59b29a7 LoadCommands.cpp doesn't depend on individual command classes...
... Remove many #includes and macros.  Use instead a hash generated from the
registry.
2020-01-19 19:21:12 -05:00
Paul Licameli
2522459637 Each command class registers itself 2020-01-19 19:21:12 -05:00
Paul Licameli
0ca5775234 Eliminate one of the ## macro hacks in LoadCommands 2020-01-19 19:21:12 -05:00
Paul Licameli
bbdc27b462 LoadEffects.cpp doesn't depend on individual effect classes... 2020-01-19 19:16:51 -05:00
Paul Licameli
69dab8b552 Each built-in effect class registers itself with BuiltinEffectsModule 2020-01-19 19:16:51 -05:00
Paul Licameli
4579835911 Eliminate one of the ## macro hacks in LoadEffects 2020-01-19 19:16:51 -05:00
Paul Licameli
83be5b3045 All loaded built-in effects have nullary constructors 2020-01-19 19:16:50 -05:00
Paul Licameli
1f283a8981 Fewer includes of WaveformSettings.h, SpectrogramSettings.h...
... See ultimate origin of some of the deleted lines at 4724c6a

Whatever change it is that needs loading by LoadPrefs -- do it instead right
after any possibility of changes to the relevant preferences, in the Commit()
functions of SpectrumPrefs and WaveforPrefs
2020-01-19 19:11:14 -05:00
Paul Licameli
2ec2ad378d Break dependency cycle introduced at a69fba9 2020-01-19 14:36:28 -05:00
Paul Licameli
f2ed21f9e5 Fix some comments 2020-01-19 13:23:30 -05:00
Paul Licameli
2570b56176 Rename Maybe and its members more like std::optional of C++17 2020-01-19 11:38:12 -05:00
Paul Licameli
a69fba9990 TracksPrefs does not use hardcoded list of all view types...
... It does have some duplication of string values, but only for purposes of
upgrading old config files.
2020-01-18 20:28:54 -05:00
Paul Licameli
d2ccde77e7 Remove another exhaustive switch on view sub-types, in Nyquist.cpp 2020-01-18 20:28:53 -05:00
Paul Licameli
7cff170cf7 Sub-view objects report their complete type, not just an enum value 2020-01-18 20:28:53 -05:00