+Gtk::Widget*
+CanvasView::create_display_bar()
+{
+ displaybar = manage(new class Gtk::Table(1, 1, false));
+ // Setup the ToggleDuckDial widget
+ toggleducksdial = Gtk::manage(new class ToggleDucksDial());
+
+ Duck::Type m = work_area->get_type_mask();
+ toggleducksdial->update_toggles(m);
+
+ toggleducksdial->signal_ducks_position().connect(
+ sigc::bind(sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),Duck::TYPE_POSITION)
+ );
+ toggleducksdial->signal_ducks_vertex().connect(
+ sigc::bind(sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),Duck::TYPE_VERTEX)
+ );
+ toggleducksdial->signal_ducks_tangent().connect(
+ sigc::bind(sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),Duck::TYPE_TANGENT)
+ );
+ toggleducksdial->signal_ducks_radius().connect(
+ sigc::bind(sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),Duck::TYPE_RADIUS)
+ );
+ toggleducksdial->signal_ducks_width().connect(
+ sigc::bind(sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),Duck::TYPE_WIDTH)
+ );
+ toggleducksdial->signal_ducks_angle().connect(
+ sigc::bind(sigc::mem_fun(*this, &studio::CanvasView::toggle_duck_mask),Duck::TYPE_ANGLE)
+ );
+ toggleducksdial->show();
+
+ displaybar->attach(*toggleducksdial, 0, 1, 0, 1, Gtk::SHRINK, Gtk::SHRINK);
+ displaybar->show();
+
+ return displaybar;
+
+}
+