set_tip (goto_end_button, _("Go to end of session"));
set_tip (auto_loop_button, _("Play loop range"));
set_tip (midi_panic_button, _("MIDI Panic\nSend note off and reset controller messages on all MIDI channels"));
+ set_tip (auto_return_button, _("Return to last playback start when stopped"));
set_tip (follow_edits_button, _("Playhead follows Range Selections and Edits"));
set_tip (auto_input_button, _("Be sensible about input monitoring"));
set_tip (click_button, _("Enable/Disable audio click"));
return 0;
}
-#define PX_SCALE(px) std::max((float)px, rintf((float)px * ARDOUR_UI::ui_scale))
+#define PX_SCALE(px) std::max((float)px, rintf((float)px * UIConfiguration::instance().get_ui_scale()))
void
ARDOUR_UI::setup_transport ()
transport_tearoff->Visible.connect (sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::reattach_tearoff), static_cast<Box*> (&top_packer),
static_cast<Widget*> (&transport_frame), 1));
- /* build auto-return dropdown */
-
- auto_return_dropdown.set_text (_("Auto Return"));
-
- auto_return_last_locate = manage (new CheckMenuItem (_("Play from last roll")));
- auto_return_last_locate->signal_toggled().connect (sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::toggle_auto_return_state), LastLocate));
- auto_return_last_locate->show ();
- auto_return_dropdown.AddMenuElem (Gtk::Menu_Helpers::CheckMenuElem (*auto_return_last_locate));
-
- auto_return_region_selection = manage (new CheckMenuItem (_("Play from region selection")));
- auto_return_region_selection->signal_toggled().connect (sigc::bind (sigc::mem_fun (*this, &ARDOUR_UI::toggle_auto_return_state), RegionSelectionStart));
- auto_return_region_selection->show ();
- auto_return_dropdown.AddMenuElem (Gtk::Menu_Helpers::CheckMenuElem (*auto_return_region_selection));
+ auto_return_button.set_text(_("Auto Return"));
follow_edits_button.set_text(_("Follow Edits"));
click_button.set_related_action (act);
click_button.signal_button_press_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::click_button_clicked), false);
+ auto_return_button.set_name ("transport option button");
follow_edits_button.set_name ("transport option button");
auto_input_button.set_name ("transport option button");
secondary_clock->ValueChanged.connect (sigc::mem_fun(*this, &ARDOUR_UI::secondary_clock_value_changed));
big_clock->ValueChanged.connect (sigc::mem_fun(*this, &ARDOUR_UI::big_clock_value_changed));
+ act = ActionManager::get_action ("Transport", "ToggleAutoReturn");
+ auto_return_button.set_related_action (act);
act = ActionManager::get_action (X_("Transport"), X_("ToggleFollowEdits"));
follow_edits_button.set_related_action (act);
act = ActionManager::get_action ("Transport", "ToggleAutoInput");
/* CANNOT sigc::bind these to clicked or toggled, must use pressed or released */
solo_alert_button.set_name ("rude solo");
- solo_alert_button.signal_button_press_event().connect (sigc::mem_fun(*this,&ARDOUR_UI::solo_alert_press), false);
+ act = ActionManager::get_action (X_("Main"), X_("cancel-solo"));
+ solo_alert_button.set_related_action (act);
auditioning_alert_button.set_name ("rude audition");
auditioning_alert_button.signal_button_press_event().connect (sigc::mem_fun(*this,&ARDOUR_UI::audition_alert_press), false);
feedback_alert_button.set_name ("feedback alert");
alert_box.pack_start (feedback_alert_button, true, true);
/* all transport buttons should be the same size vertically and
- * horizontally
+ * horizontally
*/
Glib::RefPtr<SizeGroup> transport_button_size_group = SizeGroup::create (SIZE_GROUP_BOTH);
shuttle_box = manage (new ShuttleControl);
shuttle_box->show ();
-
+
VBox* transport_vbox = manage (new VBox);
transport_vbox->set_name ("TransportBase");
transport_vbox->set_border_width (0);
auto_box->pack_start (sync_button, true, true);
if (!ARDOUR::Profile->get_trx()) {
auto_box->pack_start (follow_edits_button, true, true);
- auto_box->pack_start (auto_return_dropdown, true, true);
+ auto_box->pack_start (auto_return_button, true, true);
}
if (!ARDOUR::Profile->get_trx()) {
return true;
}
-bool
-ARDOUR_UI::solo_alert_press (GdkEventButton*)
-{
- if (_session) {
- if (_session->soloing()) {
- _session->set_solo (_session->get_routes(), false);
- } else if (_session->listening()) {
- _session->set_listen (_session->get_routes(), false);
- }
- }
- return true;
-}
-
bool
ARDOUR_UI::feedback_alert_press (GdkEventButton *)
{
boost::function<void (string)> pc (boost::bind (&ARDOUR_UI::parameter_changed, this, _1));
Config->map_parameters (pc);
- reset_dpi ();
+ UIConfiguration::instance().reset_dpi ();
}
void
RefPtr<ToggleAction> tact = RefPtr<ToggleAction>::cast_dynamic (act);
assert (tact);
- ui_config->set_follow_edits (tact->get_active ());
+ UIConfiguration::instance().set_follow_edits (tact->get_active ());
}
-
+