1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-14 23:57:40 +02:00

772 Commits

Author SHA1 Message Date
Loss
e787694f07 Implementation of Timer Toolbar
PRL:  Rebased onto recent master, fixed compilation and indentation, added new
files to the XCode project, added an EXPERIMENTAL flag
2019-12-31 17:42:54 -05:00
Paul Licameli
21e7b9f2de TranslatableString for prompts of choice controls 2019-12-23 15:39:49 -05:00
Paul Licameli
c682718ee4 TranslatableString for toolbar button labels 2019-12-23 15:35:47 -05:00
Paul Licameli
75996a851c ShuttleGui::AddChoice and TieChoice take TranslatableStrings 2019-12-23 15:35:47 -05:00
Paul Licameli
49cab86fc1 TranslatableString for tooltips and status bar messages 2019-12-20 21:54:49 -05:00
Paul Licameli
5909f67fdb NumericTextCtrl::SetName takes TranslatableString 2019-12-20 21:38:05 -05:00
Paul Licameli
dc39f22442 AudacityMessageBox takes TranslatableString message and caption 2019-12-20 21:32:50 -05:00
Paul Licameli
e3ea93a624 Define and use function Verbatim...
... in cases of "TranslatableString" that are not really translated.

This makes it easier to scan the code for such unusual constructions of
TranslatableString, distinct from mere mentions of the TranslatableString type.
2019-12-19 22:49:23 -05:00
Paul Licameli
54e2bbd8ff Remove TranslatedInternalString, use ComponentInterfaceSymbol 2019-12-16 10:58:05 -05:00
Paul Licameli
e875adaa6f AButton::SetToolTip takes TranslatableString 2019-12-16 10:58:05 -05:00
Paul Licameli
681950fc61 TranslatableString for names, labels, tooltips of wxPanelWrapper...
... and Grabber too
2019-12-16 10:58:05 -05:00
Paul Licameli
53ee9c9800 TranslatableString for titles, names, labels of wxDialogWrappers...
... Found one missed translation in CommandTargets.cpp
2019-12-16 10:58:05 -05:00
Paul Licameli
dabf5c0e39 remove unnecessary qualified names 2019-12-10 09:58:38 -05:00
Paul Licameli
72df562c4a Conversion of TranslatableString to wxString is private 2019-12-01 18:17:57 -05:00
Paul Licameli
e4a7c9ba5b Uses of TranslatableString as value of XO macro...
... It is not implicitly convertible from wxString, compelling many uses of
the new type to fix compilation.
2019-12-01 18:05:20 -05:00
Paul Licameli
b256a4fd1a Less code directly inside ShuttleGui code blocks...
... Trying to reduce that just to chained calls on S, or conditional and looping
logic for variations in layout.

Lift some declarations to higher scope; or use expressions that avoid local
variables; or even use lambdas for more complicated computation of arguments
for the member functions of S.
2019-11-29 15:16:51 -05:00
James Crook
9e69be9f6f Bug 2182 - Updating Audacity can cause messed up toolbar layout 2019-08-30 09:28:26 +01:00
Paul Licameli
302ede1043 Bug2158: Selection bar readouts should update properly with drop-down 2019-07-31 16:39:37 -04:00
James Crook
711e600eab Bug 1371 - Corrected fix. 2019-07-31 13:33:41 +01:00
James Crook
5e7368c3a8 Bug 1371 - Device Toolbar does not restore large widths when docked. 2019-07-30 14:03:28 +01: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
582f662404 Bug2172: ruler pin button background should update for theme change...
... It stopped doing so at 1c1aca5

Because the recreating of the ruler's button now happened earlier than for
the several toolbars, not later, but there was a side-effect on the theme
that the toolbar updates did, that the ruler relied on, namely the updating
of button background images.

Now ruler also invokes that step.

