[Summary]: Main menu rework

This commit is contained in:
YPozdnyakov 2014-11-27 11:41:44 +02:00
parent 33a4706bff
commit 4c53cc7c8f
6 changed files with 88 additions and 75 deletions

View file

@ -195,14 +195,14 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
, editor_meter_peak_display()
, speaker_config_window (X_("speaker-config"), _("Speaker Configuration"))
, theme_manager (X_("theme-manager"), _("Theme Manager"))
, key_editor (X_("key-editor"), _("Key Bindings"))
, key_editor (X_("key-editor"), _("Key Command Editor"))
, rc_option_editor (X_("rc-options-editor"), _("Preferences"))
, about (X_("about"), _("About"))
, location_ui (X_("locations"), _("Locations"))
, route_params (X_("inspector"), _("Tracks and Busses"))
, tracks_control_panel (X_("tracks-control-panel"), _("PREFERENCES"))
, tracks_control_panel (X_("tracks-control-panel"), _("Preferences"))
, _add_tracks_dialog(new AddTracksDialog())
, session_lock_dialog (X_("session-lock-dialog"), _("SESSION LOCK"))
, session_lock_dialog (X_("session-lock-dialog"), _("System Lock"))
, session_option_editor (X_("session-options-editor"), _("Properties"), boost::bind (&ARDOUR_UI::create_session_option_editor, this))
, add_video_dialog (X_("add-video"), _("Add Tracks/Busses"), boost::bind (&ARDOUR_UI::create_add_video_dialog, this))
, bundle_manager (X_("bundle-manager"), _("Bundle Manager"), boost::bind (&ARDOUR_UI::create_bundle_manager, this))
@ -3319,6 +3319,24 @@ Clean-up will move all unused files to a \"dead\" location."));
display_cleanup_results (rep, _("Cleaned Files"), false);
}
void
ARDOUR_UI::open_dead_folder ()
{
const string dead_directory = _session->session_directory().dead_path();
#if defined (PLATFORM_WINDOWS)
ShellExecute (NULL, "open", dead_directory, NULL, NULL, SW_SHOW);
#elif defined (__APPLE__)
std::string command = "open \"" + dead_directory + "\"";
system (command.c_str ());
#else
/* nix */
/* XXX what to do here ? */
#endif
}
void
ARDOUR_UI::flush_trash ()
{

View file

@ -710,6 +710,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr
void display_cleanup_results (ARDOUR::CleanupReport& rep, const gchar* list_title, const bool msg_delete);
void cleanup ();
void open_dead_folder ();
void flush_trash ();
bool have_configure_timeout;

View file

@ -456,12 +456,13 @@ ARDOUR_UI::install_actions ()
/* menus + submenus that need action items */
ActionManager::register_action (main_menu_actions, X_("Session"), _("Session"));
act = ActionManager::register_action (main_menu_actions, X_("Cleanup"), _("Clean-up"));
ActionManager::write_sensitive_actions.push_back (act);
ActionManager::register_action (main_menu_actions, X_("Session"), _("File"));
act = ActionManager::register_action (main_actions, X_("Cleanup"), _("CleanUp"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_action (main_menu_actions, X_("Sync"), _("Sync"));
ActionManager::register_action (main_menu_actions, X_("TransportOptions"), _("Options"));
ActionManager::register_action (main_menu_actions, X_("WindowMenu"), _("Window"));
act=ActionManager::register_action (main_menu_actions, X_("WindowMenu"), _("Window"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_action (main_menu_actions, X_("Help"), _("Help"));
ActionManager::register_action (main_menu_actions, X_("KeyMouseActions"), _("Misc. Shortcuts"));
ActionManager::register_action (main_menu_actions, X_("AudioFileFormat"), _("Audio File Format"));
@ -476,20 +477,19 @@ ARDOUR_UI::install_actions ()
/* the real actions */
act = ActionManager::register_action (main_actions, X_("New"), _("New..."), hide_return (sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::get_session_parameters), false, true, "")));
ActionManager::register_action (main_actions, X_("Open"), _("Open..."), sigc::mem_fun(*this, &ARDOUR_UI::open_session));
ActionManager::register_action (main_actions, X_("Recent"), _("Recent..."), sigc::mem_fun(*this, &ARDOUR_UI::open_recent_session));
act = ActionManager::register_action (main_actions, X_("New"), _("New"), hide_return (sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::get_session_parameters), false, true, "")));
ActionManager::register_action (main_actions, X_("Open"), _("Open"), sigc::mem_fun(*this, &ARDOUR_UI::open_session));
ActionManager::register_action (main_actions, X_("Recent"), _("Recent Sessions"), sigc::mem_fun(*this, &ARDOUR_UI::open_recent_session));
act = ActionManager::register_action (main_actions, X_("Close"), _("Close"), sigc::mem_fun(*this, &ARDOUR_UI::close_session));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("AddTrackBus"), _("Add Track"),
sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::add_route), (Gtk::Window*) 0));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::write_sensitive_actions.push_back (act);
//ActionManager::session_sensitive_actions.push_back (act);
//ActionManager::write_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("DeleteSelectedTracks"), _("Delete selected tracks"), sigc::mem_fun(*this, &ARDOUR_UI::delete_selected_tracks));
ActionManager::track_selection_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("OpenVideo"), _("Open Video"),
sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::add_video), (Gtk::Window*) 0));
@ -504,12 +504,12 @@ ARDOUR_UI::install_actions ()
#ifdef __APPLE__
act = ActionManager::register_action (main_actions, X_("MainWindow"), _("Main Window"), sigc::mem_fun(*this, &ARDOUR_UI::goto_editor_window));
ActionManager::session_sensitive_actions.push_back (act);
//ActionManager::session_sensitive_actions.push_back (act);
#endif
act = ActionManager::register_action (main_actions, X_("Minimize"), _("Minimize"), sigc::mem_fun(*this, &ARDOUR_UI::minimize_window));
ActionManager::session_sensitive_actions.push_back (act);
//ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("Zoom"), _("Zoom"), sigc::mem_fun(*this, &ARDOUR_UI::maximize_window));
ActionManager::session_sensitive_actions.push_back (act);
//ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_action (main_actions, X_("LockSession"), _("Lock this session"), sigc::mem_fun(*this, &ARDOUR_UI::on_lock_button_pressed));
ActionManager::register_action (main_actions, X_("ToggleMultiOutMode"), "Multi Out", sigc::mem_fun(*this, &ARDOUR_UI::toggle_multi_out_mode));
@ -519,7 +519,7 @@ ARDOUR_UI::install_actions ()
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::write_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("SaveAs"), _("Save As..."), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::snapshot_session), true));
act = ActionManager::register_action (main_actions, X_("SaveAs"), _("Save As.."), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::snapshot_session), true));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::write_sensitive_actions.push_back (act);
@ -539,17 +539,20 @@ ARDOUR_UI::install_actions ()
act = ActionManager::register_action (main_actions, X_("ImportMetadata"), _("Import Metadata..."), sigc::mem_fun(*this, &ARDOUR_UI::import_metadata));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("ExportAudio"), _("Export To Audio File(s)..."), sigc::mem_fun (*editor, &PublicEditor::export_audio));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("ExportAudio"), _("Mixdown"), sigc::mem_fun (*editor, &PublicEditor::export_audio));
//ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("StemExport"), _("Stem export..."), sigc::mem_fun (*editor, &PublicEditor::stem_export));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("StemExport"), _("Stem Export"), sigc::mem_fun (*editor, &PublicEditor::stem_export));
//ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("Export"), _("Export"));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("CleanupUnused"), _("Clean-up Unused Sources..."), sigc::mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::cleanup));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("CleanupUnused"), _("Delete Unused Sources"), sigc::mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::cleanup));
//ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("ShowUnused"), _("Show Unused"), sigc::mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::open_dead_folder));
//ActionManager::session_sensitive_actions.push_back (act);
ActionManager::write_sensitive_actions.push_back (act);
act = ActionManager::register_action (main_actions, X_("FlushWastebasket"), _("Flush Wastebasket"), sigc::mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::flush_trash));
@ -591,7 +594,8 @@ ARDOUR_UI::install_actions ()
/* do-nothing action for the "transport" menu bar item */
ActionManager::register_action (transport_actions, X_("Transport"), _("Transport"));
act=ActionManager::register_action (transport_actions, X_("Transport"), _("Transport"));
ActionManager::session_sensitive_actions.push_back (act);
/* these two are not used by key bindings, instead use ToggleRoll for that. these two do show up in
menus and via button proxies.
@ -604,9 +608,9 @@ ARDOUR_UI::install_actions ()
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("ToggleRoll"), _("Start/Stop"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::toggle_roll), false, false));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("ToggleRoll"), _("Playback Start/Stop"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::toggle_roll), false, false));
//ActionManager::session_sensitive_actions.push_back (act);
//ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("alternate-ToggleRoll"), _("Start/Stop"), sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::toggle_roll), false, false));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
@ -641,7 +645,7 @@ ARDOUR_UI::install_actions ()
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("Record"), _("Enable Record"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::transport_record), false));
act = ActionManager::register_action (transport_actions, X_("Record"), _("Record"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::transport_record), false));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::write_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("record-roll"), _("Start Recording"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::transport_record), true));
@ -673,13 +677,13 @@ ARDOUR_UI::install_actions ()
act = ActionManager::register_action (transport_actions, X_("GotoZero"), _("Goto Zero"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_zero));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("GotoStart"), _("Goto Start"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_start));
act = ActionManager::register_action (transport_actions, X_("GotoStart"), _("Jump to Session Start"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_start));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("alternate-GotoStart"), _("Goto Start"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_start));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("GotoEnd"), _("Goto End"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_end));
act = ActionManager::register_action (transport_actions, X_("GotoEnd"), _("Jump to Session End"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_end));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_action (transport_actions, X_("GotoWallClock"), _("Goto Wall Clock"), sigc::mem_fun(*this, &ARDOUR_UI::transport_goto_wallclock));

View file

@ -91,7 +91,8 @@ Editor::register_actions ()
ActionManager::register_action (editor_menu_actions, X_("AlignMenu"), _("Align"));
ActionManager::register_action (editor_menu_actions, X_("Autoconnect"), _("Autoconnect"));
ActionManager::register_action (editor_menu_actions, X_("Crossfades"), _("Crossfades"));
ActionManager::register_action (editor_menu_actions, X_("Edit"), _("Edit"));
act=ActionManager::register_action (editor_menu_actions, X_("Edit"), _("Edit"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_action (editor_menu_actions, X_("EditCursorMovementOptions"), _("Move Selected Marker"));
ActionManager::register_action (editor_menu_actions, X_("EditSelectRangeOptions"), _("Select Range Operations"));
ActionManager::register_action (editor_menu_actions, X_("EditSelectRegionOptions"), _("Select Regions"));
@ -119,7 +120,7 @@ Editor::register_actions ()
ActionManager::register_action (editor_menu_actions, X_("Monitoring"), _("Monitoring"));
ActionManager::register_action (editor_menu_actions, X_("MoveActiveMarkMenu"), _("Active Mark"));
ActionManager::register_action (editor_menu_actions, X_("MovePlayHeadMenu"), _("Playhead"));
ActionManager::register_action (editor_menu_actions, X_("PlayMenu"), _("Play"));
ActionManager::register_action (editor_menu_actions, X_("PlayMenu"), _("Playhead Mode"));
ActionManager::register_action (editor_menu_actions, X_("PrimaryClockMenu"), _("Clock"));
ActionManager::register_action (editor_menu_actions, X_("Pullup"), _("Pullup / Pulldown"));
ActionManager::register_action (editor_menu_actions, X_("RegionEditOps"), _("Region operations"));
@ -139,9 +140,11 @@ Editor::register_actions ()
ActionManager::register_action (editor_menu_actions, X_("TempoMenu"), _("Tempo"));
ActionManager::register_action (editor_menu_actions, X_("Timecode"), _("Timecode fps"));
ActionManager::register_action (editor_menu_actions, X_("TrackHeightMenu"), _("Height"));
ActionManager::register_action (editor_menu_actions, X_("TrackMenu"), _("Track"));
act=ActionManager::register_action (editor_menu_actions, X_("TrackMenu"), _("Track"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_action (editor_menu_actions, X_("Tools"), _("Tools"));
ActionManager::register_action (editor_menu_actions, X_("View"), _("View"));
act=ActionManager::register_action (editor_menu_actions, X_("View"), _("View"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::register_action (editor_menu_actions, X_("ZoomFocus"), _("Zoom Focus"));
ActionManager::register_action (editor_menu_actions, X_("ZoomMenu"), _("Zoom"));
@ -193,7 +196,7 @@ Editor::register_actions ()
reg_sens (editor_actions, "select-all-objects", _("Select All Objects"), sigc::bind (sigc::mem_fun(*this, &Editor::select_all_objects), Selection::Set));
reg_sens (editor_actions, "select-all-tracks", _("Select All Tracks"), sigc::mem_fun(*this, &Editor::select_all_tracks));
reg_sens (editor_actions, "deselect-all", _("Deselect All"), sigc::mem_fun(*this, &Editor::deselect_all));
reg_sens (editor_actions, "deselect-all", _("Select All/Deselect All"), sigc::mem_fun(*this, &Editor::deselect_all));
reg_sens (editor_actions, "invert-selection", _("Invert Selection"), sigc::mem_fun(*this, &Editor::invert_selection));
reg_sens (editor_actions, "select-all-after-edit-cursor", _("Select All After Edit Point"), sigc::bind (sigc::mem_fun(*this, &Editor::select_all_selectables_using_edit), true));
@ -239,9 +242,9 @@ Editor::register_actions ()
reg_sens (editor_actions, a.c_str(), n.c_str(), sigc::bind (sigc::mem_fun (*this, &Editor::goto_nth_marker), i - 1));
}
reg_sens (editor_actions, "jump-forward-to-mark", _("Jump to Next Mark"), sigc::mem_fun(*this, &Editor::jump_forward_to_mark));
reg_sens (editor_actions, "alternate-jump-forward-to-mark", _("Jump to Next Mark"), sigc::mem_fun(*this, &Editor::jump_forward_to_mark));
reg_sens (editor_actions, "jump-backward-to-mark", _("Jump to Previous Mark"), sigc::mem_fun(*this, &Editor::jump_backward_to_mark));
reg_sens (editor_actions, "jump-forward-to-mark", _("Jump to Next Marker"), sigc::mem_fun(*this, &Editor::jump_forward_to_mark));
reg_sens (editor_actions, "alternate-jump-forward-to-mark", _("Jump to Next Marker"), sigc::mem_fun(*this, &Editor::jump_forward_to_mark));
reg_sens (editor_actions, "jump-backward-to-mark", _("Jump to Previous Marker"), sigc::mem_fun(*this, &Editor::jump_backward_to_mark));
reg_sens (editor_actions, "alternate-jump-backward-to-mark", _("Jump to Previous Mark"), sigc::mem_fun(*this, &Editor::jump_backward_to_mark));
act = reg_sens (editor_actions, "add-location-from-playhead", _("Add Mark from Playhead"), sigc::mem_fun(*this, &Editor::add_location_from_playhead_cursor));
@ -274,9 +277,11 @@ Editor::register_actions ()
reg_sens (editor_actions, "vertical-zoom-in", _("Zoom In Vertical "), sigc::mem_fun (*this, &Editor::vertical_zoom_step_in));
reg_sens (editor_actions, "vertical-zoom-out", _("Zoom Out Vertical "), sigc::mem_fun (*this, &Editor::vertical_zoom_step_out ));
act = reg_sens (editor_actions, "move-selected-tracks-up", _("Move Selected Tracks Up"), sigc::bind (sigc::mem_fun(*_routes, &EditorRoutes::move_selected_tracks), true));
act = reg_sens (editor_actions, "DeleteSelectedTracks", _("Delete Selected"), sigc::mem_fun(ARDOUR_UI::instance(), &ARDOUR_UI::delete_selected_tracks));
ActionManager::track_selection_sensitive_actions.push_back (act);
act = reg_sens (editor_actions, "move-selected-tracks-up", _("Move Up"), sigc::bind (sigc::mem_fun(*_routes, &EditorRoutes::move_selected_tracks), true));
ActionManager::track_selection_sensitive_actions.push_back (act);
act = reg_sens (editor_actions, "move-selected-tracks-down", _("Move Selected Tracks Down"), sigc::bind (sigc::mem_fun(*_routes, &EditorRoutes::move_selected_tracks), false));
act = reg_sens (editor_actions, "move-selected-tracks-down", _("Move Down"), sigc::bind (sigc::mem_fun(*_routes, &EditorRoutes::move_selected_tracks), false));
ActionManager::track_selection_sensitive_actions.push_back (act);
act = reg_sens (editor_actions, "scroll-tracks-up", _("Scroll Tracks Up"), sigc::mem_fun(*this, &Editor::scroll_tracks_up));
@ -316,7 +321,7 @@ Editor::register_actions ()
reg_sens (editor_actions, "duplicate-range", _("Duplicate Range"), sigc::bind (sigc::mem_fun(*this, &Editor::duplicate_range), false));
undo_action = reg_sens (editor_actions, "undo", S_("Command|Undo"), sigc::bind (sigc::mem_fun(*this, &Editor::undo), 1U));
undo_action = reg_sens (editor_actions, "undo", _("Undo"), sigc::bind (sigc::mem_fun(*this, &Editor::undo), 1U));
redo_action = reg_sens (editor_actions, "redo", _("Redo"), sigc::bind (sigc::mem_fun(*this, &Editor::redo), 1U));
redo_action = reg_sens (editor_actions, "alternate-redo", _("Redo"), sigc::bind (sigc::mem_fun(*this, &Editor::redo), 1U));

View file

@ -166,6 +166,7 @@ This mode provides many different operations on both regions and control points,
@mmode|MouseMode/set-mouse-mode-object|o|object mode
@sess|Main/Open|<@PRIMARY@>o|open an existing session
@sess|Main/Recent|<@PRIMARY@><@TERTIARY@>o|open a recent session
@sess|Window/toggle-tracks-control-panel|<@PRIMARY@>comma|open preferences dialog
@wvis|Window/toggle-session-options-editor|<@WINDOW@>o|toggle preferences dialog
@rop|Region/naturalize-region|<@SECONDARY@>o|move to original position
@trans|Editor/set-playhead|p|set playhead position

View file

@ -14,26 +14,26 @@
<menubar name='Main' action='MainMenu'>
<menu name='Session' action='Session'>
<menuitem action='toggle-tracks-control-panel'/>
<separator/>
<menuitem action='New'/>
<menuitem action='Open'/>
<menuitem action='Recent'/>
<menuitem action='Close'/>
<separator/>
<menuitem action='Save'/>
<menuitem action='SaveAs'/>
<menuitem action='Close'/>
<menuitem action='Recent'/>
<separator/>
<menuitem action='toggle-session-lock-dialog'/>
<menuitem action='toggle-tracks-control-panel'/>
<separator/>
<menuitem action='addExistingAudioFiles'/>
<menu name='Export' action='Export'>
<menuitem action='ExportAudio'/>
<menuitem action='StemExport'/>
</menu>
<separator/>
<menu name='Cleanup' action='Cleanup'>
<menuitem action='CleanupUnused'/>
<menuitem action='FlushWastebasket'/>
<menuitem action='ShowUnused'/>
</menu>
#ifdef GTKOSX
<menuitem action='toggle-about'/>
@ -48,26 +48,18 @@
<menu name='Transport' action='Transport'>
<menuitem action='ToggleRoll'/>
<menu action="PlayMenu">
<menuitem action='main-menu-play-selected-regions'/>
<menuitem action='play-edit-range'/>
<menuitem action='PlaySelection'/>
<menuitem action='PlayPreroll'/>
<menuitem action='play-from-edit-point-and-return'/>
<menuitem action='Loop'/>
</menu>
<menuitem action='Record'/>
<menu action="MovePlayHeadMenu">
<menuitem action='jump-forward-to-mark'/>
<menuitem action='jump-backward-to-mark'/>
<menuitem action='GotoStart'/>
<menuitem action='GotoEnd'/>
</menu>
<separator/>
<menuitem action='ToggleAutoPlay'/>
<menuitem action='ToggleAutoReturn'/>
<menu action="PlayMenu">
</menu>
<separator/>
</menu>
@ -75,22 +67,19 @@
<menu name='Edit' action='Edit'>
<menuitem action='undo'/>
<menuitem action='redo'/>
<menuitem action='editor-cut'/>
<menuitem action='editor-copy'/>
<menuitem action='editor-paste'/>
<separator/>
<menuitem action='editor-cut'/>
<menuitem action='editor-delete'/>
<menuitem action='split-region'/>
<menu action="SelectMenu">
<menuitem action='deselect-all'/>
<menuitem action='invert-selection'/>
</menu>
<separator/>
<menuitem action='editor-delete'/>
<menuitem action='crop'/>
<menuitem action='split-region'/>
<menuitem action='toggle-session-lock-dialog'/>
<separator/>
#ifndef GTKOSX
<separator/>
#endif
<menuitem action='toggle-key-editor'/>
</menu>
<menu action='TrackMenu'>
@ -140,12 +129,7 @@
<menuitem action='Zoom'/>
</menu>
<menu name='Help' action='Help'>
#ifndef GTKOSX
<menuitem action='toggle-about'/>
#endif
<menuitem action='Manual'/>
</menu>
</menubar>
<popup action="RulerMenuPopup">