1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-23 17:30:17 +01:00

Store a string identifier in each menu item...

... which is not yet used for anything.

It could be used to describe textual paths for attaching plug-in menu items.

Strings are only path local, not necessarily globally unique, and may be
left empty for separators and for groups that should be transparent to
path identification.

It may also be empty for certain sub-menus, such as those that group effects
according to the changeable criteria in Preferences.
This commit is contained in:
Paul Licameli
2019-01-09 16:02:51 -05:00
parent f6e5696146
commit 393a098b69
17 changed files with 211 additions and 129 deletions

View File

@@ -823,14 +823,15 @@ static CommandHandlerObject &findCommandHandler(AudacityProject &) {
#define FN(X) (& ClipActions::Handler :: X)
// Under /MenuBar/Select
MenuTable::BaseItemSharedPtr ClipSelectMenu()
{
using namespace MenuTable;
using Options = CommandManager::Options;
static BaseItemSharedPtr menu{
static BaseItemSharedPtr menu {
FinderScope( findCommandHandler ).Eval(
Menu( XO("Clip B&oundaries"),
Menu( wxT("Clip"), XO("Clip B&oundaries"),
Command( wxT("SelPrevClipBoundaryToCursor"),
XXO("Pre&vious Clip Boundary to Cursor"),
FN(OnSelectPrevClipBoundaryToCursor),
@@ -849,6 +850,7 @@ MenuTable::BaseItemSharedPtr ClipSelectMenu()
return menu;
}
// Under /MenuBar/Transport/Cursor
MenuTable::BaseItemSharedPtr ClipCursorItems()
{
using namespace MenuTable;
@@ -856,7 +858,7 @@ MenuTable::BaseItemSharedPtr ClipCursorItems()
static BaseItemSharedPtr items{
FinderScope( findCommandHandler ).Eval(
Items(
Items( wxT("Clip"),
Command( wxT("CursPrevClipBoundary"), XXO("Pre&vious Clip Boundary"),
FN(OnCursorPrevClipBoundary),
WaveTracksExistFlag,
@@ -869,13 +871,14 @@ MenuTable::BaseItemSharedPtr ClipCursorItems()
return items;
}
// Under /MenuBar/Optional/Extra/Cursor
MenuTable::BaseItemSharedPtr ExtraClipCursorItems()
{
using namespace MenuTable;
static BaseItemSharedPtr items{
FinderScope( findCommandHandler ).Eval(
Items(
Items( wxT("Clip"),
Command( wxT("ClipLeft"), XXO("Clip L&eft"), FN(OnClipLeft),
TracksExistFlag | TrackPanelHasFocus, wxT("\twantKeyup") ),
Command( wxT("ClipRight"), XXO("Clip Rig&ht"), FN(OnClipRight),