ActionManager::get_action ("Transport", "ToggleFollowEdits")->set_sensitive (false);
}
- } else if (p == "always-play-range") {
+ } else if (p == "follow-edits") {
- ActionManager::map_some_state ("Transport", "ToggleFollowEdits", &RCConfiguration::get_always_play_range);
+ ActionManager::map_some_state ("Transport", "ToggleFollowEdits", &RCConfiguration::get_follow_edits);
} else if (p == "send-mtc") {
ActionManager::map_some_state ("Transport", "ToggleClick", &RCConfiguration::get_clicking);
} else if (p == "use-video-sync") {
ActionManager::map_some_state ("Transport", "ToggleVideoSync", sigc::mem_fun (_session->config, &SessionConfiguration::get_use_video_sync));
- } else if (p == "video-pullup" || p == "timecode-format") {
-
- synchronize_sync_source_and_video_pullup ();
- reset_main_clocks ();
- editor->queue_visual_videotimeline_update();
-
} else if (p == "sync-source") {
synchronize_sync_source_and_video_pullup ();
+ set_fps_timeout_connection ();
} else if (p == "show-track-meters") {
editor->toggle_meter_updating();
secondary_clock->set_widget_name ("secondary");
}
} else if (p == "super-rapid-clock-update") {
- stop_clocking ();
- start_clocking ();
+ if (_session) {
+ stop_clocking ();
+ start_clocking ();
+ }
} else if (p == "waveform-gradient-depth") {
ArdourCanvas::WaveView::set_global_gradient_depth (config()->get_waveform_gradient_depth());
} else if (p == "show-editor-meter") {
bool show = Config->get_show_editor_meter();
- if (editor_meter && show) {
- meter_box.show();
- editor_meter_peak_display.show();
- } else if (editor_meter && !show) {
- meter_box.hide();
- editor_meter_peak_display.hide();
+
+ if (editor_meter) {
+ if (meter_box.get_parent()) {
+ transport_tearoff_hbox.remove (meter_box);
+ transport_tearoff_hbox.remove (editor_meter_peak_display);
+ }
+
+ if (show) {
+ transport_tearoff_hbox.pack_start (meter_box, false, false);
+ transport_tearoff_hbox.pack_start (editor_meter_peak_display, false, false);
+ meter_box.show();
+ editor_meter_peak_display.show();
+ }
}
+ } else if (p == "waveform-scale") {
+ ArdourCanvas::WaveView::set_global_logscaled (Config->get_waveform_scale() == Logarithmic);
+ } else if (p == "waveform-shape") {
+ ArdourCanvas::WaveView::set_global_shape (Config->get_waveform_shape() == Rectified
+ ? ArdourCanvas::WaveView::Rectified : ArdourCanvas::WaveView::Normal);
+ } else if (p == "show-waveform-clipping") {
+ ArdourCanvas::WaveView::set_global_show_waveform_clipping (ARDOUR_UI::config()->get_show_waveform_clipping());
}
}
{
if (p == "native-file-data-format" || p == "native-file-header-format") {
update_format ();
+ } else if (p == "timecode-format") {
+ set_fps_timeout_connection ();
+ } else if (p == "video-pullup" || p == "timecode-format") {
+ set_fps_timeout_connection ();
+
+ synchronize_sync_source_and_video_pullup ();
+ reset_main_clocks ();
+ editor->queue_visual_videotimeline_update();
+ } else if (p == "track-name-number") {
+ /* DisplaySuspender triggers _route->redisplay() when going out of scope
+ * which eventually calls reset_controls_layout_width() and re-sets the
+ * track-header width.
+ * see also RouteTimeAxisView::update_track_number_visibility()
+ */
+ DisplaySuspender ds;
}
}