13
0
Fork 0

Compare commits

...

10 Commits

Author SHA1 Message Date
Paul Davis 57d728c20b NOOP another change to test email from git 2024-04-25 20:27:13 -06:00
Paul Davis 14998cfc36 NOOP change to test email from git 2024-04-25 18:04:59 -06:00
Paul Davis 55041ecd26 get state saving working again
This was being bypassed due to misssing UI components in livetrax
2024-04-25 17:44:50 -06:00
Paul Davis 3767754ec9 fix default program name 2024-04-25 15:29:33 -06:00
Paul Davis 93ce84f644 livetrax menu definitions (second attempt) 2024-04-25 13:19:36 -06:00
Paul Davis bd5481c5be Revert "menu file now named after downcase-d PROGRAM_NAME"
This reverts commit 7cc5328d9569e920684877024a5751987e52334a.
2024-04-25 13:19:35 -06:00
Paul Davis eb65b2465d use 2 new icons, and the existing lock icon, and activate lock button 2024-04-25 13:19:35 -06:00
Paul Davis b6ca43943b add the track visibility widgets to the toolbar 2024-04-25 13:19:35 -06:00
Paul Davis ecb88b0151 do not hide MIDI scene ports 2024-04-25 13:19:35 -06:00
Paul Davis c562ec13ef Revert "split EngineDialog into a widget and a dialog"
This reverts commit f74ffd5a9202adda4b34e9c8733a0503a0dfeeeb.
2024-04-25 13:19:35 -06:00
26 changed files with 490 additions and 1192 deletions

View File

@ -191,9 +191,3 @@ ArdourDialog::set_ui_sensitive (bool yn)
{
_sensitive = yn;
}
void
ArdourDialog::add_widget_action (Gtk::Widget& w)
{
get_action_area()->add (w);
}

View File

@ -51,13 +51,10 @@ public:
void on_show ();
virtual void on_response (int);
void set_ui_sensitive (bool);
bool ui_sensitive () const { return _sensitive; }
void disallow_idle ();
void pop_splash ();
void add_widget_action (Gtk::Widget&);
protected:
void pop_splash ();
void close_self ();
bool _sensitive;

View File

@ -132,7 +132,7 @@ class AddVideoDialog;
class BigClockWindow;
class BigTransportWindow;
class BundleManager;
class EngineControlDialog;
class EngineControl;
class ExportVideoDialog;
class KeyEditor;
class LocationUIWindow;
@ -785,7 +785,7 @@ private:
WM::Proxy<About> about;
WM::Proxy<LocationUIWindow> location_ui;
WM::Proxy<RouteParams_UI> route_params;
WM::Proxy<EngineControlDialog> audio_midi_setup;
WM::Proxy<EngineControl> audio_midi_setup;
WM::Proxy<ExportVideoDialog> export_video_dialog;
WM::Proxy<LuaScriptManager> lua_script_window;
WM::Proxy<IdleOMeter> idleometer;

View File

@ -464,11 +464,13 @@ ARDOUR_UI::livetrax_setup_windows ()
/* transport bar */
livetrax_meter_view_button = manage (new ArdourButton (_("METERS"), ArdourButton::Element (ArdourButton::Text|ArdourButton::Edge|ArdourButton::Body), true));;
livetrax_meter_view_button = manage (new ArdourButton (ArdourButton::Element (ArdourButton::Text|ArdourButton::Edge|ArdourButton::Body), true));;
livetrax_meter_view_button->set_icon (ArdourWidgets::ArdourIcon::Meters);
act = ActionManager::get_action (X_("Common"), X_("livetrax-toggle-meter"));
livetrax_meter_view_button->set_related_action (act);
livetrax_mixer_view_button = manage (new ArdourButton (_("MIXER"), ArdourButton::Element (ArdourButton::Text|ArdourButton::Edge|ArdourButton::Body), true));
livetrax_mixer_view_button = manage (new ArdourButton (ArdourButton::Element (ArdourButton::Text|ArdourButton::Edge|ArdourButton::Body), true));
livetrax_mixer_view_button->set_icon (ArdourWidgets::ArdourIcon::Mixer);
act = ActionManager::get_action (X_("Common"), X_("livetrax-toggle-mixer"));
livetrax_mixer_view_button->set_related_action (act);
@ -483,8 +485,10 @@ ARDOUR_UI::livetrax_setup_windows ()
hb = manage (new HBox);
hb->pack_start (transport_ctrl, false, false);
livetrax_lock_button = manage (new ArdourButton (_("🔒"), elements));
livetrax_lock_button->set_layout_font (UIConfiguration::instance().get_LargerBoldMonospaceFont());
livetrax_lock_button = manage (new ArdourButton (ArdourButton::default_elements, true));
livetrax_lock_button->set_icon (ArdourWidgets::ArdourIcon::Lock);
act = ActionManager::get_action (X_("Editor"), X_("lock"));
livetrax_lock_button->set_related_action (act);
editor->mouse_mode_hbox->pack_start (*livetrax_lock_button, false, false, 12);
livetrax_transport_bar.pack_start (*hb, true, false);
@ -494,6 +498,7 @@ ARDOUR_UI::livetrax_setup_windows ()
editor->_zoom_box.pack_start (*livetrax_view_in_folder_button, false, false, 12);
livetrax_transport_bar.pack_end (editor->_zoom_box, false, false);
livetrax_transport_bar.pack_end (editor->_track_box, false, false);
livetrax_transport_bar.show_all ();
/* meter display */

View File

