1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-02-06 03:32:09 +01:00
Commit Graph

51 Commits

Author SHA1 Message Date
Paul Licameli
dabf5c0e39 remove unnecessary qualified names 2019-12-10 09:58:38 -05:00
James Crook
529e1b2b38 Bug 2120 - Residual: Truncation of Selection toolbar too.
The problem was more general, and it affected the selection toolbar too, if undocked.
2019-07-28 17:30:35 +01:00
James Crook
29b0e31ee6 Bug 2120 - Spectral Selection Toolbar can be truncated when undocked 2019-07-28 13:08:34 +01:00
Paul Licameli
ce31e2f35e Selection toolbars use a little less idle time after commit f0ae4c3 2019-07-05 14:01:57 -04:00
Paul Licameli
f0ae4c3858 ProjectWindow does not depend on selection toolbars...
... Freeing SelectionBar and SpectralSelectionBar from cycles.

Also fixing a minor problem:  if two projects are open, and one is playing or
recording, and you switch windows -- then the audio time in the selection bar
of the other project could be updated.
2019-06-12 21:02:11 -04:00
Paul Licameli
c6f24d864b Construct all toolbars with back-reference to the project...
... and eliminate many uses of GetActiveProject
2019-06-12 20:52:36 -04:00
Paul Licameli
e6d7a72a73 Registration of toolbar factory functions...
... reduces direct dependencies of ToolManager.cpp.

This frees four files from cycles:
DeviceToolBar
EditToolBar
MeterToolBar
MixerToolBar

Leaving 66 files still in the big s.c.c.
2019-06-12 16:01:53 -04:00
Paul Licameli
35892fc869 Rearrange setting time & freq formats for numeric controls...
... Just one low-level function for each that simply sets; just one high-level
function for each that also pushes notifications; and to make that work,
toolbars need some rewriting to avoid recursion when the notifications they
post come back to them.
2019-05-28 19:23:42 -04:00
Paul Licameli
3416b5bad6 Toolbars accessed by static Get() functions, not through AudacityProject 2019-05-24 16:08:29 -04:00
Paul Licameli
62899a32f4 All things with an UpdatePrefs() message listen for an event...
... Still to do, improve the handling of updates of only subsets of the prefs
2019-05-20 21:38:13 -04:00
Paul Licameli
ddaadfb7e7 Remove NumericTextCtrl.h from other headers or comment why you can't 2019-05-16 19:01:00 -04:00
Paul Licameli
6c57948d8f Remove unnecessary #include-s from .cpp files...
... Unnecessary because transitively included.

But each .cpp file still includes its own .h file near the top to ensure
that it compiles indenendently, even if it is reincluded transitively later.
2019-05-16 17:21:00 -04:00
Paul Licameli
a915a510bd include <wx/setup.h> in all files where wxUSE* macros are used...
... even if it's redundant; improving on what was done at b47e2f9
2019-03-23 14:56:02 -04:00
Paul Licameli
5e7d41ec07 Each .cpp/.mm file includes corresponding header before any other...
... except Audacity.h

This forces us to make each header contain all forward declarations or nested
headers that it requires, rather than depend on context.
2019-03-17 22:54:52 -04:00
Paul Licameli
906e55f047 Experimental.h in all .h or .cpp files that directly use EXPERIMENTALs...
... except Audacity.h; and in no others.

Do so even if Experimental.h gets multiply included, as in both the .h and
.cpp files.

This makes it easier to do a text scan to be sure there are no unintended quiet
changes of meaning because of omission of Experimental.h when the flag is
an enabled one.

Also move inclusions of Experimental.h earlier.

Also don't require Experimental.h to be preceded by Audacity.h to define
EXPERIMENTAL_MIDI_OUT correctly.
2019-03-17 22:54:00 -04:00
Paul Licameli
dfeb7e18aa Type aliases for some uses of ComponentInterfaceSymbol...
... to be replaced later with distinct types

Also changing FamilyId => Family in function names

