-void BasicUI::toggle_click () { access_action("Transport/ToggleClick"); }
-void BasicUI::midi_panic () { access_action("MIDI/panic"); }
-void BasicUI::toggle_roll () { access_action("Transport/ToggleRoll"); }
-void BasicUI::stop_forget () { access_action("Transport/ToggleRollForgetCapture"); }
+void
+BasicUI::toggle_monitor_dim ()
+{
+ if (session->monitor_out()) {
+ boost::shared_ptr<MonitorProcessor> mon = session->monitor_out()->monitor_control();
+ if (mon->dim_all ()) {
+ mon->set_dim_all (false);
+ } else {
+ mon->set_dim_all (true);
+ }
+ }
+}
+
+void
+BasicUI::toggle_monitor_mono ()
+{
+ if (session->monitor_out()) {
+ boost::shared_ptr<MonitorProcessor> mon = session->monitor_out()->monitor_control();
+ if (mon->mono()) {
+ mon->set_mono (false);
+ } else {
+ mon->set_mono (true);
+ }
+ }
+}
+
+void
+BasicUI::midi_panic ()
+{
+ session->midi_panic ();
+}
+
+void
+BasicUI::toggle_click ()
+{
+ bool state = !Config->get_clicking();
+ Config->set_clicking (state);
+}
+
+void
+BasicUI::toggle_roll ()
+{
+ if (session->transport_rolling()) {
+ transport_stop ();
+ } else {
+ transport_play (false);
+ }
+}
+
+void
+BasicUI::stop_forget ()
+{
+ session->request_stop (true, true);
+}
+
+void BasicUI::mark_in () { access_action("Common/start-range-from-playhead"); }
+void BasicUI::mark_out () { access_action("Common/finish-range-from-playhead"); }