@ -940,16 +940,14 @@ ARDOUR_UI::use_menubar_as_top_menubar ()
void
ARDOUR_UI::save_ardour_state ()
{
if (!keyboard || !mixer || !editor || !meterbridge) {
return;
}
/* XXX this is all a bit dubious. add_extra_xml() uses
a different lifetime model from add_instant_xml().
*/
XMLNode* node = new XMLNode (keyboard->get_state());
Config->add_extra_xml (*node);
if (keyboard) {
XMLNode* node = new XMLNode (keyboard->get_state());
Config->add_extra_xml (*node);
}
XMLNode* window_node = new XMLNode (X_("UI"));
window_node->set_property (_status_bar_visibility.get_state_name().c_str(), _status_bar_visibility.get_state_value ());
@ -996,13 +994,6 @@ ARDOUR_UI::save_ardour_state ()
window_node->add_child_nocopy (*tearoff_node);
XMLNode& enode (editor->get_state());
XMLNode& mnode (mixer->get_state());
XMLNode& bnode (meterbridge->get_state());
XMLNode& pnode (rc_option_editor->get_state());
XMLNode& rnode (recorder->get_state());
XMLNode& tnode (trigger_page->get_state());
/* store clock modes */
XMLNode* cnode = new XMLNode(X_("ClockModes"));
for (auto const& i: AudioClock::clocks) {
@ -1022,14 +1013,54 @@ ARDOUR_UI::save_ardour_state ()
UIConfiguration::instance().save_state ();
XMLNode* enode (nullptr);
XMLNode* mnode (nullptr);
XMLNode* bnode (nullptr);
XMLNode* pnode (nullptr);
XMLNode* rnode (nullptr);
XMLNode* tnode (nullptr);
if (editor) {
enode = &editor->get_state();
}
if (mixer) {
mnode = &mixer->get_state();
}
if (meterbridge) {
bnode = &meterbridge->get_state();
}
if (rc_option_editor) {
pnode = &rc_option_editor->get_state();
}
if (recorder) {
rnode = &recorder->get_state();
}
if (trigger_page) {
tnode = &trigger_page->get_state();
}
if (_session) {
_session->add_instant_xml (main_window_node);
_session->add_instant_xml (enode);
_session->add_instant_xml (mnode);
_session->add_instant_xml (pnode);
_session->add_instant_xml (bnode);
_session->add_instant_xml (rnode);
_session->add_instant_xml (tnode);
if (enode) {
_session->add_instant_xml (*enode);
}
if (mnode) {
_session->add_instant_xml (*mnode);
}
if (bnode) {
_session->add_instant_xml (*bnode);
}
if (pnode) {
_session->add_instant_xml (*pnode);
}
if (rnode) {
_session->add_instant_xml (*rnode);
}
if (tnode) {
_session->add_instant_xml (*tnode);
}
_session->add_instant_xml (*cnode);
if (location_ui) {
_session->add_instant_xml (location_ui->ui().get_state ());
@ -1044,13 +1075,26 @@ ARDOUR_UI::save_ardour_state ()
/* save current Window settings and sizes for new sessions */
{
Config->add_instant_xml (main_window_node);
Config->add_instant_xml (enode);
Config->add_instant_xml (mnode);
Config->add_instant_xml (pnode);
Config->add_instant_xml (bnode);
Config->add_instant_xml (rnode);
Config->add_instant_xml (tnode);
Config->add_instant_xml (*cnode);
if (enode) {
Config->add_instant_xml (*enode);
}
if (mnode) {
Config->add_instant_xml (*mnode);
}
if (bnode) {
Config->add_instant_xml (*bnode);
}
if (pnode) {
Config->add_instant_xml (*pnode);
}
if (rnode) {
Config->add_instant_xml (*rnode);
}
if (tnode) {
Config->add_instant_xml (*tnode);
}
if (location_ui) {
Config->add_instant_xml (location_ui->ui().get_state ());
}
@ -1061,13 +1105,12 @@ ARDOUR_UI::save_ardour_state ()
}
}
delete &enode;
delete &mnode;
delete &bnode;
delete &pnode;
delete &rnode;
delete &tnode;
delete cnode;
delete enode;
delete mnode;
delete bnode;
delete pnode;
delete rnode;
delete tnode;
Keyboard::save_keybindings ();
}

View File

@ -205,8 +205,8 @@ audio will be resampled, which reduces quality.\n"), desired, PROGRAM_NAME, actu
switch (dialog.run()) {
case RESPONSE_YES:
ARDOUR::AudioEngine::instance ()->stop ();
(dynamic_cast<EngineControlDialog*> (audio_midi_setup.get (true)))->run ();
(dynamic_cast<EngineControlDialog*> (audio_midi_setup.get (true)))->hide ();
(dynamic_cast<EngineControl*> (audio_midi_setup.get (true)))->run ();
(dynamic_cast<EngineControl*> (audio_midi_setup.get (true)))->hide ();
return AudioEngine::instance()->running () ? -1 : 1;
case RESPONSE_ACCEPT:
return 0;
@ -580,10 +580,10 @@ ARDOUR_UI::starting ()
* audio backend end up.
*/
EngineControlDialog* amd;
EngineControl* amd;
try {
amd = dynamic_cast<EngineControlDialog*> (audio_midi_setup.get (true));
amd = dynamic_cast<EngineControl*> (audio_midi_setup.get (true));
} catch (...) {
std::cerr << "audio-midi engine setup failed."<< std::endl;
return -1;
@ -922,10 +922,10 @@ ARDOUR_UI::load_from_application_api (const std::string& path)
/* do this again */
EngineControlDialog* amd;
EngineControl* amd;
try {
amd = dynamic_cast<EngineControlDialog*> (audio_midi_setup.get (true));
amd = dynamic_cast<EngineControl*> (audio_midi_setup.get (true));
} catch (...) {
std::cerr << "audio-midi engine setup failed."<< std::endl;
return;

View File

@ -3566,7 +3566,9 @@ Editor::setup_toolbar ()
toolbar_hbox.pack_end (_zoom_box, false, false, 2);
}
toolbar_hbox.pack_end (*(manage (new ArdourVSpacer ())), false, false, 3);
toolbar_hbox.pack_end (_track_box, false, false);
if (!Profile->get_livetrax()) {
toolbar_hbox.pack_end (_track_box, false, false);
}
toolbar_hbox.show_all ();
}

View File

@ -2073,8 +2073,6 @@ private:
void marker_click_behavior_chosen (Editing::MarkerClickBehavior);
void marker_click_behavior_selection_done (Editing::MarkerClickBehavior);
Gtk::HBox _track_box;
void zoom_adjustment_changed();
void setup_toolbar ();

View File

@ -80,68 +80,9 @@ static const unsigned int latency_tab = 1; /* zero-based, page zero is the main
static const char* results_markup = X_("<span weight=\"bold\" size=\"larger\">%1</span>");
EngineControlDialog::EngineControlDialog ()
: ArdourDialog (_("Audio/MIDI Setup"))
{
engine_control.set_parent (*this);
if (UIConfiguration::instance().get_allow_to_resize_engine_dialog ()) {
set_resizable (false);
}
set_name (X_("AudioMIDISetup"));
/* packup the notebook */
get_vbox ()->set_border_width (12);
get_vbox ()->pack_start (engine_control.contents());
}
void
EngineControlDialog::on_response (int r)
{
/* Do not run ArdourDialog::on_response() which will hide us. Leave
* that to whoever invoked us, if they wish to hide us after "start".
*
* StartupFSM does hide us after response(); Window > Audio/MIDI Setup
* does not.
*/
if (r == RESPONSE_OK) {
pop_splash ();
}
Gtk::Dialog::on_response (r);
}
void
EngineControlDialog::on_show ()
{
ArdourDialog::on_show ();
engine_control.on_show ();
}
void
EngineControlDialog::on_map ()
{
if (!ARDOUR_UI::instance ()->the_session () && !PublicEditor::_instance) {
set_type_hint (Gdk::WINDOW_TYPE_HINT_NORMAL);
} else if (UIConfiguration::instance ().get_all_floating_windows_are_dialogs ()) {
set_type_hint (Gdk::WINDOW_TYPE_HINT_DIALOG);
} else {
set_type_hint (Gdk::WINDOW_TYPE_HINT_UTILITY);
}
ArdourDialog::on_map ();
}
bool
EngineControlDialog::on_delete_event (GdkEventAny* ev)
{
engine_control.on_delete_event (ev);
return ArdourDialog::on_delete_event (ev);
}
EngineControl::EngineControl ()
: engine_status ("")
: ArdourDialog (_("Audio/MIDI Setup"))
, engine_status ("")
, settings_table (4, 4)
, latency_expander (_("Advanced Settings"))
, monitor_expander (_("Hardware Monitoring"))
@ -185,7 +126,6 @@ EngineControl::EngineControl ()
, queue_device_changed (false)
, _have_control (true)
, block_signals (0)
, parent (nullptr)
{
using namespace Notebook_Helpers;
vector<string> backend_names;
@ -193,6 +133,11 @@ EngineControl::EngineControl ()
AttachOptions xopt = AttachOptions (FILL | EXPAND);
int row;
if (UIConfiguration::instance().get_allow_to_resize_engine_dialog ()) {
set_resizable (false);
}
set_name (X_("AudioMIDISetup"));
/* the backend combo is the one thing that is ALWAYS visible */
vector<const ARDOUR::AudioBackendInfo*> backends = ARDOUR::AudioEngine::instance ()->available_backends ();
@ -332,6 +277,11 @@ EngineControl::EngineControl ()
notebook.set_name ("SettingsNotebook");
/* packup the notebook */
get_vbox ()->set_border_width (12);
get_vbox ()->pack_start (notebook);
/* Setup buttons and signals */
lm_button_audio.signal_clicked.connect (sigc::mem_fun (*this, &EngineControl::calibrate_audio_latency));
@ -504,6 +454,7 @@ EngineControl::SignalBlocker::~SignalBlocker ()
void
EngineControl::on_show ()
{
ArdourDialog::on_show ();
if (!ARDOUR::AudioEngine::instance ()->current_backend () || !ARDOUR::AudioEngine::instance ()->running ()) {
// re-check _have_control (jackd running) see #6041
backend_changed ();
@ -512,6 +463,19 @@ EngineControl::on_show ()
start_stop_button.grab_focus ();
}
void
EngineControl::on_map ()
{
if (!ARDOUR_UI::instance ()->the_session () && !PublicEditor::_instance) {
set_type_hint (Gdk::WINDOW_TYPE_HINT_NORMAL);
} else if (UIConfiguration::instance ().get_all_floating_windows_are_dialogs ()) {
set_type_hint (Gdk::WINDOW_TYPE_HINT_DIALOG);
} else {
set_type_hint (Gdk::WINDOW_TYPE_HINT_UTILITY);
}
ArdourDialog::on_map ();
}
void
EngineControl::config_parameter_changed (std::string const& p)
{
@ -536,17 +500,15 @@ EngineControl::config_parameter_changed (std::string const& p)
bool
EngineControl::start_engine ()
{
assert (parent);
int rv = push_state_to_backend (true);
if (rv < 0) {
/* error message from backend */
ArdourMessageDialog msg (*parent, ARDOUR::AudioEngine::instance ()->get_last_backend_error ());
ArdourMessageDialog msg (*this, ARDOUR::AudioEngine::instance ()->get_last_backend_error ());
msg.run ();
} else if (rv > 0) {
/* error from push_state_to_backend() */
// TODO: get error message from push_state_to_backend
ArdourMessageDialog msg (*parent, _("Could not configure Audio/MIDI engine with given settings."));
ArdourMessageDialog msg (*this, _("Could not configure Audio/MIDI engine with given settings."));
msg.run ();
}
return rv == 0;
@ -1121,8 +1083,8 @@ EngineControl::backend_changed ()
maybe_display_saved_state ();
}
if (parent && !UIConfiguration::instance().get_allow_to_resize_engine_dialog ()) {
parent->resize (1, 1); // shrink window
if (!UIConfiguration::instance().get_allow_to_resize_engine_dialog ()) {
resize (1, 1); // shrink window
}
}
@ -2718,7 +2680,7 @@ EngineControl::get_output_device_name () const
void
EngineControl::control_app_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -2731,10 +2693,25 @@ EngineControl::control_app_button_clicked ()
backend->launch_control_app ();
}
void
EngineControl::on_response (int r)
{
/* Do not run ArdourDialog::on_response() which will hide us. Leave
* that to whoever invoked us, if they wish to hide us after "start".
*
* StartupFSM does hide us after response(); Window > Audio/MIDI Setup
* does not.
*/
if (r == RESPONSE_OK) {
pop_splash ();
}
Gtk::Dialog::on_response (r);
}
void
EngineControl::start_stop_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -2755,15 +2732,13 @@ EngineControl::start_stop_button_clicked ()
rv = start_engine () ? RESPONSE_OK : RESPONSE_ACCEPT;
}
if (parent) {
parent->response (rv);
}
response (rv);
}
void
EngineControl::update_devices_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -2785,7 +2760,7 @@ EngineControl::update_devices_button_clicked ()
void
EngineControl::try_autostart_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -2796,7 +2771,7 @@ EngineControl::try_autostart_button_clicked ()
void
EngineControl::use_buffered_io_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -2977,10 +2952,6 @@ unparent_widget (Gtk::Widget& w)
void
EngineControl::populate_action_area (int page_num)
{
if (!parent) {
return;
}
/* re-populate action area */
unparent_widget (start_stop_button);
unparent_widget (connect_disconnect_button);
@ -2991,19 +2962,17 @@ EngineControl::populate_action_area (int page_num)
if (page_num == 0) {
if (_have_control) {
parent->add_widget_action (start_stop_button);
get_action_area ()->add (start_stop_button);
} else {
parent->add_widget_action (connect_disconnect_button);
get_action_area ()->add (connect_disconnect_button);
}
} else if (page_num == latency_tab) {
parent->add_widget_action (lm_measure_button);
parent->add_widget_action (lm_use_button);
parent->add_widget_action (lm_back_button);
lm_measure_button.show();
lm_use_button.show ();
lm_back_button.show ();
get_action_area ()->add (lm_measure_button);
get_action_area ()->add (lm_use_button);
get_action_area ()->add (lm_back_button);
get_action_area ()->show_all ();
} else if (page_num == midi_tab) {
parent->add_widget_action (midi_back_button);
get_action_area ()->add (midi_back_button);
midi_back_button.show ();
}
}
@ -3179,7 +3148,7 @@ EngineControl::end_latency_detection ()
void
EngineControl::latency_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -3193,7 +3162,7 @@ EngineControl::latency_button_clicked ()
void
EngineControl::latency_back_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -3212,7 +3181,7 @@ EngineControl::latency_back_button_clicked ()
void
EngineControl::use_latency_button_clicked ()
{
if (!parent || parent->ui_sensitive()) {
if (!_sensitive) {
return;
}
@ -3258,9 +3227,7 @@ EngineControl::use_latency_button_clicked ()
* from a running instance.
*/
notebook.set_current_page (0);
if (parent) {
parent->response (RESPONSE_OK);
}
response (RESPONSE_OK);
return;
}
@ -3269,6 +3236,17 @@ EngineControl::use_latency_button_clicked ()
}
}
bool
EngineControl::on_delete_event (GdkEventAny* ev)
{
if (lm_running || notebook.get_current_page () == 2) {
/* currently measuring latency - be sure to clean up */
end_latency_detection ();
}
return ArdourDialog::on_delete_event (ev);
}
void
EngineControl::engine_running ()
{
@ -3341,13 +3319,13 @@ EngineControl::connect_disconnect_click ()
stop_engine ();
} else {
if (!ARDOUR_UI::instance ()->the_session ()) {
parent->pop_splash ();
parent->hide ();
pop_splash ();
hide ();
ARDOUR::GUIIdle ();
}
start_engine ();
if (!ARDOUR_UI::instance ()->the_session ()) {
parent->response (RESPONSE_OK);
ArdourDialog::response (RESPONSE_OK);
}
}
}
@ -3377,19 +3355,3 @@ EngineControl::configure_midi_devices ()
{
notebook.set_current_page (midi_tab);
}
void
EngineControl::set_parent (ArdourDialog& d)
{
parent = &d;
}
bool
EngineControl::on_delete_event (GdkEventAny*)
{
if (lm_running || notebook.get_current_page () == 2) {
/* currently measuring latency - be sure to clean up */
end_latency_detection ();
}
return false;
}

