1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-14 09:03:54 +01:00
Commit Graph

786 Commits

Author SHA1 Message Date
Paul Licameli
9029eee5bd Remove GetActiveProject from SelectHandle 2020-01-04 12:59:37 -05:00
Paul Licameli
c9a9c06bd0 Pass AudacityProject * into preference panel factories 2020-01-04 12:37:57 -05:00
Paul Licameli
92b857d551 Remove unnecessary const_cast 2020-01-04 11:59:44 -05:00
Paul Licameli
dffe3155b0 Pass AudacityProject & into ButtonHandle::Tip 2020-01-04 11:27:28 -05:00
Paul Licameli
f64bc5a829 Pass non-const AudacityProject to HitTest::Preview...
... because that will be needed for elimination of some GetActiveProject()
calls.  Because some overrides need to find the focused track, but that may
mutate the project by setting the focused track when it wasn't yet defined.
2020-01-04 09:40:33 -05:00
Paul Licameli
db6265d4e7 Fix build 2020-01-03 10:14:12 -05:00
Paul Licameli
4a5abc9e41 Pass AudacityProject* to more methods of UIHandle 2020-01-03 10:09:46 -05:00
Paul Licameli
83f7bc6b5c Eliminate some uses of GetActiveProject...
... where there was already a project at hand
2020-01-02 13:15:14 -05:00
Paul Licameli
fce85d0e56 Don't use GetActiveProject in track panel pop-up menu handlers 2020-01-01 22:06:16 -05:00
Paul Licameli
7dbca958a6 CellularPanel passes AudacityProject* to DoContextMenu() of cell 2020-01-01 21:57:39 -05:00
Paul Licameli
12bbafe013 Separate storing of user data from initialization of popup items 2020-01-01 21:54:45 -05:00
Paul Licameli
0256156dec Implement Multi View checkbox menu item in wave track TCP...
... When it's off (default), Spectrum and Waveform buttons behave as before,
and dragging of the sub-view separator is disabled.

When it transitions to off, and the view is split, then the top sub-view takes
up the whole view.

When it transitions on, nothing visible happens.

When it is on, and you choose Spectrum or Waveform, then the corrsponding
sub-view toggles visibility.

When a sub-view is turned on by the menu item, it appears lowest.
2020-01-01 15:37:49 -05:00
Paul Licameli
00661d273a Scale choices at the top of the Waveform pop-up menu...
... as they have been in the menu for spectrum
2020-01-01 12:05:14 -05:00
Paul Licameli
389d04459a Move choice of waveform scale from TCP menu to ruler context menu 2019-12-31 19:26:51 -05:00
Paul Licameli
917e84f382 Implement double-click at the view separator to split view evenly...
... And this can even change an unsplit view to evenly split when you get the
 cursor near the top or bottom