Also NumericFormatId => NumericFormatSymbol
2019-03-14 17:26:20 -04:00
David Bailes
bfec6f0aa2 Spectral Selection toolbar: minor accessibility change.
Change the accessible name of the combo box from "Spectral selection" to "Show". It's less verbose, and brings it into line with the "Show" combo box in the Selection toolbar.
2018-07-05 11:44:00 +01:00
James Crook
0dd3aef6bc Bug 891 - Number-entering bug in kHz High Frequencies. Unfriendly to have to enter High first if new Low is above High.
Spectral frequencies now behave like temporal selection, nudging the 'other' value up or down so that the low and high values don't cross over.
2018-04-09 16:30:09 +01:00
David Bailes
f9ee3cdc45 Fix some of the accessibility names that disappeared with the move to WX 3.1.1
The main change in wxWidgets for the setting of accessibility names is:
7dab555f71 (diff-04f5191d86f95b1c4d5d9c979da65878)

Before this change, with wxUSE_ACCESSIBILITY set to 1, for wxWindow and all the classes derived from it, wxWidgets automatically created accessible objects to handle accessibility itself. Because the way wxWindowAccessible::GetName() was written, the accessibility names of lots of windows and controls had to be set using SetName().

After the change, by default, the accessibility of instances of these classes is handled by Windows. Where the accessibility of a control is handled by Windows, then the accessibility name is automatically set to so the appropriate value. However, an accessible can still be set using SetAccessible() then wxWidgets handles the accessibility for this object.

So for many controls we can just leave Windows to set the accessibility name. However, for controls which don't have any visible labels, or where we want to accessibility name to different from the visible text, then we have to set an accessible object for that control, and then call SetName(). The Class WindowAccessible can be used for this purpose. And for custom widgets, like the TrackPanel, and the NumericTextCtrl, SetAccessible() still has to be called, since they need bespoke accessible objects