(But wouldn't it be better to do that update in just one place?  I am not
sure what that place should be.  ThemeBase::LoadPreferredTheme?)
2019-07-23 02:07:00 -04:00
Paul Licameli
7e1c469d7f Remove some unnecessary #include directives 2019-07-09 12:45:50 -04:00
Paul Licameli
9b98f4be0c ScrubbingToolBar consumes less idle time 2019-07-07 12:20:59 -04: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
8c59f66583 ScrubbingToolBar eats less idle time after commit 192530d 2019-07-05 13:30:11 -04:00
Paul Licameli
eb4eba6325 AdornedRulerPanel updates its play region in idle time...
... Eliminating TP_DisplaySelection and making ProjectWindow independent of
AdornedRulerPanel
2019-07-03 23:38:33 -04:00
Paul Licameli
500ccb60b3 Free ControlToolBar from cycles. That's all the toolbars now! 2019-07-03 21:38:06 -04:00
Paul Licameli
ca8740b510 StopIfPaused is now a member function of ProjectAudioManager 2019-07-03 17:00:08 -04:00
Paul Licameli
c8c76cf294 Cut and paste functions into ProjectAudioManager.cpp 2019-07-03 16:52:19 -04:00
Paul Licameli
13c2e4de0f Move members from ControlToolBar into class ProjectAudioManager...
... and ControlToolBar is included in fewer places
2019-07-03 16:52:16 -04:00
Paul Licameli
977b46cda2 Move CanStopAudioStream into ProjectAudioManager 2019-07-03 16:34:47 -04:00
Paul Licameli
68999934e0 ProjectAudioManager doesn't use ProjectWindow, which doesn't use...
ControlToolBar, after we make a system to register functions that calculate
necessary minimum widths for status bar fields.

Also let Scrubbing.cpp register its own strings.

Also be sure to size the status field sufficiently for "Playing at Speed".
2019-07-02 21:01:54 -04:00
Paul Licameli
9f61b67965 Manage some more status bar changes with ProjectStatus 2019-07-02 21:01:34 -04:00
Paul Licameli
e2362bc25a Move project status string management to new attached object class 2019-07-02 21:01:34 -04:00
Paul Licameli
2a06b10884 Make objects attached to AudacityProject non-copyable...
... except for Tags; also some uses of final and explicit

This caught a mistake in Scrubbing.cpp
2019-07-02 19:51:24 -04:00
Paul Licameli
34e9cb6171 Start and stop record or playback scrolling in idle time 2019-07-01 22:51:20 -04:00
Paul Licameli
2a87ea77cf Momentary Stop push-down happens in yield to the idle time handler...
... So that ControlToolBar::StopPlaying now does nothing directly to the
buttons, and can be moved to another place with no dependency on ControlToolBar
2019-07-01 22:51:15 -04:00
Paul Licameli
5ab3986261 Pop up the Stop button in idle time...
... This also causes a momentary push-down of the stop button, which happens
in ControlToolBar::StopPlaying, really to be visible, as was apparently the
intent.

For instance, when playing, then clicking in the quick-play ruler to restart
the play elsewhere.
2019-07-01 22:51:13 -04:00
Paul Licameli
830f772625 Update Play button appearance in idle time...
... so most calls to ControlToolBar::SetPlay are removed.  One remains in
TransportMenus, which will not be problematic for untangling dependencies,
and one remains where the toolbar remakes its own buttons.

But the routines that start and stop the streams, importantly, don't use it.
2019-07-01 21:25:50 -04:00
Paul Licameli
cac04e9fb8 Do not use ControlToolBar's Record button as a state variable 2019-07-01 19:48:52 -04:00
Paul Licameli
923128731d Do not store pause state in ControlToolBar...
... Move that into ProjectAudioManager instead, and update the button, only to
reflect it, in idle time.

However, AudioIO also has its mPaused member variable, and it is not obvious
that it was always kept the same as the button state.  No attempt was made
here to identify and fix any bugs, but only to preserve behavior.
2019-07-01 19:48:52 -04:00
Paul Licameli
8b549ea07f Another overload of ControlToolBar::OnRecord taking bool...
... so that it's called directly where needed without the roundabout of
SetInt in an event, and there is no checking of the state of a button first
2019-07-01 19:48:52 -04:00
Paul Licameli
7d504ba015 ControlToolBar uses idle events to update status message for itself 2019-07-01 19:48:51 -04:00
Paul Licameli
ce7773b7ab And so, ControlToolBar.cpp does not need AdornedRulerPanel.h 2019-07-01 19:44:54 -04:00
Paul Licameli
e815949535 This call to redraw overlays when play starts isn't needed...
See commit aeece118e8950d2aeee60ef4e1b2a2ee752129cd which changed it from
the original call intended to hide the quick-play indicator in case that is
how the play starts; but other things in that commit were sufficient to
guarantee that
2019-07-01 19:37:55 -04:00
Paul Licameli
192530d8a5 Free ScrubbingToolBar from cycles...
... by having it update itself in idle time, not needing a push from Scrubber

Shrinking that remnant of the big strongly connected component to 6
2019-07-01 08:43:27 -04:00
Paul Licameli
748c8d63d8 Bug2145: crash ctrl-clicking on play-at-speed button...
... Problem began at commit 46bf5a82fcb20a5ade26c456fec8519172b7bc1d
2019-06-30 20:46:03 -04:00
Paul Licameli
ed5c92450d CommitRecording out of ControlToolBar 2019-06-24 12:43:08 -04:00