1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-19 22:27:43 +02:00

41 Commits

Author SHA1 Message Date
James Crook
7c819595bf Make Message command into an AudacityCommand. 2018-02-21 20:30:00 -05:00
James Crook
c0b3c0d13a Doxygen, Clips and Labels
- Classes renamed and better doxygenated
- GetInfo: Type=Clips added
- GetInfo: Type=Labels added.
2018-02-21 20:29:54 -05:00
James Crook
3017f8dddf OldStyleCommandType - It's on the way out.
This renaming makes it clearer which code is still using Dan Horgan's Command system.
2018-02-21 20:29:54 -05:00
James Crook
cf5ec042f3 Automation: AudacityCommand
This is a squash of 50 commits.

This merges the capabilities of BatchCommands and Effects using a new
AudacityCommand class.  AudacityCommand provides one function to specify the
parameters, and then we leverage that one function in automation, whether by chains,
mod-script-pipe or (future) Nyquist.

- Now have AudacityCommand which is using the same mechanism as Effect
- Has configurable parameters
- Has data-entry GUI (built using shuttle GUI)
- Registers with PluginManager.
- Menu commands now provided in chains, and to python batch.
   - Tested with Zoom Toggle.

- ShuttleParams now can set, get, set defaults, validate and specify
the parameters.
- Bugfix: Don't overwrite values with defaults first time out.
- Add DefineParams function for all built-in effects.
- Extend CommandContext to carry output channels for results.

We abuse EffectsManager.  It handles both Effects and
AudacityCommands now.  In time an Effect should become a special case of
AudacityCommand and we'll split and rename the EffectManager class.

- Don't use 'default' as a parameter name.
- Massive renaming for CommandDefinitionInterface
- EffectIdentInterface becomes EffectDefinitionInterface
- EffectAutomationParameters becomes CommandAutomationParameters
- PluginType is now a bit field.

This way we can search for related types at the same time.

- Most old batch commands made into AudacityCommands.
The ones that weren't are for a reason.  They are used by mod-script-pipe
to carry commands and responses across from a non-GUI thread to the GUI
thread.

- Major tidy up of ScreenshotCommand
- Reworking of SelectCommand
- GetPreferenceCommand and SetPreferenceCommand
- GetTrackInfo and SetTrackInfo
- GetInfoCommand
- Help, Open, Save, Import and Export commands.
- Removed obsolete commands ExecMenu, GetProjectInfo and SetProjectInfo
  which are now better handled by other commands.

- JSONify "GetInfo: Commands" output, i.e. commas in the right places.

- General work on better Doxygen.
    - Lyrics -> LyricsPanel
    - Meter -> MeterPanel
- Updated Linux makefile.
- Scripting commands added into Extra menu.
- Distinct names for previously duplicated find-clipping parameters.
- Fixed longstanding error with erroneous status field number which
  previously caused an ASSERT in debug.
- Sensible formatting of numbers in Chains, 0.1 not 0.1000000000137
2018-02-21 20:29:52 -05:00
Paul Licameli
cfa62d1d30 Fix a missed translation 2018-01-02 20:14:12 -05:00
Paul Licameli
cf4b9eb5c8 Define wxDirDialogWrapper, with localized default prompt and name 2018-01-01 17:50:04 -05:00
James Crook
e23acb39eb Bug 1679 - Screenshot Tools 5 second delay non-functional 2017-08-14 18:53:44 +01:00
Paul Licameli
eb7260320a Reviewed uses of release(); rewrote questionable ones in one file...
... Use of Destroy_ptr that was correct for 2.1.3 was no longer so after
rewrites of Screenshot tool window management, which caused crashes that were
worked-around with release(); but just use a bare pointer now.
2017-08-07 17:01:17 -04:00
James Crook
a5df25f762 Bug 1672 - Residual
Now clear the pointer to the screenshot window, if it is closed by some other route.
2017-07-03 21:55:56 +01:00
James Crook
51c5c73b3b Bug 1672 - OS window close button crashes Audacity if Screenshot Tools are open. File > Close hides Screenshot tools and then any closure method crashes Audacity. 2017-07-03 19:48:33 +01:00
James Crook
6cea9822c3 Bug 383 - Residual: Don't reset toolbars on a resize either. 2017-06-25 11:22:42 +01:00
James Crook
88cafa7a89 Bug 383 - Screenshot Tools doesn't checkmark re-opened Toolbars bars in View Menu
The underlying problem was related to resetting the toolbars when Screenshot tools were opened.  That's now no longer done.
2017-06-22 16:41:22 +01:00
James Crook
198dbc4c2a Support screenshots of toolbar variants.
Slightly tidied up the code too.
2017-06-10 21:33:05 +01:00
James Crook
8f66c3603d Screen capture preference panels too. 2017-06-07 15:59:25 +01:00
James Crook
acd55e95db Capture screenshots of effects.
Only available if you define EXPERIMENTAL_DOCS_AUTOMATION.
This code is still a bit ropey and not suited for prime time, but fine for our own (careful) use in preparing the manual.

