//set_size_request_to_display_given_text (pan_automation_style_button, X_("0"), 2, 2);
pan_bar_packer.set_size_request (-1, 61);
- panning_viewport.set_size_request (61, 61);
+ panning_viewport.set_size_request (64, 61);
panning_viewport.set_name (X_("BaseFrame"));
panning_up_arrow.set_name (X_("PanScrollerArrow"));
panning_down_arrow.set_name (X_("PanScrollerArrow"));
- pan_vbox.set_spacing (4);
+ pan_vbox.set_spacing (2);
pan_vbox.pack_start (panning_viewport, Gtk::PACK_SHRINK);
pan_vbox.pack_start (panning_link_box, Gtk::PACK_SHRINK);
{
switch (w) {
case Wide:
- panning_viewport.set_size_request (61, 61);
+ panning_viewport.set_size_request (64, 61);
if (panner) {
- panner->set_size_request (61, 61);
+ panner->set_size_request (63, 61);
}
for (vector<PannerBar*>::iterator i = pan_bars.begin(); i != pan_bars.end(); ++i) {
- (*i)->set_size_request (61, pan_bar_height);
+ (*i)->set_size_request (63, pan_bar_height);
}
panning_link_button.set_label (_("link"));
break;
case Narrow:
- panning_viewport.set_size_request (31, 61);
+ panning_viewport.set_size_request (34, 61);
if (panner) {
- panner->set_size_request (31, 61);
+ panner->set_size_request (33, 61);
}
for (vector<PannerBar*>::iterator i = pan_bars.begin(); i != pan_bars.end(); ++i) {
- (*i)->set_size_request (31, pan_bar_height);
+ (*i)->set_size_request (33, pan_bar_height);
}
panning_link_button.set_label (_("L"));
break;
while ((asz = pan_adjustments.size()) < npans) {
- float x;
+ float x, rx;
PannerBar* bc;
- /* initialize adjustment with current value of panner */
+ /* initialize adjustment with 0.0 (L) or 1.0 (R) for the first and second panners,
+ which serves as a default, otherwise use current value */
- _io->panner()[asz]->get_position (x);
+ _io->panner()[asz]->get_position (rx);
+
+ if (npans == 1) {
+ x = 0.5;
+ } else if (asz == 0) {
+ x = 0.0;
+ } else if (asz == 1) {
+ x = 1.0;
+ } else {
+ x = rx;
+ }
pan_adjustments.push_back (new Adjustment (x, 0, 1.0, 0.05, 0.1));
+ bc = new PannerBar (*pan_adjustments[asz], _io->panner()[asz]->control());
+
+ /* now set adjustment with current value of panner, then connect the signals */
+ pan_adjustments.back()->set_value(rx);
pan_adjustments.back()->signal_value_changed().connect (bind (mem_fun(*this, &PannerUI::pan_adjustment_changed), (uint32_t) asz));
_io->panner()[asz]->Changed.connect (bind (mem_fun(*this, &PannerUI::pan_value_changed), (uint32_t) asz));
- bc = new PannerBar (*pan_adjustments[asz], _io->panner()[asz]->control());
bc->set_name ("PanSlider");
bc->set_shadow_type (Gtk::SHADOW_NONE);
pan_bars.push_back (bc);
switch (_width) {
case Wide:
- bc->set_size_request (61, pan_bar_height);
+ bc->set_size_request (63, pan_bar_height);
break;
case Narrow:
- bc->set_size_request (31, pan_bar_height);
+ bc->set_size_request (33, pan_bar_height);
break;
}
switch (_width) {
case Wide:
- w = 61;
+ w = 63;
break;
case Narrow:
- w = 31;
+ w = 33;
break;
}