PannerUI::PannerUI (IO& io, Session& s)
: _io (io),
_session (s),
- panning_up_arrow (GTK_ARROW_UP, Gtk::SHADOW_OUT),
- panning_down_arrow (GTK_ARROW_DOWN, Gtk::SHADOW_OUT),
+ hAdjustment(0.0, 0.0, 0.0),
+ vAdjustment(0.0, 0.0, 0.0),
+ panning_viewport(hAdjustment, vAdjustment),
+ panning_up_arrow (Gtk::ARROW_UP, Gtk::SHADOW_OUT),
+ panning_down_arrow (Gtk::ARROW_DOWN, Gtk::SHADOW_OUT),
panning_link_button (_("link"))
{
we need a pixmap in the button just to get started.
*/
- panning_link_direction_button.add (*(manage (new Pixmap (forwdblarrow_xpm))));
+ panning_link_direction_button.add (*(manage (new Image (Gdk::Pixbuf::create_from_xpm_data(forwdblarrow_xpm)))));
- panning_link_direction_button.clicked.connect
+ panning_link_direction_button.signal_clicked().connect
(mem_fun(*this, &PannerUI::panning_link_direction_clicked));
panning_link_button.signal_button_press_event().connect
panning_down_arrow.set_name (X_("PanScrollerArrow"));
pan_vbox.set_spacing (4);
- pan_vbox.pack_start (panning_viewport, false, false);
- pan_vbox.pack_start (panning_link_box, false, false);
+ pan_vbox.pack_start (panning_viewport, Gtk::PACK_SHRINK);
+ pan_vbox.pack_start (panning_link_box, Gtk::PACK_SHRINK);
pack_start (pan_vbox, true, false);
- pan_vbox.show_all ();
- show ();
panner = 0;
switch (_io.panner().link_direction()) {
case Panner::SameDirection:
- static_cast<Pixmap*> (panning_link_direction_button.get_child())->set (forwdblarrow_xpm);
+ panning_link_direction_button.set_image (*(manage (new Image (Gdk::Pixbuf::create_from_xpm_data (forwdblarrow_xpm)))));
break;
default:
- static_cast<Pixmap*> (panning_link_direction_button.get_child())->set (revdblarrow_xpm);
+ panning_link_direction_button.set_image (*(manage (new Image (Gdk::Pixbuf::create_from_xpm_data (revdblarrow_xpm)))));
break;
}
}
}
-gint
-PannerUI::entry_focus_event (GdkEventFocus* ev)
-{
- if (ev->in) {
- ARDOUR_UI::instance()->allow_focus (true);
- } else {
- ARDOUR_UI::instance()->allow_focus (false);
- }
- return TRUE;
-}
-
void
PannerUI::panner_changed ()
{
_io.panner()[asz]->get_position (x);
pan_adjustments.push_back (new Adjustment (x, 0, 1.0, 0.05, 0.1));
- pan_adjustments.back()->value_changed.connect (bind (mem_fun(*this, &PannerUI::pan_adjustment_changed), (uint32_t) asz));
+ 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->set_name ("PanSlider");
- bc->set_shadow_type (GTK_SHADOW_NONE);
+ bc->set_shadow_type (Gtk::SHADOW_NONE);
bc->set_style (BarController::Line);
- bc->get_spin_button().signal_focus_in_event()().connect (mem_fun(*this, &PannerUI::entry_focus_event));
- bc->get_spin_button().signal_focus_out_event()().connect (mem_fun(*this, &PannerUI::entry_focus_event));
bc->StartGesture.connect (bind (mem_fun (_io, &IO::start_pan_touch), (uint32_t) asz));
bc->StopGesture.connect (bind (mem_fun (_io, &IO::end_pan_touch), (uint32_t) asz));
/* set state first, connect second */
- (dynamic_cast<CheckMenuItem*> (items.back()))->set_active (_io.panner()[which]->muted());
- (dynamic_cast<CheckMenuItem*> (items.back()))->toggled.connect
+ (dynamic_cast<CheckMenuItem*> (&items.back()))->set_active (_io.panner()[which]->muted());
+ (dynamic_cast<CheckMenuItem*> (&items.back()))->signal_toggled().connect
(bind (mem_fun(*this, &PannerUI::pan_mute), which));
items.push_back (CheckMenuElem (_("Bypass"), mem_fun(*this, &PannerUI::pan_bypass_toggle)));
- bypass_menu_item = static_cast<CheckMenuItem*> (items.back());
+ bypass_menu_item = static_cast<CheckMenuItem*> (&items.back());
/* set state first, connect second */
bypass_menu_item->set_active (_io.panner().bypassed());
- bypass_menu_item->toggled.connect (mem_fun(*this, &PannerUI::pan_bypass_toggle));
+ bypass_menu_item->signal_toggled().connect (mem_fun(*this, &PannerUI::pan_bypass_toggle));
items.push_back (MenuElem (_("Reset"), mem_fun(*this, &PannerUI::pan_reset)));
items.push_back (SeparatorElem());