View File

@ -45,7 +45,7 @@
#include "ardour_dialog.h"
class EngineControl : public PBD::ScopedConnectionList, virtual public sigc::trackable
class EngineControl : public ArdourDialog, public PBD::ScopedConnectionList
{
public:
EngineControl ();
@ -58,12 +58,6 @@ public:
void set_desired_sample_rate (uint32_t);
Gtk::Widget& contents() { return notebook; }
void on_show ();
bool on_delete_event (GdkEventAny*);
void set_parent (ArdourDialog&);
private:
Gtk::Notebook notebook;
@ -353,6 +347,8 @@ private:
sigc::connection latency_timeout;
sigc::connection lm_back_button_signal;
void on_show ();
void on_map ();
void on_monitor_expand ();
void on_latency_expand ();
void config_parameter_changed (std::string const&);
@ -386,6 +382,8 @@ private:
/* main dialog events */
void on_switch_page (GtkNotebookPage*, guint page_num);
bool on_delete_event (GdkEventAny*);
void on_response (int);
void connect_disconnect_click ();
void calibrate_audio_latency ();
@ -398,27 +396,6 @@ private:
PBD::ScopedConnection running_connection;
PBD::ScopedConnectionList stopped_connection;
PBD::ScopedConnection devicelist_connection;
ArdourDialog* parent;
};
class EngineControlDialog : public ArdourDialog
{
public:
EngineControlDialog ();
XMLNode& get_state () const { return engine_control.get_state (); }
bool set_state (XMLNode const & node) { return engine_control.set_state (node); }
void set_desired_sample_rate (uint32_t hz) { engine_control.set_desired_sample_rate (hz); }
private:
EngineControl engine_control;
void on_show ();
void on_map ();
void on_response (int);
bool on_delete_event (GdkEventAny*);
};
#endif /* __gtk2_ardour_engine_dialog_h__ */

View File

