+void
+RouteParams_UI::setup_latency_frame ()
+{
+ latency_widget = new LatencyGUI (*(_route->output()), session->frame_rate(), session->engine().frames_per_cycle());
+
+ char buf[128];
+ snprintf (buf, sizeof (buf), _("Playback delay: %u samples"), _route->initial_delay());
+ delay_label.set_text (buf);
+
+ latency_packer.pack_start (*latency_widget, false, false);
+ latency_packer.pack_start (latency_button_box, false, false);
+ latency_packer.pack_start (delay_label);
+
+ latency_apply_conn = latency_apply_button.signal_clicked().connect (mem_fun (*latency_widget, &LatencyGUI::finish));
+ latency_conn = _route->signal_latency_changed.connect (mem_fun (*this, &RouteParams_UI::refresh_latency));
+ delay_conn = _route->initial_delay_changed.connect (mem_fun (*this, &RouteParams_UI::refresh_latency));
+
+ latency_frame.add (latency_packer);
+ latency_frame.show_all ();
+}
+