So in the cases where we want the accessible name to be different from normal, we now need to explicitly set an accessible object. (Before, this wasn't needed, as accessible objects were automatically created.).

Some notes of the fixes included in this commit:
1. The fixes cover the main window, preferences, and built-in effects. Other fixes will follow.

2. In ShuttleGui, I've set accessible objects for wxTextCtrls and wxSliders. So all of these widgets still need the name set. This was done because there are a lot of instances where these controls need non standard accessibility names, and so it saves having to put lots of SetAccessibles throughout the code.

3. For wxPanel, Windows picks up the accessibility name from the label, and so SetLabel() can be used instead of SetName(). This is just as well, since for windows that contain other windows or controls, setting WindowAccessible as the accessibility object breaks the accessibility tree.

Note that at some stage a lot of calls to SetName() can be removed from the code as they are no longer needed, but it might be better to leave them there for the moment, just in case they are unexpectedly needed.
2018-04-06 17:24:40 +01:00
Paul Licameli
0fb02a8024 IdentInterfaceSymbol in NumericTextCtrl; don't persist translated 2018-03-28 14:00:17 -04:00
James Crook
a4a588610e Revert "Bug 893 - Spectral Selection Toolbar misnamed"
This reverts commit eaada3a51d.
2018-03-26 20:18:37 +01:00
James Crook
eaada3a51d Bug 893 - Spectral Selection Toolbar misnamed 2018-03-25 21:41:56 +01:00
James Crook
e8da2f82a5 Wording.
- Changes, mostly to capitalization, per https://wiki.audacityteam.org/wiki/Wording
- Removed some dead comments.
- Added a very few i18n-hints
- Per consensus, removed ':' in some strings read by screen readers.
2018-02-26 14:39:30 +00:00
Paul Licameli
5724780be9 NumericTextControl ctor arguments...
... follow wxWidgets conventions for first two arguments; add Options
2018-02-21 19:21:02 -05:00
Paul Licameli
c6696f1b49 Move definition of _ and related into Internat.h 2018-01-06 21:03:32 -05:00
James Crook
6cb6652464 Fix Linux: triple height Selection Toolbars 2017-07-29 17:39:33 +01:00
James Crook
f418de2f60 Rearrange Selection Toolbar fields, and fix spacings.
The layout of SelectionToolbar and SpectralSelction Tollbar now match, and they can be placed nicely side by side.
The borders around controls have been tweaked.
Extra vertical spacer lines have been added into the title row.
2017-06-01 16:48:28 +01:00
James Crook
24c2c6e070 Bug 1633 - Spectral Selection Toolbar incorrect above 100 kHz 2017-04-16 22:15:48 +01:00
James Crook
c17a7f535e Improve repainting after a theme change.
Now most things repaint properly after a theme change.  The sliders on the tracks don't yet.
2017-04-04 14:43:47 +01:00
Paul Licameli
5036583549 Fewer inclusions of AudacityApp.h 2017-03-17 17:52:24 -04:00
Paul Licameli
de9579dbe9 Bug1193: Mac font sizes as in 2.1.1 for ruler, sel toolbars 2016-06-22 14:21:04 -04:00
Paul Licameli
e844b07a46 All Toolbars define RegenerateTooltips; invoke during project init...
... and UpdatePrefs
2016-06-12 00:00:04 -04:00
Paul Licameli
0c9deb398c Fix mac build. No standard headers in Audacity.h. 2016-03-01 12:22:37 -05:00
Paul Licameli
1c07741d57 Sizers are owned by wxWindow objects when added, so use safenew, or...
... use unique_ptr in the interim between building them and adding.

This checks eliminates some naked news, which were not paired with deletes.
2016-02-18 18:58:38 -05:00
Paul Licameli
4d78e353c3 Revert "sizers"
This reverts commit 84c0a0b666.
2016-02-18 14:50:52 -05:00
Paul Licameli
84c0a0b666 sizers 2016-02-18 02:54:50 -05:00
Paul Licameli
df6a7c5464 More uses of safenew for classes we derive from wxWindow classes...
... Also removed some unnecessary deletes of widgets that are managed by parent
windows
2016-02-14 20:39:28 -05:00
Paul Licameli
3f237daddc Use macro safenew for many allocations of wxWindow subclasses 2016-02-14 20:20:19 -05:00
Paul Licameli
9c483e2e86 Add (redundant) #include "Experimental.h" in all .cpp files using the symbols 2015-08-31 17:56:10 -04:00
Paul Licameli
1219cacaf2 Delete key in center/width spectral selection toolbar works 2015-07-29 12:11:01 -04:00
Paul Licameli
7f7506dbcd Bugs 895, 1048: Now typing '-' can set upper or lower frequency to undefined 2015-07-25 14:41:44 -04:00
Paul Licameli
cf9851c313 Bug 891: Changing low or high frequency in spectral selection toolbar...
... will not change the opposite bound, but will instead be constrained by it.
2015-07-25 11:41:52 -04:00
Steve Daulton
a9bc6d2f53 Further fix for bug 957.
Tool Tip was missing space between "Spectral" and "Selection" when
selected language updated.
2015-05-30 12:16:40 +01:00
Paul Licameli
1ac7d15e5c Bug957 - Tooltip text for Spectral Selection toolbar 2015-05-25 10:36:27 -04:00
Paul-Licameli
7d6de21e3a Enh809 - Add persistency of spectral selections, including those in labels 2015-04-10 15:20:50 -04:00
stevethefiddle@gmail.com
9a0d4b2364 Fix for Spectral Selection bar layout from David Bailes. 2014-12-20 15:39:35 +00:00
james.k.crook@gmail.com
4ed7396b24 Spectral Selection ToolBar Accessibility, by David Bailes. (untested by me as I am Jawless) 2014-11-29 16:50:08 +00:00
james.k.crook@gmail.com
c900da7a56 Spectral SelectionBar tweaks from Paul Limaceli.
- Center and Width now the default
- Above choice persists.
- Accessibility changes (focus was lost on changing choice)
2014-11-10 21:09:28 +00:00
james.k.crook@gmail.com
13fee220d5 Add SpectralSelectionBar:: prefixes for ISO compliance. (g++ won't compile this otherwise). 2014-11-09 21:27:46 +00:00
james.k.crook@gmail.com
8d2d9ff9aa Spectral Selection Toolbar now supports high-and-low as well as center-and-width.
Patch from Paul Licameli.
2014-11-09 18:17:44 +00:00