@ -0,0 +1,304 @@
<ui>
<menubar name='Main' action='MainMenu'>
<menu name='Session' action='Session'>
<menuitem action='New'/>
<menuitem action='Open'/>
<menuitem action='Recent'/>
<menuitem action='Close'/>
<separator/>
<menuitem action='Save'/>
<menuitem action='SaveAs'/>
#ifndef WINDOWS /* can't move open files. */
<menuitem action='Rename'/>
<menuitem action='SnapshotStay'/>
<menuitem action='SnapshotSwitch'/>
#endif
<menuitem action='SaveTemplate'/>
<menuitem action='Archive'/>
<separator/>
<menuitem action='addExistingAudioFiles'/>
<menu name='Export' action='Export'>
<menuitem action='QuickExport'/>
<menuitem action='ExportAudio'/>
<menuitem action='StemExport'/>
</menu>
<separator/>
<menu name='Cleanup' action='Cleanup'>
<menuitem action='CleanupPeakFiles'/>
<menuitem action='CleanupUnusedSources'/>
<menuitem action='CleanupUnusedRegions'/>
<menuitem action='FlushWastebasket'/>
</menu>
#ifdef __APPLE__
<menuitem action='toggle-about'/>
#endif
#ifndef MIXBUS
<separator/>
<menuitem action='lock'/>
#endif
#ifndef __APPLE__
<separator/>
<menuitem action='Quit'/>
#endif
</menu>
<menu name='Transport' action='Transport'>
<menuitem action='ToggleRoll'/>
<menuitem action='Record'/>
<separator/>
<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='ToggleFollowEdits'/>
<menuitem action='ToggleAutoPlay'/>
<menuitem action='ToggleAutoReturn'/>
<separator/>
</menu>
<menu name='Edit' action='Edit'>
<menuitem action='undo'/>
<menuitem action='redo'/>
<menuitem action='editor-copy'/>
<menuitem action='editor-paste'/>
<menuitem action='editor-cut'/>
<menuitem action='editor-delete'/>
<separator/>
<menuitem action='split-region'/>
<menu action="SelectMenu">
<menuitem action='select-all-objects'/>
<menuitem action='invert-selection'/>
</menu>
<separator/>
<menuitem action='lock'/>
</menu>
<menu action='TrackMenu'>
<menuitem action='AddTrackBus'/>
<menuitem action='remove-track'/>
<menuitem action="move-selected-tracks-up"/>
<menuitem action="move-selected-tracks-down"/>
</menu>
<menu name='View' action = 'View'>
<menuitem action='toggle-big-clock'/>
<menu action="PrimaryClockMenu">
<menuitem action="primary-clock-timecode"/>
<menuitem action="primary-clock-minsec"/>
<menuitem action="primary-clock-samples"/>
</menu>
<menuitem action="toggle-marker-ruler"/>
<menuitem action="toggle-scene-marker-ruler"/>
<menu action="ZoomMenu">
<menuitem action='temporal-zoom-in'/>
<menuitem action='temporal-zoom-out'/>
<menuitem action='zoom-to-session'/>
</menu>
<menu name='ZoomFocus' action='ZoomFocus'>
<menuitem action='zoom-focus-left'/>
<menuitem action='zoom-focus-right'/>
<menuitem action='zoom-focus-center'/>
<menuitem action='zoom-focus-playhead'/>
<menuitem action='zoom-focus-mouse'/>
<menuitem action='zoom-focus-edit'/>
<menuitem action='cycle-zoom-focus'/>
</menu>
<menuitem action='ToggleGroupTabs'/>
</menu>
<menu action = 'WindowMenu'>
</menu>
</menubar>
<popup action="RulerMenuPopup" accelerators='true'>
<menuitem action="toggle-minsec-ruler"/>
<menuitem action="toggle-timecode-ruler"/>
<menuitem action="toggle-samples-ruler"/>
<menuitem action="toggle-bbt-ruler"/>
<separator/>
<menuitem action="toggle-meter-ruler"/>
<menuitem action="toggle-tempo-ruler"/>
<menuitem action="toggle-range-ruler"/>
<menuitem action="toggle-loop-punch-ruler"/>
<menuitem action="toggle-cd-marker-ruler"/>
<menuitem action="toggle-marker-ruler"/>
<menuitem action="toggle-cue-marker-ruler"/>
<menuitem action="toggle-scene-marker-ruler"/>
<separator/>
<menuitem action="toggle-video-ruler"/>
</popup>
<popup name='ProcessorMenu' accelerators='true'>
<menuitem action='presets'/>
<menuitem action='edit'/>
<menuitem action='edit-generic'/>
<menuitem action='controls'/>
<menuitem action='rename'/>
<separator/>
<menuitem action='manage-pins'/>
<separator/>
<menuitem action='send_options'/>
<separator/>
<menuitem action='newplugin'/>
<menuitem action='newinsert'/>
<menuitem action='newsend'/>
<menuitem action='newaux'/>
<menuitem action='newlisten'/>
<menuitem action='removelisten'/>
<separator/>
<menuitem action='clear'/>
<menuitem action='clear_pre'/>
<menuitem action='clear_post'/>
<separator/>
<menuitem action='cut'/>
<menuitem action='copy'/>
<menuitem action='paste'/>
<menuitem action='delete'/>
<separator/>
<menuitem action='selectall'/>
<menuitem action='deselectall'/>
<separator/>
<menuitem action='activate_all'/>
<menuitem action='deactivate_all'/>
#ifndef MIXBUS
<menuitem action='ab_plugins'/>
#endif
<separator/>
#ifndef MIXBUS
<menu action="disk-io-menu">
<menuitem action='disk-io-prefader'/>
<menuitem action='disk-io-postfader'/>
<menuitem action='disk-io-custom'/>
</menu>
#endif
<menuitem action='custom-volume-pos'/>
<separator/>
</popup>
<popup name='ShuttleUnitPopup' accelerators='true'>
<menuitem action='SetShuttleUnitsPercentage'/>
<menuitem action='SetShuttleUnitsSemitones'/>
</popup>
<popup name='RegionListMenu' accelerators='true'>
<menuitem action='rlAudition'/>
<separator/>
<menuitem action='addExternalAudioToRegionList'/>
<separator/>
<menuitem action='removeUnusedRegions'/>
</popup>
<popup name='PopupRegionMenu' action='PopupRegionMenu' accelerators='true'>
<menuitem action='play-selected-regions'/>
<menuitem action='tag-selected-regions'/>
<separator/>
<menuitem action='group-selected-regions'/>
<menuitem action='ungroup-selected-regions'/>
<separator/>
<menuitem action='loop-region'/>
<menuitem action='rename-region'/>
<menuitem action='show-region-properties'/>
<menu action='RegionMenuEdit'>
<menuitem action='combine-regions'/>
<menuitem action='uncombine-regions'/>
<menuitem action='pitch-shift-region'/>
<menuitem action='split-region'/>
<menuitem action='split-region-at-transients'/>
<menuitem action='split-multichannel-region'/>
<menuitem action='close-region-gaps'/>
<menuitem action='place-transient' />
<menuitem action='show-rhythm-ferret'/>
<menuitem action='strip-region-silence'/>
<menuitem action='reverse-region'/>
</menu>
<menu action='RegionMenuMIDI'>
<menuitem action='transpose-region'/>
<menuitem action='insert-patch-change-context'/>
<menuitem action='quantize-region'/>
<menuitem action='legatize-region'/>
<menuitem action='remove-overlap'/>
<menuitem action='transform-region'/>
<menuitem action='fork-region'/>
<menuitem action='fork-regions-from-unselected'/>
<menuitem action='deinterlace-midi'/>
<menuitem action='show-region-list-editor'/>
</menu>
<menu action='RegionMenuPosition'>
<menuitem action='naturalize-region'/>
<menuitem action='toggle-region-lock'/>
<menuitem action='toggle-region-video-lock'/>
<menuitem action='snap-regions-to-grid'/>
<menuitem action='set-region-sync-position'/>
<menuitem action='remove-region-sync'/>
<menuitem action='nudge-forward'/>
<menuitem action='nudge-backward'/>
<menuitem action='nudge-forward-by-capture-offset'/>
<menuitem action='nudge-backward-by-capture-offset'/>
<menuitem action='sequence-regions'/>
</menu>
<menu action='RegionMenuMarkers'>
<menuitem action='add-region-cue-marker'/>
<menuitem action='clear-region-cue-markers'/>
<separator/>
<menuitem action='make-region-markers-cd'/>
<menuitem action='make-region-markers-global'/>
</menu>
<menu action='RegionMenuTrim'>
<menuitem action='trim-front'/>
<menuitem action='trim-back'/>
<menuitem action='trim-region-to-loop'/>
<menuitem action='trim-region-to-punch'/>
<menuitem action='trim-to-previous-region'/>
<menuitem action='trim-to-next-region'/>
</menu>
<menu action='RegionMenuLayering'>
<menuitem action='raise-region-to-top'/>
<menuitem action='raise-region'/>
<menuitem action='lower-region'/>
<menuitem action='lower-region-to-bottom'/>
</menu>
<menu action='RegionMenuRanges'>
<menuitem action='set-loop-from-region'/>
<menuitem action='set-punch-from-region'/>
<menuitem action='add-range-marker-from-region'/>
<menuitem action='add-range-markers-from-region'/>
<menuitem action='set-selection-from-region'/>
</menu>
<menu action='RegionMenuGain'>
<menuitem action='toggle-opaque-region'/>
<menuitem action='toggle-region-mute'/>
<menuitem action='normalize-region'/>
<menuitem action='boost-region-gain'/>
<menuitem action='cut-region-gain'/>
<menuitem action='reset-region-gain'/>
<menuitem action='reset-region-gain-envelopes'/>
<menuitem action='toggle-region-polarity'/>
<menuitem action='toggle-region-gain-envelope-active'/>
</menu>
<menu action='RegionMenuFades'>
<menuitem action='toggle-region-fade-in'/>
<menuitem action='toggle-region-fade-out'/>
<menuitem action='toggle-region-fades'/>
</menu>
<menu action='RegionMenuDuplicate'>
<menuitem action='duplicate-region'/>
<menuitem action='multi-duplicate-region'/>
<menuitem action='region-fill-track'/>
</menu>
<menuitem action='export-region'/>
<menuitem action='bounce-regions-unprocessed'/>
#ifndef MIXBUS
<menuitem action='bounce-regions-processed'/>
#endif
<menuitem action='loudness-analyze-region'/>
<menuitem action='spectral-analyze-region'/>
<separator/>
<menuitem action='remove-region'/>
</popup>
</ui>

View File