It captures most of the effects, generator and analyze built ins and nyquist dialogs.  Use it by creating a track, making a selection and then clicking the 'All Effects' button in the screenshot tools.  The dialogs will be captured to your user directory.
2017-06-03 15:59:51 +01:00
James Crook
18cec363c3 Bug 1607 - 2nd Screen issue with MixerBoard and Karaoke Window
Also Screenshot tools.  No joy for log-window, as that is created before Audacity starts up and recognises it is on the second screen.
2017-05-14 17:59:45 +01:00
James Crook
c6b4e2fffe Add code to capture menus
So far, this only walks the menus, printing out their contents to debug.
2017-03-20 17:06:29 +00:00
Paul Licameli
fec4069d9d Some uses of Destroy_ptr let us remove some naked news 2016-08-10 11:05:51 -04:00
Paul Licameli
f9da767cbd Remove a friend declaration from Project, privatize a pointer member...
... and make implementation of that pointer a smart one.
2016-04-11 14:42:57 -04:00
Paul Licameli
b0c55e4386 Bug1358: On Mac, undocked toolbars and screenshot window should not vanish...
... when switching from Audacity to another application.
2016-04-11 06:44:38 -04:00
Paul Licameli
3481e678ea Manage the members of CommandOutputTarget with smart pointers 2016-04-06 16:06:12 -04:00
Paul Licameli
e8ad90b3c9 Manage Commands and CommandOutputTarget objects with smart pointers 2016-04-06 16:05:28 -04:00
Paul Licameli
83e9e7de97 Clone functions required by wxWidgets base classes can use safenew 2016-04-06 14:08:43 -04:00
Paul Licameli
990080ae7d Replace virtual with override wherever possible; eliminate needless virtual...
... for functions in final classes.

override is like const -- it's not necessary, but it helps the compiler to
catch mistakes.

There may be some overriding functions not explicitly declared virtual and I did
not identify such cases, in which I might also add override.
2016-02-26 12:35:38 -05:00
Paul Licameli
7824e94030 Harmlessly qualify classes as final (or explicitly comment not)...
... Should have no effect on generated code, except perhaps some slight faster
virtual function calls.  Mostly useful as documentation of design intent.

Tried to mark every one of our classes that inherits from another, or is a
base for others, or has abstract virtual functions, and a few others besides.
2016-02-24 20:58:30 -05:00
Paul Licameli
3f237daddc Use macro safenew for many allocations of wxWindow subclasses 2016-02-14 20:20:19 -05:00
Steve Daulton
d1d63c7b17 Fix layout of Screnshot tools window 2015-07-31 12:45:57 +01:00
Paul Licameli
d39eaa4e65 Remove WaveTrack.h from other headers 2015-07-28 10:02:05 -04:00
Paul-Licameli
5a6d5d1443 Add and use some ZoomInfo and ViewInfo member functions, so we can eliminate...
... miscellaneous direct uses of ZoomInfo::zoom to test and set zoom level.

This includes all the remaining assignments to it.

But moving TrackInfo::PositionToTime and TrackInfo::TimeToPosition into
ZoomInfo and using them is needed to eliminate many more uses.

Also #if'd out the unused AudacityProject::OnZoomToggle().
2015-07-19 11:44:02 -04:00
David Bailes
391bd1691c status bar state field. When you move to the menubar, the state field is no longer cleared. This was achieved by introducing a dummy field of width 0. When you first open a new audacity project, the state is stopped - previously the state only appeared after the first play/pause/etc command. 2015-06-02 15:18:46 +01:00
David Bailes
5c67bc38b3 Add a field to the status bar to show the state of Audacity, eg play/record/play pause. This is useful so that screen readers can easily read audacitys state. 2015-05-29 17:47:43 +01:00
Leland Lucius
cbcc78b183 Fix for bug #887
A little overkill, but low risk since the majority of the source
changed isn't actually used.
2015-05-16 17:57:01 -05:00
Leland Lucius
6688f122cf Fix for bug #887 2015-04-19 02:05:17 -05:00
benjamin.drung@gmail.com
277932dccb Remove trailing spaces. 2014-06-03 20:30:19 +00:00
martynshaw99
4ce2643d5f Remove the
// Indentation settings for Vim and Emacs
etc. lines from all files, as Campbell's patch (except for other changes to Languages.cpp)
2013-09-24 00:14:37 +00:00
james.k.crook@gmail.com
dba81b3f1c Cleanup: Fixed lots of trivial MSVC warnings. 2013-08-25 21:51:26 +00:00
v.audacity
ebb4f530bb Apparently, wxConfigBase::Write() does not update values for next access on all platforms unless Flush() method is called. Added many calls to wxConfigBase::Flush() to make sure the Rad() calls get the right values. 2012-08-02 06:03:19 +00:00
james.k.crook@gmail.com
69476e785c Fixed more internationalisation hints. 2012-03-20 15:36:02 +00:00
james.k.crook@gmail.com
6cc4b04784 Bug:382 Resetting control toolbar whilst audio was playing led to attempts by gAudio to update a non-existent window and crash on OSX. We now stop the current monitoring on a toolbar reset. 2011-05-03 12:00:45 +00:00
v.audacity
93485f5c50 ControlToolBar now appears in GUI as "Transport Toolbar" instead of "Control Toolbar", to better relate it to the Transport menu. 2010-11-16 01:18:39 +00:00
ra
e74978ba77 Locate and position the current Audacity source code, and clear a variety of old junk out of the way into junk-branches 2010-01-23 19:44:49 +00:00