2019-12-31 11:21:28 -05:00
Paul Licameli
b747e88304 Bug2256: complete the fix, see 17ed489 2019-12-30 23:11:55 -05:00
Paul Licameli
17ed4899ec Bug2256: Resizing channels should not change subview proportions 2019-12-30 17:38:07 -05:00
Paul Licameli
0c44d0f7d3 Bug2244: need a distinct cursor for adjustment of split views...
... Adapted from the bandwidth adjustment cursor for spectral selection, with
reversal of white and black, so the new ones are white around black
2019-12-30 15:18:31 -05:00
Paul Licameli
c882564994 Move drawing of TrackName from the subview to VRulersAndChannels...
... And thus do it only once per channel (i.e. once per set of sub-views)
2019-12-29 15:31:03 -05:00
Paul Licameli
6e14d2e56c RulerPanel uses TranslatableString for units string...
... also fixing missed translation of "k" in spectrum vertical ruler
2019-12-28 23:49:18 -05:00
Paul Licameli
259359a283 Update some calls expecting TranslatableString in disabled code 2019-12-28 23:49:14 -05:00
Paul Licameli
8905e52ee0 Override TrackPanelDrawable::DrawingArea() properly for track names 2019-12-28 13:36:47 -05:00
Paul Licameli
71b3fc0647 Factor rectangle computation out of DrawTrackName 2019-12-28 13:36:47 -05:00
Paul Licameli
a65ab2146b Rewrite DrawTrackName with fewer magic numbers, rename variables 2019-12-28 13:36:47 -05:00
Paul Licameli
7c70d78430 Pass TrackPanelDrawingContext into TrackPanelDrawable::DrawingArea() 2019-12-28 13:36:46 -05:00
Paul Licameli
996d60de81 Remove undefined member function 2019-12-28 13:36:46 -05:00
David Bailes
3a453126e8 Keyboard interface for scrubbing
- There are two new commands: Scrub Backwards and Scrub Forwards.
- These commands appear on the Transport sub menu of the Extra menu.
- The commands have default shortcuts U and I, and are in the standard default set.
- After pressing one of the two keys, playback continues until the key is released. (Note that this means that the command on the  Extra > Transport menu can't actually be used for scrubbing as it executes a KeyDown immediately followed by a KeyUp, but the menu items are needed so that the current keystrokes can be seen and changed.)
- Playback starts from the cursor position, or the start of a time selection if there is one.
- The speed of playback is determined by the zoom level. If the zoom level is normal, then the playback speed is one quarter of the normal playback speed. Zooming in (Ctrl + 1), halves the playback speed, and zooming out (Ctrl + 3) doubles the playback speed. There are minimum and maximum playback speeds of one sixteenth, and four respectively.
- You can scrub to the end of the audio, even if there is an initial selection. In other words, scrubbing forwards does not automatically stop at the end of the selection.
- Normally, when one of the keys is released, the position of the cursor is set to the time when the key was released.
- If during the time one of the keys is pressed the left bracket and or right bracket keys are pressed to set the start and/or end of the selection, then when the scrubbing key is released, the change to the selection made by pressing the bracket keys is preserved - the position of the cursor is not set to the time when the key was released.

This implementation is affected by two existing bugs:
1. Bug 1954 - Clicks may occur starting/pausing play-at-speed or Scrub. (See comment 19 and attached image).
2. Bug 1956 - Windows: MME and WDS playback cursor is buffer length ahead of actual audio playing. This means that on Windows, WASAPI is preferable if scrubbing is being used for the accurate positioning of the cursor.
2019-12-26 10:04:34 +00:00
Paul Licameli
d1637c22c0 TranslatableString for explicit prompts and units in ShuttleGui 2019-12-23 19:22:03 -05:00
Paul Licameli
acd1158e1b TranslatableString for titles, and spin control and combo prompts 2019-12-23 18:53:00 -05:00
Paul Licameli
5168d62e3d TranslatableString for captions of text entry boxes 2019-12-23 18:53:00 -05:00
Paul Licameli
89a3771730 TranslatableString for AudacityTextEntryDialog message and caption 2019-12-21 11:23:32 -05:00
Paul Licameli
f56d76cdb5 Correct one commented-out override of GetDescription 2019-12-21 00:44:11 -05:00
Paul Licameli
49cab86fc1 TranslatableString for tooltips and status bar messages 2019-12-20 21:54:49 -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
a70524446e TranslatableString for title prefix in PrefsDialog...
... and the title strings do not include a trailing space
2019-12-19 22:37:21 -05:00
Paul Licameli
91ebadef81 Rewrite one more PushState that is ifdef'd out 2019-12-19 22:27:35 -05:00
Paul Licameli
6b812791a6 TranslatableString in popup menu tables 2019-12-16 15:10:35 -05:00
Paul Licameli
4eb220e7b9 TranslatableString for undo history short and long descriptions 2019-12-16 14:19:23 -05:00
Paul Licameli
54e2bbd8ff Remove TranslatedInternalString, use ComponentInterfaceSymbol 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
a8de4d9e50 Construct MenuItem with untranslated label, so it can be static...
... and other storage of TranslatableString instead of naked wxString, for
management of menu items, in CommandManager
2019-12-12 15:49:00 -05:00
Paul Licameli
70ec69fa3d Pass untranslated command labels to CommandManager...
... and deduce whether to exclude from macros inside NewIdentifier, simplifying
argument lists further

Also fix the localization of "..." added to names by PluginMenus.cpp
2019-12-12 15:15:59 -05:00
Paul Licameli
0cf90d65e6 S.GetParent() for all windows passed to ShuttleGui::AddWindow()...
... Verified that this makes no real change.
2019-12-10 09:58:38 -05:00
James Crook
23f05c618c Fix signed/unsigned comparison warnings. 2019-12-06 11:33:22 +00:00
James Crook
7f3c40eb43 Fix class/struct warnings. 2019-12-06 11:32:17 +00:00
Paul Licameli
ca70cc940f Don't concatenate ":" onto user-visible strings...
... include it in the msgid intead, to get appropriate translations.  For
instance some locales use the same character but prefer to insert a space
before it.
2019-12-04 16:19:07 -05:00
Paul Licameli
96291c5476 Remove second argument of AddWindow(), use Position() instead 2019-12-02 22:01:22 -05:00
Paul Licameli
9eeef4713d Define and use ShuttleGui::Name and NameSuffix...
... For radio buttons, the name will default to the same as the prompt if not
otherwise specified
2019-12-02 16:55:46 -05:00