@ -1,980 +0,0 @@
<ui>
<menubar name='Main' action='MainMenu'>
<menu name='Session' action='Session'>
<menuitem action='New'/>
<menuitem action='Open'/>
<menuitem action='Recent'/>
<menuitem action='Close'/>
<separator/>
<menuitem action='Save'/>
<menuitem action='SaveAs'/>
#ifndef WINDOWS /* can't move open files. */
<menuitem action='Rename'/>
<menuitem action='SnapshotStay'/>
<menuitem action='SnapshotSwitch'/>
#endif
<menuitem action='SaveTemplate'/>
<menuitem action='Archive'/>
<separator/>
<menuitem action='AddTrackBus'/>
<separator/>
<menuitem action='addExistingAudioFiles'/>
#ifdef PTFORMAT
<menuitem action='addExistingPTFiles'/>
#endif
<!--menuitem action='importFromSession'/-->
<menuitem action='OpenVideo'/>
<menuitem action='CloseVideo'/>
<menuitem action='LoudnessAssistant'/>
<menu name='Export' action='Export'>
<menuitem action='QuickExport'/>
<menuitem action='ExportAudio'/>
#ifdef VAPOR
<menuitem action='SurroundExport'/>
#endif
<menuitem action='StemExport'/>
<menuitem action='ExportVideo'/>
</menu>
<separator/>
<menuitem action='toggle-session-options-editor'/>
#ifdef VAPOR
<menuitem action='ToggleSurroundMaster'/>
#endif
<menu name='MonitorMenu' action='MonitorMenu'>
<menuitem action='UseMonitorSection'/>
<menuitem action='monitor-cut-all'/>
<menuitem action='monitor-dim-all'/>
<menuitem action='monitor-mono'/>
</menu>
<menu name='Metadata' action='Metadata'>
<menuitem action='EditMetadata'/>
<menuitem action='ImportMetadata'/>
</menu>
<menu name='Cleanup' action='Cleanup'>
<menuitem action='bring-into-session'/>
<menuitem action='CleanupPeakFiles'/>
<menuitem action='CleanupUnusedSources'/>
<menuitem action='CleanupUnusedRegions'/>
<menuitem action='FlushWastebasket'/>
</menu>
#ifdef __APPLE__
<menuitem action='toggle-about'/>
#endif
#ifndef MIXBUS
<separator/>
<menuitem action='lock'/>
#endif
#ifndef __APPLE__
<separator/>
<menuitem action='Quit'/>
#endif
</menu>
<menu name='Transport' action='Transport'>
<menuitem action='ToggleRoll'/>
<menu action="PlayMenu">
<menuitem action='PlaySelection'/>
<menuitem action='solo-selection'/>
<menuitem action='PlayPreroll'/>
<menuitem action='ToggleRollMaybe'/>
<menuitem action='play-from-edit-point-and-return'/>
<menuitem action='Loop'/>
</menu>
<menuitem action='record-roll'/>
<menuitem action='ToggleRollForgetCapture'/>
<menuitem action='Record'/>
<menuitem action='RecordPreroll'/>
<menuitem action='RecordCountIn'/>
#if 0
<menuitem action='toggle-skip-playback'/>
#endif
<separator/>
<menuitem action='Forward'/>
<menuitem action='Rewind'/>
<menuitem action='TransitionToRoll'/>
<menuitem action='TransitionToReverse'/>
<separator/>
<separator/>
<menuitem action='set-loop-from-edit-range'/>
<menuitem action='set-punch-from-edit-range'/>
<menuitem action='set-session-from-edit-range'/>
<menu action="MovePlayHeadMenu">
<menuitem action='set-playhead'/>
<menuitem action='playhead-to-edit'/>
<menuitem action='center-playhead'/>
<separator/>
<menuitem action='nudge-playhead-forward'/>
<menuitem action='nudge-playhead-backward'/>
<separator/>
<menuitem action='tab-to-transient-forwards'/>
<menuitem action='tab-to-transient-backwards'/>
<separator/>
<menuitem action='playhead-forward-to-grid'/>
<menuitem action='playhead-backward-to-grid'/>
<separator/>
<menuitem action='playhead-to-next-region-boundary'/>
<menuitem action='playhead-to-previous-region-boundary'/>
<menuitem action='playhead-to-next-region-boundary-noselection'/>
<menuitem action='playhead-to-previous-region-boundary-noselection'/>
<menuitem action='playhead-to-next-region-sync'/>
<menuitem action='playhead-to-previous-region-sync'/>
<separator/>
<menuitem action='jump-forward-to-mark'/>
<menuitem action='jump-backward-to-mark'/>
<separator/>
<menuitem action='jump-to-loop-start'/>
<menuitem action='jump-to-loop-end'/>
<separator/>
<menuitem action='GotoZero'/>
<menuitem action='GotoStart'/>
<menuitem action='GotoEnd'/>
<menuitem action='GotoWallClock'/>
</menu>
<menu action="MoveActiveMarkMenu">
<menuitem action='selected-marker-to-next-region-boundary'/>
<menuitem action='selected-marker-to-previous-region-boundary'/>
<menuitem action='edit-cursor-to-next-region-sync'/>
<menuitem action='edit-cursor-to-previous-region-sync'/>
</menu>
<menu action="MarkerMenu">
<menuitem action='add-location-from-playhead'/>
<menuitem action='remove-location-from-playhead'/>
<menuitem action='toggle-location-at-playhead'/>
<separator/>
<menuitem action='goto-mark-1'/>
<menuitem action='goto-mark-2'/>
<menuitem action='goto-mark-3'/>
<menuitem action='goto-mark-4'/>
<menuitem action='goto-mark-5'/>
<menuitem action='goto-mark-6'/>
<menuitem action='goto-mark-7'/>
<menuitem action='goto-mark-8'/>
<menuitem action='goto-mark-9'/>
<separator/>
<menuitem action='set-session-start-from-playhead'/>
<menuitem action='set-session-end-from-playhead'/>
</menu>
<menu action="CueMenu">
<menuitem action='trigger-cue-0'/>
<menuitem action='trigger-cue-1'/>
<menuitem action='trigger-cue-2'/>
<menuitem action='trigger-cue-3'/>
<menuitem action='trigger-cue-4'/>
<menuitem action='trigger-cue-5'/>
<menuitem action='trigger-cue-6'/>
<menuitem action='trigger-cue-7'/>
</menu>
<separator/>
<menuitem action='ToggleTimeMaster'/>
<menuitem action='TogglePunch'/>
<menuitem action='TogglePunchIn'/>
<menuitem action='TogglePunchOut'/>
<menuitem action='ToggleAutoInput'/>
<menuitem action='ToggleFollowEdits'/>
<menuitem action='ToggleAutoPlay'/>
<menuitem action='ToggleAutoReturn'/>
<menuitem action='ToggleClick'/>
<menuitem action='toggle-follow-playhead'/>
<menuitem action='toggle-stationary-playhead'/>
<menuitem action='ToggleFollowEdits'/>
<menuitem action='ToggleExternalSync'/>
<menuitem action='panic'/>
<separator/>
</menu>
<menu name='Edit' action='Edit'>
<menuitem action='undo'/>
<menuitem action='redo'/>
<separator/>
<menuitem action='undo-last-selection-op'/>
<menuitem action='redo-last-selection-op'/>
<separator/>
<menuitem action='editor-cut'/>
<menuitem action='editor-copy'/>
<menuitem action='editor-paste'/>
<separator/>
<menuitem action='cut-paste-section'/>
<menuitem action='copy-paste-section'/>
<menuitem action='delete-section'/>
<separator/>
<menu action="SelectMenu">
<menuitem action='select-all-objects'/>
<menuitem action='select-all-tracks'/>
<menuitem action='select-all-visible-lanes'/>
<menuitem action='deselect-all'/>
<menuitem action='invert-selection'/>
<separator/>
<menuitem action='select-loop-range'/>
<menuitem action='select-punch-range'/>
<menuitem action='select-from-regions'/>
<separator/>
<menuitem action='add-range-marker-from-selection'/>
<separator/>
<menuitem action='select-all-after-edit-cursor'/>
<menuitem action='select-all-before-edit-cursor'/>
<menuitem action='select-all-between-cursors'/>
<menuitem action='select-all-within-cursors'/>
<menuitem action='select-all-in-punch-range'/>
<menuitem action='select-all-in-loop-range'/>
<separator/>
<menuitem action='move-range-start-to-previous-region-boundary'/>
<menuitem action='move-range-start-to-next-region-boundary'/>
<menuitem action='move-range-end-to-previous-region-boundary'/>
<menuitem action='move-range-end-to-next-region-boundary'/>
<separator/>
<menuitem action='start-range'/>
<menuitem action='finish-range'/>
<separator/>
<menuitem action='select-next-route'/>
<menuitem action='select-prev-route'/>
</menu>
<separator/>
<menuitem action='editor-delete'/>
<menuitem action='editor-crop'/>
<menuitem action='split-region'/>
<menu action="SeparateMenu">
<menuitem action='separate-under-region'/>
<menuitem action='separate-from-loop'/>
<menuitem action='separate-from-punch'/>
</menu>
<menu action="ConsolidateMenu">
<menuitem action='editor-consolidate'/>
#ifndef MIXBUS
<menuitem action='editor-consolidate-with-processing'/>
#endif
<menuitem action='combine-regions'/>
<menuitem action='uncombine-regions'/>
</menu>
<menu action="AlignMenu">
<menuitem action='align-regions-start'/>
<menuitem action='align-regions-start-relative'/>
<menuitem action='align-regions-end'/>
<menuitem action='align-regions-end-relative'/>
<menuitem action='align-regions-sync'/>
<menuitem action='align-regions-sync-relative'/>
</menu>
<menu action="FadeMenu">
<menuitem action='editor-fade-range'/>
<menuitem action='set-fade-in-length'/>
<menuitem action='toggle-region-fade-in'/>
<menuitem action='set-fade-out-length'/>
<menuitem action='toggle-region-fade-out'/>
</menu>
<separator/>
<menu action="AnalyzeMenu">
<menuitem action='editor-analyze-spectrum'/>
<menuitem action='editor-analyze-loudness'/>
<menuitem action='editor-loudness-assistant'/>
</menu>
<separator/>
<menuitem action='tag-last-capture'/>
<menuitem action='remove-last-capture'/>
<separator/>
<menu action="EditPointMenu">
<menuitem action='cycle-edit-point'/>
<menuitem action='cycle-edit-point-with-marker'/>
</menu>
<menu action="MarkerClickBehavior">
<menuitem action='cycle-marker-click-behavior'/>
<menuitem action='marker-click-select-only'/>
<menuitem action='marker-click-locate'/>
<menuitem action='marker-click-locate-when-stopped'/>
</menu>
<menuitem action='cycle-snap-mode'/>
<menu name='GridChoice' action='GridChoice'>
<menuitem action='prev-grid-choice'/>
<menuitem action='next-grid-choice'/>
<separator/>
<menuitem action='grid-type-none'/>
<menuitem action='grid-type-bar'/>
<menuitem action='grid-type-beat'/>
<menuitem action='grid-type-halves'/>
<menuitem action='grid-type-quarters'/>
<menuitem action='grid-type-eighths'/>
<menuitem action='grid-type-asixteenthbeat'/>
<menuitem action='grid-type-thirtyseconds'/>
<menu action='GridChoiceTriplets'>
<menuitem action='grid-type-thirds'/>
<menuitem action='grid-type-sixths'/>
<menuitem action='grid-type-twelfths'/>
<menuitem action='grid-type-twentyfourths'/>
</menu>
<menu action='GridChoiceQuintuplets'>
<menuitem action='grid-type-fifths'/>
<menuitem action='grid-type-tenths'/>
<menuitem action='grid-type-twentieths'/>
</menu>
<menu action='GridChoiceSeptuplets'>
<menuitem action='grid-type-sevenths'/>
<menuitem action='grid-type-fourteenths'/>
<menuitem action='grid-type-twentyeighths'/>
</menu>
<menuitem action='grid-type-timecode'/>
<menuitem action='grid-type-minsec'/>
<menuitem action='grid-type-cdframe'/>
</menu>
<separator/>
<menu action="TempoMenu">
<menuitem action='set-tempo-from-region'/>
<menuitem action='set-tempo-from-edit-range'/>
</menu>
<menuitem action='set-mouse-mode-object-range'/>
<menuitem action='show-touched-automation'/>
<separator/>
<menu action="LuaScripts">
<menuitem action='toggle-script-manager'/>
<separator/>
<menuitem action='script-1'/>
<menuitem action='script-2'/>
<menuitem action='script-3'/>
<menuitem action='script-4'/>
<menuitem action='script-5'/>
<menuitem action='script-6'/>
<menuitem action='script-7'/>
<menuitem action='script-8'/>
<menuitem action='script-9'/>
</menu>
#ifndef __APPLE__
<separator/>
#endif
<menuitem action='menu-show-preferences'/>
</menu>
<menu name='RegionMenu' action='RegionMenu'>
<menuitem action='insert-region-from-source-list'/>
<menuitem action='play-selected-regions'/>
<menuitem action='tag-selected-regions'/>
<separator/>
<menuitem action='group-selected-regions'/>
<menuitem action='ungroup-selected-regions'/>
<separator/>
<menuitem action='loop-region'/>
<menuitem action='rename-region'/>
<menuitem action='show-region-properties'/>
<menuitem action='loudness-analyze-region'/>
<menuitem action='spectral-analyze-region'/>
<menu action='RegionMenuEdit'>
#ifndef MIXBUS
<menuitem action='combine-regions'/>
<menuitem action='uncombine-regions'/>
#endif
<menuitem action='pitch-shift-region'/>
<menuitem action='split-region-at-transients'/>
<menuitem action='split-multichannel-region'/>
<menuitem action='close-region-gaps'/>
<menuitem action='place-transient' />
<menuitem action='show-rhythm-ferret'/>
<menuitem action='strip-region-silence'/>
<menuitem action='reverse-region'/>
</menu>
<menu action='RegionMenuLayering'>
<menuitem action='raise-region-to-top'/>
<menuitem action='raise-region'/>
<menuitem action='lower-region'/>
<menuitem action='lower-region-to-bottom'/>
</menu>
<menu action='RegionMenuMIDI'>
<menuitem action='transpose-region'/>
<menuitem action='insert-patch-change'/>
<menuitem action='quantize-region'/>
<menuitem action='legatize-region'/>
<menuitem action='remove-overlap'/>
<menuitem action='transform-region'/>
<menuitem action='fork-region'/>
<menuitem action='fork-regions-from-unselected'/>
<menuitem action='deinterlace-midi'/>
<menuitem action='show-region-list-editor'/>
</menu>
<menu action='RegionMenuGain'>
<menuitem action='toggle-opaque-region'/>
<menuitem action='toggle-region-mute'/>
<menuitem action='normalize-region'/>
<menuitem action='boost-region-gain'/>
<menuitem action='cut-region-gain'/>
<menuitem action='reset-region-gain'/>
<menuitem action='reset-region-gain-envelopes'/>
<menuitem action='toggle-region-polarity'/>
<menuitem action='toggle-region-gain-envelope-active'/>
</menu>
<menu action='RegionMenuPosition'>
<menuitem action='naturalize-region'/>
<menuitem action='snap-regions-to-grid'/>
<menuitem action='toggle-region-lock'/>
<menuitem action='toggle-region-video-lock'/>
<menuitem action='set-region-sync-position'/>
<menuitem action='remove-region-sync'/>
<menuitem action='nudge-forward'/>
<menuitem action='nudge-backward'/>
<menuitem action='nudge-forward-by-capture-offset'/>
<menuitem action='nudge-backward-by-capture-offset'/>
<menuitem action='sequence-regions'/>
</menu>
<menu action='RegionMenuMarkers'>
<menuitem action='add-region-cue-marker'/>
<menuitem action='clear-region-cue-markers'/>
<separator/>
<menuitem action='make-region-markers-cd'/>
<menuitem action='make-region-markers-global'/>
</menu>
<menu action='RegionMenuTrim'>
<menuitem action='trim-front'/>
<menuitem action='trim-back'/>
<menuitem action='trim-region-to-loop'/>
<menuitem action='trim-region-to-punch'/>
<menuitem action='trim-to-previous-region'/>
<menuitem action='trim-to-next-region'/>
</menu>
<menu action='RegionMenuRanges'>
<menuitem action='set-loop-from-region'/>
<menuitem action='set-punch-from-region'/>
<menuitem action='add-range-marker-from-region'/>
<menuitem action='add-range-markers-from-region'/>
<menuitem action='set-selection-from-region'/>
</menu>
<menu action='RegionMenuFades'>
<menuitem action='toggle-region-fade-in'/>
<menuitem action='toggle-region-fade-out'/>
<menuitem action='toggle-region-fades'/>
</menu>
<menu action='RegionMenuDuplicate'>
<menuitem action='duplicate-region'/>
<menuitem action='multi-duplicate-region'/>
<menuitem action='region-fill-track'/>
</menu>
<menuitem action='export-region'/>
<menuitem action='bounce-regions-unprocessed'/>
#ifndef MIXBUS
<menuitem action='bounce-regions-processed'/>
#endif
<separator/>
<menuitem action='remove-region'/>
</menu>
<menu action='TrackMenu'>
<menuitem action='AddTrackBus'/>
#ifdef MIXBUS
<menuitem action='addExistingAudioFiles'/>
<menu action='MixTools'>
<menuitem action='lua-store-mixer-settings'/>
<menuitem action='lua-recall-mixer-settings'/>
<menuitem action='lua-reset-mixer'/>
<menuitem action='lua-manage-tracks'/>
</menu>
#endif
<menuitem action='duplicate-routes'/>
<separator/>
<menuitem action='track-record-enable-toggle'/>
<menuitem action='track-solo-toggle'/>
<menuitem action='track-mute-toggle'/>
<menu action='TrackPlaylistMenu'>
<menuitem action='show-plist-selector'/>
<separator/>
<menuitem action='new-playlists-for-all-tracks'/>
<menuitem action='new-playlists-for-armed-tracks'/>
<menuitem action='new-playlists-for-selected-tracks'/>
<separator/>
<menuitem action='copy-playlists-for-all-tracks'/>
<menuitem action='copy-playlists-for-armed-tracks'/>
<menuitem action='copy-playlists-for-selected-tracks'/>
</menu>
<separator/>
<menuitem action='insert-time'/>
<menuitem action='remove-time'/>
<menuitem action='remove-gaps'/>
<separator/>
<menuitem action="move-selected-tracks-up"/>
<menuitem action="move-selected-tracks-down"/>
<menu action='TrackHeightMenu'>
<menuitem action='fit-selection'/>
<menuitem action='track-height-largest'/>
<menuitem action='track-height-larger'/>
<menuitem action='track-height-large'/>
<menuitem action='track-height-normal'/>
<menuitem action='track-height-small'/>
</menu>
<separator/>
<menuitem action='toggle-track-active'/>
<menuitem action='remove-track'/>
<separator/>
</menu>
<menu name='View' action = 'View'>
<menuitem action='ToggleMaximalEditor'/>
<menuitem action='ToggleMaximalMixer'/>
<separator/>
<menu name='LayerDisplay' action = 'LayerDisplay'>
<menuitem action='layer-display-stacked'/>
<menuitem action='layer-display-overlaid'/>
</menu>
<menu action="AutomationMenu">
<menuitem action="toggle-all-existing-automation"/>
</menu>
<separator/>
<menu action="PrimaryClockMenu">
<menuitem action='focus-on-clock'/>
<menuitem action="primary-clock-timecode"/>
<menuitem action="primary-clock-bbt"/>
<menuitem action="primary-clock-minsec"/>
<menuitem action="primary-clock-samples"/>
</menu>
<menu action="SecondaryClockMenu">
<menuitem action="secondary-clock-timecode"/>
<menuitem action="secondary-clock-bbt"/>
<menuitem action="secondary-clock-minsec"/>
<menuitem action="secondary-clock-samples"/>
</menu>
<menu action="RulerMenu">
<menuitem action="toggle-minsec-ruler"/>
<menuitem action="toggle-timecode-ruler"/>
<menuitem action="toggle-samples-ruler"/>
<menuitem action="toggle-bbt-ruler"/>
<separator/>
<menuitem action="toggle-meter-ruler"/>
<menuitem action="toggle-tempo-ruler"/>
<menuitem action="toggle-range-ruler"/>
<menuitem action="toggle-loop-punch-ruler"/>
<menuitem action="toggle-cd-marker-ruler"/>
<menuitem action="toggle-arrangement-ruler"/>
<menuitem action="toggle-marker-ruler"/>
<menuitem action="toggle-cue-marker-ruler"/>
<separator/>
<menuitem action="toggle-video-ruler"/>
</menu>
<separator/>
<menu action="ZoomMenu">
<menuitem action='temporal-zoom-in'/>
<menuitem action='temporal-zoom-out'/>
<menuitem action='zoom-to-session'/>
<menuitem action='zoom-to-extents'/>
<menuitem action='zoom-to-selection'/>
<menuitem action='zoom-to-selection-horiz'/>
<menuitem action='fit-selection'/>
<menuitem action='toggle-zoom'/>
<menuitem action='expand-tracks'/>
<menuitem action='shrink-tracks'/>
</menu>
<menu name='ZoomFocus' action='ZoomFocus'>
<menuitem action='zoom-focus-left'/>
<menuitem action='zoom-focus-right'/>
<menuitem action='zoom-focus-center'/>
<menuitem action='zoom-focus-playhead'/>
<menuitem action='zoom-focus-mouse'/>
<menuitem action='zoom-focus-edit'/>
<menuitem action='cycle-zoom-focus'/>
</menu>
<menu action="ScrollMenu">
<menuitem action='scroll-tracks-down'/>
<menuitem action='scroll-tracks-up'/>
<menuitem action='scroll-forward'/>
<menuitem action='scroll-backward'/>
</menu>
<separator/>
<menu action="VideoMonitorMenu">
<menuitem action="zoom-vmon-100"/>
<menuitem action="toggle-vmon-letterbox"/>
<separator/>
<menuitem action="toggle-vmon-ontop"/>
<menuitem action="toggle-vmon-fullscreen"/>
<separator/>
<menuitem action="toggle-vmon-timecode"/>
<menuitem action="toggle-vmon-frame"/>
<menuitem action="toggle-vmon-osdbg"/>
</menu>
<separator/>
<menu action="SavedViewMenu">
<menuitem action='save-visual-state-1'/>
<menuitem action='goto-visual-state-1'/>
<menuitem action='save-visual-state-2'/>
<menuitem action='goto-visual-state-2'/>
<menuitem action='save-visual-state-3'/>
<menuitem action='goto-visual-state-3'/>
<menuitem action='save-visual-state-4'/>
<menuitem action='goto-visual-state-4'/>
<menuitem action='save-visual-state-5'/>
<menuitem action='goto-visual-state-5'/>
<menuitem action='save-visual-state-6'/>
<menuitem action='goto-visual-state-6'/>
<menuitem action='save-visual-state-7'/>
<menuitem action='goto-visual-state-7'/>
<menuitem action='save-visual-state-8'/>
<menuitem action='goto-visual-state-8'/>
<menuitem action='save-visual-state-9'/>
<menuitem action='goto-visual-state-9'/>
<menuitem action='save-visual-state-10'/>
<menuitem action='goto-visual-state-10'/>
<menuitem action='save-visual-state-11'/>
<menuitem action='goto-visual-state-11'/>
<menuitem action='save-visual-state-12'/>
<menuitem action='goto-visual-state-12'/>
</menu>
<separator/>
<menuitem action='show-editor-mixer'/>
<menuitem action='show-editor-list'/>
<menuitem action='ToggleSummary'/>
<menuitem action='ToggleGroupTabs'/>
<menuitem action='show-marker-lines'/>
<separator/>
<menuitem action='ToggleMixerList'/>
#ifdef MIXBUS
<menuitem action='ToggleMixbusPane'/>
#endif
<menuitem action='ToggleVCAPane'/>
<menuitem action='ToggleMonitorSection'/>
<menuitem action='ToggleFoldbackStrip'/>
#ifdef MIXBUS
<separator/>
<menuitem action='ToggleStripCtrls'/>
<menuitem action='ToggleStripEQ'/>
<menuitem action='ToggleStripBus'/>
#endif
</menu>
<menu action = 'WindowMenu'>
<menuitem action='toggle-audio-midi-setup'/>
<separator/>
<menu action='EditorMenu'>
<menuitem action='show-editor'/>
<menuitem action='hide-editor'/>
<menuitem action='attach-editor'/>
<menuitem action='detach-editor'/>
</menu>
<menu action='MixerMenu'>
<menuitem action='show-mixer'/>
<menuitem action='hide-mixer'/>
<menuitem action='attach-mixer'/>
<menuitem action='detach-mixer'/>
</menu>
<menu action='RecorderMenu'>
<menuitem action='show-recorder'/>
<menuitem action='hide-recorder'/>
<menuitem action='attach-recorder'/>
<menuitem action='detach-recorder'/>
</menu>
<menu action='TriggerMenu'>
<menuitem action='show-trigger'/>
<menuitem action='hide-trigger'/>
<menuitem action='attach-trigger'/>
<menuitem action='detach-trigger'/>
</menu>
<menu action='PrefsMenu'>
<menuitem action='show-preferences'/>
<menuitem action='hide-preferences'/>
<menuitem action='attach-preferences'/>
<menuitem action='detach-preferences'/>
</menu>
<!-- Common Ardour Widows (all toggle) !-->
<menuitem action='toggle-meterbridge'/>
<menuitem action='toggle-locations'/>
<menuitem action='toggle-big-clock'/>
<menuitem action='toggle-big-transport'/>
<menuitem action='toggle-virtual-keyboard'/>
<menuitem action='toggle-library-downloader'/>
<separator/><!-- Video Monitor !-->
<menuitem action='ToggleJadeo'/>
<separator/><!-- Connection dialogs !-->
<menuitem action='toggle-audio-connection-manager'/>
<menuitem action='toggle-midi-connection-manager'/>
#ifndef MIXBUS
<separator/><!-- Ardour specific connection customization !-->
<menuitem action='toggle-inspector'/>
<menuitem action='toggle-bundle-manager'/>
#if 0
<menuitem action='toggle-speaker-config'/>
#endif
#endif
<separator/><!-- Plugin Related !-->
<menuitem action='toggle-plugin-manager'/>
#ifndef MIXBUS
<menuitem action='toggle-io-plugins'/>
#endif
#ifdef MIXBUS
<separator/>
<menuitem action='license-manager'/>
#endif
<separator/><!-- Misc Configuration !-->
<menuitem action='toggle-luawindow'/>
<menuitem action='ManageTemplates'/>
<menuitem action='toggle-transport-masters'/>
<menuitem action='toggle-key-editor'/>
<separator/><!-- Performance measurement !-->
<menuitem action='toggle-plugin-dsp-load'/>
<menuitem action='toggle-dsp-statistics'/>
#if 0
<menuitem action='toggle-idle-o-meter'/>
#endif
<separator/><!-- Logging !-->
<menuitem action='NewMIDITracer'/>
<menuitem action='toggle-log-window'/>
</menu>
<menu name='Help' action='Help'>
#ifndef __APPLE__
<menuitem action='toggle-about'/>
#endif
#ifdef MIXBUS
<menuitem action='website'/>
<menuitem action='tutorial'/>
<menuitem action='reference'/>
<menuitem action='videos'/>
<menuitem action='forums'/>
#else
<menuitem action='chat'/>
<menuitem action='tutorial'/>
<menuitem action='reference'/>
<menuitem action='forums'/>
<menuitem action='howto-report'/>
<menuitem action='tracker'/>
<menuitem action='website'/>
<menuitem action='website-dev'/>
#endif
</menu>
</menubar>
<popup action="editorTabbableButtonMenu" accelerators='true'>
<menuitem action='show-editor'/>
<menuitem action='hide-editor'/>
<menuitem action='attach-editor'/>
<menuitem action='detach-editor'/>
</popup>
<popup action="mixerTabbableButtonMenu" accelerators='true'>
<menuitem action='show-mixer'/>
<menuitem action='hide-mixer'/>
<menuitem action='attach-mixer'/>
<menuitem action='detach-mixer'/>
</popup>
<popup action="recorderTabbableButtonMenu" accelerators='true'>
<menuitem action='show-recorder'/>
<menuitem action='hide-recorder'/>
<menuitem action='attach-recorder'/>
<menuitem action='detach-recorder'/>
</popup>
<popup action="preferencesTabbableButtonMenu" accelerators='true'>
<menuitem action='show-preferences'/>
<menuitem action='hide-preferences'/>
<menuitem action='attach-preferences'/>
<menuitem action='detach-preferences'/>
</popup>
<popup action="triggerTabbableButtonMenu" accelerators='true'>
<menuitem action='show-trigger'/>
<menuitem action='hide-trigger'/>
<menuitem action='attach-trigger'/>
<menuitem action='detach-trigger'/>
</popup>
<popup action="RulerMenuPopup" accelerators='true'>
<menuitem action="toggle-minsec-ruler"/>
<menuitem action="toggle-timecode-ruler"/>
<menuitem action="toggle-samples-ruler"/>
<menuitem action="toggle-bbt-ruler"/>
<separator/>
<menuitem action="toggle-meter-ruler"/>
<menuitem action="toggle-tempo-ruler"/>
<menuitem action="toggle-range-ruler"/>
<menuitem action="toggle-loop-punch-ruler"/>
<menuitem action="toggle-cd-marker-ruler"/>
<menuitem action="toggle-marker-ruler"/>
<menuitem action="toggle-cue-marker-ruler"/>
<separator/>
<menuitem action="toggle-video-ruler"/>
</popup>
<popup name='ProcessorMenu' accelerators='true'>
<menuitem action='presets'/>
<menuitem action='edit'/>
<menuitem action='edit-generic'/>
<menuitem action='controls'/>
<menuitem action='rename'/>
<separator/>
<menuitem action='manage-pins'/>
<separator/>
<menuitem action='send_options'/>
<separator/>
<menuitem action='newplugin'/>
<menuitem action='newinsert'/>
<menuitem action='newsend'/>
<menuitem action='newaux'/>
<menuitem action='newlisten'/>
<menuitem action='removelisten'/>
<separator/>
<menuitem action='clear'/>
<menuitem action='clear_pre'/>
<menuitem action='clear_post'/>
<separator/>
<menuitem action='cut'/>
<menuitem action='copy'/>
<menuitem action='paste'/>
<menuitem action='delete'/>
<separator/>
<menuitem action='selectall'/>
<menuitem action='deselectall'/>
<separator/>
<menuitem action='activate_all'/>
<menuitem action='deactivate_all'/>
#ifndef MIXBUS
<menuitem action='ab_plugins'/>
#endif
<separator/>
#ifndef MIXBUS
<menu action="disk-io-menu">
<menuitem action='disk-io-prefader'/>
<menuitem action='disk-io-postfader'/>
<menuitem action='disk-io-custom'/>
</menu>
#endif
<menuitem action='custom-volume-pos'/>
<separator/>
</popup>
<popup name='ShuttleUnitPopup' accelerators='true'>
<menuitem action='SetShuttleUnitsPercentage'/>
<menuitem action='SetShuttleUnitsSemitones'/>
</popup>
<popup name='RegionListMenu' accelerators='true'>
<menuitem action='rlAudition'/>
<separator/>
<menuitem action='addExternalAudioToRegionList'/>
<separator/>
<menuitem action='removeUnusedRegions'/>
</popup>
<popup name='PopupRegionMenu' action='PopupRegionMenu' accelerators='true'>
<menuitem action='play-selected-regions'/>
<menuitem action='tag-selected-regions'/>
<separator/>
<menuitem action='group-selected-regions'/>
<menuitem action='ungroup-selected-regions'/>
<separator/>
<menuitem action='loop-region'/>
<menuitem action='rename-region'/>
<menuitem action='show-region-properties'/>
<menu action='RegionMenuEdit'>
<menuitem action='combine-regions'/>
<menuitem action='uncombine-regions'/>
<menuitem action='pitch-shift-region'/>
<menuitem action='split-region'/>
<menuitem action='split-region-at-transients'/>
<menuitem action='split-multichannel-region'/>
<menuitem action='close-region-gaps'/>
<menuitem action='place-transient' />
<menuitem action='show-rhythm-ferret'/>
<menuitem action='strip-region-silence'/>
<menuitem action='reverse-region'/>
</menu>
<menu action='RegionMenuMIDI'>
<menuitem action='transpose-region'/>
<menuitem action='insert-patch-change-context'/>
<menuitem action='quantize-region'/>
<menuitem action='legatize-region'/>
<menuitem action='remove-overlap'/>
<menuitem action='transform-region'/>
<menuitem action='fork-region'/>
<menuitem action='fork-regions-from-unselected'/>
<menuitem action='deinterlace-midi'/>
<menuitem action='show-region-list-editor'/>
</menu>
<menu action='RegionMenuPosition'>
<menuitem action='naturalize-region'/>
<menuitem action='toggle-region-lock'/>
<menuitem action='toggle-region-video-lock'/>
<menuitem action='snap-regions-to-grid'/>
<menuitem action='set-region-sync-position'/>
<menuitem action='remove-region-sync'/>
<menuitem action='nudge-forward'/>
<menuitem action='nudge-backward'/>
<menuitem action='nudge-forward-by-capture-offset'/>
<menuitem action='nudge-backward-by-capture-offset'/>
<menuitem action='sequence-regions'/>
</menu>
<menu action='RegionMenuMarkers'>
<menuitem action='add-region-cue-marker'/>
<menuitem action='clear-region-cue-markers'/>
<separator/>
<menuitem action='make-region-markers-cd'/>
<menuitem action='make-region-markers-global'/>
</menu>
<menu action='RegionMenuTrim'>
<menuitem action='trim-front'/>
<menuitem action='trim-back'/>
<menuitem action='trim-region-to-loop'/>
<menuitem action='trim-region-to-punch'/>
<menuitem action='trim-to-previous-region'/>
<menuitem action='trim-to-next-region'/>
</menu>
<menu action='RegionMenuLayering'>
<menuitem action='raise-region-to-top'/>
<menuitem action='raise-region'/>
<menuitem action='lower-region'/>
<menuitem action='lower-region-to-bottom'/>
</menu>
<menu action='RegionMenuRanges'>
<menuitem action='set-loop-from-region'/>
<menuitem action='set-punch-from-region'/>
<menuitem action='add-range-marker-from-region'/>
<menuitem action='add-range-markers-from-region'/>
<menuitem action='set-selection-from-region'/>
</menu>
<menu action='RegionMenuGain'>
<menuitem action='toggle-opaque-region'/>
<menuitem action='toggle-region-mute'/>
<menuitem action='normalize-region'/>
<menuitem action='boost-region-gain'/>
<menuitem action='cut-region-gain'/>
<menuitem action='reset-region-gain'/>
<menuitem action='reset-region-gain-envelopes'/>
<menuitem action='toggle-region-polarity'/>
<menuitem action='toggle-region-gain-envelope-active'/>
</menu>
<menu action='RegionMenuFades'>
<menuitem action='toggle-region-fade-in'/>
<menuitem action='toggle-region-fade-out'/>
<menuitem action='toggle-region-fades'/>
</menu>
<menu action='RegionMenuDuplicate'>
<menuitem action='duplicate-region'/>
<menuitem action='multi-duplicate-region'/>
<menuitem action='region-fill-track'/>
</menu>
<menuitem action='export-region'/>
<menuitem action='bounce-regions-unprocessed'/>
#ifndef MIXBUS
<menuitem action='bounce-regions-processed'/>
#endif
<menuitem action='loudness-analyze-region'/>
<menuitem action='spectral-analyze-region'/>
<separator/>
<menuitem action='remove-region'/>
</popup>
</ui>

