Paul Licameli
0c9cf45188
Define table for Extra Mixer menu
2018-10-21 12:16:27 -04:00
Paul Licameli
620640c7a2
Define table for Extra Tools menu
2018-10-21 12:16:27 -04:00
Paul Licameli
cac88ce4cd
Define table for Extra Transport menu
2018-10-21 12:16:26 -04:00
Paul Licameli
8c0944d65a
Stub function for Extra menus, to be managed as sub-tables...
...
... There will be two menus, "Extra" and "Extra_" in these interim commits as
we move items from the latter to the former.
2018-10-21 12:16:26 -04:00
Paul Licameli
434dcfa4b3
Define table for Window menu (Mac only)
2018-10-21 12:16:26 -04:00
Paul Licameli
4895dfdf7a
Define tables for Generate, Effects, Analyze, Tools menus
2018-10-21 12:16:26 -04:00
Paul Licameli
4b71950022
Define table for Tracks menu
2018-10-21 12:16:25 -04:00
Paul Licameli
032070a2d9
Define table for Transport menu
2018-10-21 12:16:25 -04:00
Paul Licameli
a9512fe450
Define table for View menu
2018-10-21 12:16:25 -04:00
Paul Licameli
dfc555e5f4
Define table for Select menu
2018-10-21 12:16:25 -04:00
Paul Licameli
3b997aa7e2
Define table for Edit menu
2018-10-21 12:16:24 -04:00
Paul Licameli
298971b6e4
Define table for File menu
2018-10-21 12:16:24 -04:00
Paul Licameli
2c5f56b9ae
A table of menu description factories; iterate it; but it's empty...
...
... to be populated in succeeding commits.
2018-10-21 12:16:24 -04:00
Paul Licameli
e756f2e71c
Define classes and interpreter to be used in menu definition tables
2018-10-21 12:16:22 -04:00
Paul Licameli
5277584bb0
Hide details of managing occult command items
2018-10-20 14:19:58 -04:00
Paul Licameli
01875db4bd
Don't hold a dangling pointer to a menu bar in CommandManager
2018-10-20 12:53:03 -04:00
Paul Licameli
fefc3bf35d
Don't call CommandManger::AddGlobalCommand, use an option instead
2018-10-20 11:59:39 -04:00
Paul Licameli
7f5e6d12b1
Only one public CommandManager fn to begin a menu and one to end...
...
... It knows the nesting, so it decides for itself whether to manage the menu
as main or sub-.
2018-10-20 09:40:03 -04:00
Paul Licameli
27aa59ed50
AddItemList takes IdentInterfaceSymbol (untranslated) ...
...
... so that we can use a static constant table of names, which can't use
macro _ in initializers.
2018-10-20 09:21:22 -04:00
Paul Licameli
1b05ba9a78
A compile-time constant for the number of align menu items
2018-10-20 09:21:22 -04:00
Paul Licameli
474f80912a
Some functions can be static, don't need to be members of MenuBuilder
2018-10-20 09:21:22 -04:00
James Crook
e8762a478f
Add 'Quick Fix' menu item to Help.
...
This helps with 3 of the stuck-in-a-mode problems, adding fix buttons for the issues.
2018-10-19 18:31:44 +01:00
Paul Licameli
52672ed5e2
More careful sorting of effects...
...
... when grouping by two criteria (publisher and name or type and name).
Use a stable sort for the second sort so that the minor sort (done first) is
sure not to be destoyed.
Maybe this never mattered (depending on the implementation of std::sort and
its threshold for doing small sorts by insertion).
2018-10-19 11:12:20 -04:00
David Bailes
c067ad5b37
Apply macro sub menu: ensure first letter selection
...
Problem: Palette has the access key P, so any macro with name beginning with P cannot be selected by pressing P, since access keys have precedence over first letters.
Fix: remove access key, which is not needed since Palette is the first item, and so is selected when the sub menu is opened.
2018-10-19 15:50:13 +01:00
David Bailes
ac596554c4
Fix a couple of duplicate access keys
2018-10-19 09:27:17 +01:00
Paul Licameli
9ad88e091c
Use weak pointers to simplify MenuCreator
2018-10-18 15:43:21 -04:00
Paul Licameli
16ab48079b
Don't include CommandManager.h in other headers
2018-10-18 09:25:14 -04:00
Paul Licameli
fc1bc7994e
Remove CommandManager::SetDefaultFlags and related
2018-10-17 23:14:55 -04:00
Paul Licameli
63f20f3405
CommandManager::AddItemList requires flags
2018-10-17 23:13:56 -04:00
Paul Licameli
742e578d49
Flags in AddItem (and AddCommand) may not be NoFlagsSpecified
2018-10-17 23:13:56 -04:00
Paul Licameli
db997f8ecd
Flags argument of AddItem (and AddCommand) is obligatory
2018-10-17 23:13:56 -04:00
Paul Licameli
f6478acb1c
Just spaces
2018-10-17 14:14:21 -04:00
Paul Licameli
596eefe675
CommandManager::Options also specified the long name
2018-10-17 13:49:43 -04:00
Paul Licameli
cfe7ddcf55
struct CommandManager::Options lets us fold AddCheck into AddItem
2018-10-17 13:32:39 -04:00
Paul Licameli
de4132d66c
Reorder accel argument and unify two overloads of AddItem
2018-10-17 13:32:36 -04:00
Paul Licameli
c376ffb165
Simplify calls to SetDefaultFlags: default mask to equal flags
2018-10-17 13:21:00 -04:00
Paul Licameli
42aef9f3e8
Mask != flags is unusual: simplify most AddItem/AddCheck...
...
... and the no longer used AddCommand.
There are only four exceptions, all using NoAutoSelect in the flags and not in
the mask.
2018-10-17 13:20:58 -04:00
Paul Licameli
80437582d8
Change comments that confused audacity.pot hints
2018-10-17 12:53:25 -04:00
Paul Licameli
399e2d099d
Fix spelling in an enum constant name
2018-10-17 12:53:25 -04:00
Paul Licameli
fef9e2abac
Remove some unused things
2018-10-17 12:53:25 -04:00
Paul Licameli
a7df004a88
Don't include Project.h or ODTask.h needlessly in other header files
2018-10-16 17:36:38 -04:00
Paul Licameli
ce9f2e2538
Include Menus.h directly, only where needed, not via Project.h
2018-10-16 16:45:26 -04:00
Paul Licameli
a3fc5894fb
Fix obsolete comments in Menus.cpp...
...
... In particular, some handlers have been in Scrubbing.cpp and MenusMac.cpp
for a few versions now, so we must soften "all" to "most"
2018-10-16 16:34:09 -04:00
James Crook
708cbe173e
Consitently use On<something> iff it is a direct menu handler.
...
Some former 'On' functions have been renamed 'Do' since they didn't directly handle the menu item. Some functions that used 'Context' now use 'Project'.
2018-10-16 15:15:35 +01:00
Paul Licameli
fc6570646d
MenuCommandHandler is not a base class of MenuManager...
...
... This forces a better placement of state variables in the appropriate
classes.
In future perhaps, MenuManager should be splintered into several classes, one
for each of the main toolbar menus.
2018-10-16 13:01:22 +01:00
James Crook
26086a4142
Split MenuCommandHandler into three classes.
...
Menus.cpp is over 10,000 lines. The main point of the split is to make possible a new .cpp file for MenuCreator, which is responsible for the creation of the menu bar, and which contains the near 2,000 line function MenuCreator::CreateMenusAndCommands()
The menu handlers are also (better) separated from the menu management.
2018-10-13 21:38:34 +01:00
James Crook
657159d542
Fix C4189 and C4100 Warnings
...
C4189 is 'Local variable initialised but not used'
C4100 is 'Unreferenced parameter'
Fixed some other warnings, e.g. about empty if, too.
2018-10-10 19:46:24 +01:00
James Crook
5fd95dd131
Fix C4456 Warnings.
...
"C4456 declaration hides previous local declaration."
These arise from repeated declarations of the same name.
2018-10-10 17:28:50 +01:00
Paul Licameli
90e2da7f14
Fix uses of TrackList::GroupChannels in Mix and effect preview
2018-10-04 11:34:14 -04:00
Steve Daulton
8880e1b929
Fix missing initialization from a17af37
2018-10-03 21:08:27 +01:00