1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-04-06 14:27:36 +02:00
Commit Graph

31 Commits

Author SHA1 Message Date
Paul Licameli
cf948ece52 Eliminate duplications of string literal "Nyquist Prompt" 2021-05-14 13:08:02 -04:00
Paul Licameli
c5ebc396eb Audacity.h has shrunk to nothing, now remove it! 2021-05-10 00:05:23 -05:00
Paul Licameli
b9ca0acb4a Move some macros out of Audacity.h into various header files 2021-05-10 00:05:23 -05:00
Paul Licameli
e653b4aaf8 Eliminate Experimental.h, configure compile options instead...
... This makes it impossible to forget to include the EXPERIMENTAL definitions
(such as when cutting and pasting code) and so get unintended quiet changes of
behavior.

The EXPERIMENTAL flags are now specified instead in new file Experimental.cmake
2021-04-27 12:40:07 -04:00
JohnColket
a3d9f41fb4 Bug 2582 - Enh: Repeat last Process, Part 2 (#734) 2021-02-03 11:02:49 +00:00
Paul Licameli
e89546d941 Keep EXPERIMENTAL_EFFECTS_RACK compilable 2021-02-01 20:20:04 -05:00
Paul Licameli
23f32a8319 Remove some unnecessary #include directives 2021-01-30 12:37:47 -05:00
JohnColket
549dacf054 2582 enh repeat last process (#722)
* Enhancement: Add Repeat Last Process

* add include UndoManager.h
2021-01-15 14:22:38 +00:00
Paul Licameli
4ca3e7096f Track factory cleanup (#646)
* Don't need TrackFactory to make LabelTrack

* Don't need TrackFactory to make NoteTrack

* Don't need TrackFactory to make TimeTrack, or ZoomInfo in the factory

* Remove some forward declarations

* Rename TrackFactory as WaveTrackFactory, move it out of Track.cpp
2020-08-22 18:44:49 -05:00
Paul Licameli
88ba35f520 Fix exception handling, as when trying to edit read-only database... (#607)
... Problem is that the delayed undo handling (in the lambda in AudacityApp ::
OnExceptionInMainLoop) should itself have only non-throwing steps.

But there was a redundant attempt at autosaving in ProjectHistory ::
RollbackState, which itself requires another data base write.

But when "rolling back" the in-memory structures to whatever the current state
of undo history is, we can assume that any required autosave was completed
before the current state of undo history was set.

So for rollback only, do not autosave again when discarding changes and
restoring the state.  (But do it still, throwing on failure, when moving around
in the undo history, among saved states.  We do want to keep the last autosave
consistent with the in-memory state.)
2020-07-08 00:44:41 -05:00
Leland Lucius
d39590cf41 AUP3: First round of updates
!!! THERE WILL NO DOUBT BE BUGS !!!

This is a big one and there's still several things to
complete. Just want to get this in the wild to start
receiving feedback.

One big thing right now is that it will NOT load pre-aup3
files.  An importer is on the way for that.
2020-07-01 02:30:18 -05:00
Paul Licameli
3646bb8afe Bug2431: Enable checkbox for ALL realtime effects should work...
... not just for AudioUnits, but also WahWah, VST, etc.
2020-05-29 20:54:45 -04:00
Paul Licameli
4d09705a73 Change XO to XXO in many more places, with no effects at all...
... because the two macros have the same expansion, and are both checked for
in the --keyword arguments passed to msgfmt by locale/update_po_files.sh.

This commit makes ONLY such changes, and comments in Internat.h.  It is big
but quite harmless.

The intention is to introduce a type distinction in a later release, by defining
XXO differently.  XXO is used where & characters in strings (for hotkeys of menu
items or control prompts) are permitted, XO where not.
2020-05-22 13:07:50 -04:00
Leland Lucius
8ae9a708fe Fix disabled OK button in effects when monitoring 2020-03-31 13:54:02 -05:00
Paul Licameli
9093364b8c Fix other problems since commit f6e5696...
... Problem with static initialization order of ReservedCommandFlags, caused
wrong enablement of menu items (at least on Mac), such as Plot Spectrum or
Contrast enabled when there was no selection
2020-01-28 17:49:07 -05:00
Paul Licameli
b5b9ab6ecd EffectUIHost::BuildButtonBar uses ShuttleGui 2020-01-23 19:06:23 -05:00
Paul Licameli
c28c170cc0 EffectUIHost::Initialize uses ShuttleGui 2020-01-23 19:06:23 -05:00
Paul Licameli
eb3e5d8f6f Factor EffectUIHost::Initialize 2020-01-23 19:06:23 -05:00
Paul Licameli
1c84932dfa EffectUIClientInterface::PopulateUI takes ShuttleGui & 2020-01-23 19:06:23 -05:00
Paul Licameli
e5625bfb89 Move EffectDialog out of Effect.cpp 2020-01-23 15:23:43 -05:00
Paul Licameli
e8c8db8b33 Parent and dialog factory arguments of Effect::DoEffect are optional 2020-01-08 16:47:21 -05:00
Paul Licameli
ed9871d6b5 Eliminate GetActiveProject in EffectUI.cpp...
... This changes visible behavior.

If a realtime effect was open (say, AUGraphicEQ on Mac), and there were multiple
projects, then the window was associated with one of the projects.

But the "Apply" button could apply the effect to the active project, even if
that was not the associated one.  But the associated project was queried for
the existence of a selection.

Now, EffectUIHost::OnApply consistently examines and changes only the associated
project, even if it is not active.

You have to close the window and reopen it with the other project if you really
want to change the other.

You can't have two realtime effects open at once, even if for different
projects.  To overcome that limitation, we would have to make
RealtimeEffectsManager store state per-project, not globally.
2020-01-06 11:30:48 -05:00
Paul Licameli
723c5256c0 Don't call GetActiveProject when constructing EffectUIHost...
... relying on guarantees in the previous commit
2020-01-06 11:30:47 -05:00
Paul Licameli
bb26b2f2c4 Require a ProjectWindow as ancestor of effect dialog...
... by passing parent as reference, not pointer, and testing in the dialog
factory function.

This is important so that we know the lifetime of an effect dialog, even when
it is non-modal, is bounded by the lifetime of the associated project.
2020-01-06 11:30:47 -05:00
Paul Licameli
8bbc22e47a Cut and paste; EffectManager doesn't need EffectUI; cycle of 3 broken! 2020-01-05 16:11:55 -05:00
Paul Licameli
91c45dd32a Move static EffectManager::DoEffect into new namespace 2020-01-05 16:11:55 -05:00
Paul Licameli
23a0206d2a Remove CreateUI; pass dialog factory to effect client instead 2020-01-05 16:11:55 -05:00
Paul Licameli
738c5c5e90 Remove Effect::PromptUser...
... it was only a thin wrapper of ShowInterface when not overridden, not
clearly serving a distinct purpose.
2020-01-05 16:11:55 -05:00
Paul Licameli
fb678c0eb8 Remove EffectHostInterface::Apply so Effect doesn't use EffectManager 2020-01-05 16:11:54 -05:00
Paul Licameli
8c4d8db133 Move classes EffectUIHost and EffectPanel to EffectUI.cpp 2020-01-05 16:11:54 -05:00
Paul Licameli
91536d734f Rename EffectRack.* as EffectUI 2020-01-05 16:11:54 -05:00