View File

@ -50,7 +50,7 @@ bool ARDOUR_COMMAND_LINE::new_session = false;
bool ARDOUR_COMMAND_LINE::try_hw_optimization = true;
bool ARDOUR_COMMAND_LINE::no_connect_ports = false;
string ARDOUR_COMMAND_LINE::keybindings_path = ""; /* empty means use builtin default */
std::string ARDOUR_COMMAND_LINE::menus_file = std::string (PBD::downcase(PROGRAM_NAME)) + ".menus";
std::string ARDOUR_COMMAND_LINE::menus_file = "ardour.menus";
bool ARDOUR_COMMAND_LINE::finder_invoked_ardour = false;
string ARDOUR_COMMAND_LINE::load_template;
bool ARDOUR_COMMAND_LINE::check_announcements = true;

View File

@ -679,11 +679,6 @@ PortGroupList::gather (ARDOUR::Session* session, ARDOUR::DataType type, bool inp
/* we own this port (named after the program) */
/* Hide scene ports for now */
if (p.find (_("Scene ")) != string::npos) {
continue;
}
extra_program[t].push_back (p);
} else if (flags & IsPhysical) {

View File

@ -605,6 +605,7 @@ public:
virtual SelectionPropertiesBox& properties_box() const = 0;
Gtk::HBox* mouse_mode_hbox;
Gtk::HBox _zoom_box;
Gtk::HBox _track_box;
/** the adjustment that controls the overall editor vertical scroll position */
Gtk::Adjustment vertical_adjustment;
Gtk::Adjustment horizontal_adjustment;

View File

Before

Width:  |  Height:  |  Size: 705 B

After

Width:  |  Height:  |  Size: 705 B

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 86 KiB

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

@ -47,7 +47,7 @@
#include "ardour_dialog.h"
class EngineControlDialog;
class EngineControl;
class SessionDialog : public ArdourDialog
{

View File

@ -68,7 +68,7 @@ using namespace PBD;
using std::string;
using std::vector;
StartupFSM::StartupFSM (EngineControlDialog& amd)
StartupFSM::StartupFSM (EngineControl& amd)
: session_domain (Config->get_preferred_time_domain())
, session_existing_sample_rate (0)
, session_engine_hints ("EngineHints")

View File

@ -27,7 +27,7 @@
class ArdourDialog;
class NewUserWizard;
class EngineControlDialog;
class EngineControl;
class SessionDialog;
class PluginScanDialog;
@ -59,7 +59,7 @@ class StartupFSM : public sigc::trackable
WaitingForPlugins
};
StartupFSM (EngineControlDialog&);
StartupFSM (EngineControl&);
~StartupFSM ();
void start ();
@ -121,7 +121,7 @@ class StartupFSM : public sigc::trackable
* created and destroyed within the scope of startup.
*/
EngineControlDialog& audiomidi_dialog;
EngineControl& audiomidi_dialog;
NewUserWizard* new_user_dialog;
SessionDialog* session_dialog;
ArdourDialog* pre_release_dialog;

View File

@ -861,7 +861,7 @@ def options(opt):
opt.load('compiler_c')
opt.load('compiler_cxx')
autowaf.set_options(opt, debug_by_default=True)
opt.add_option('--program-name', type='string', action='store', default='Ardour', dest='program_name',
opt.add_option('--program-name', type='string', action='store', default='LiveTrax', dest='program_name',
help='The user-visible name of the program being built')
opt.add_option('--arch', type='string', action='store', dest='arch',
help='Architecture-specific compiler FLAGS')