add more controllable modifiers for region transparency
[ardour.git] / gtk2_ardour / control_point.cc
index 9b588d1babadc97b530dcee308dbf5c7783a44a4..4963b2589d812e2a63e8305af8a3cf732924d8e3 100644 (file)
@@ -45,8 +45,8 @@ ControlPoint::ControlPoint (AutomationLine& al)
 
        _item = new ArdourCanvas::Rectangle (&_line.canvas_group());
        _item->set_fill (true);
-       _item->set_fill_color (ARDOUR_UI::config()->get_canvasvar_ControlPointFill());
-       _item->set_outline_color (ARDOUR_UI::config()->get_canvasvar_ControlPointOutline());
+       _item->set_fill_color (ARDOUR_UI::config()->color ("control point fill"));
+       _item->set_outline_color (ARDOUR_UI::config()->color ("control point outline"));
        _item->set_data ("control_point", this);
        _item->Event.connect (sigc::mem_fun (this, &ControlPoint::event_handler));
 
@@ -70,7 +70,7 @@ ControlPoint::ControlPoint (const ControlPoint& other, bool /*dummy_arg_to_force
 
        _item = new ArdourCanvas::Rectangle (&_line.canvas_group());
        _item->set_fill (true);
-       _item->set_outline_color (ARDOUR_UI::config()->get_canvasvar_ControlPointOutline());
+       _item->set_outline_color (ARDOUR_UI::config()->color ("control point outline"));
 
        /* NOTE: no event handling in copied ControlPoints */
 
@@ -119,16 +119,13 @@ ControlPoint::reset (double x, double y, AutomationList::iterator mi, uint32_t v
 void
 ControlPoint::set_color ()
 {
-       uint32_t color = 0;
-
        if (_selected) {
-               color = ARDOUR_UI::config()->get_canvasvar_ControlPointSelected();
+               _item->set_outline_color(ARDOUR_UI::config()->color ("control point selected outline"));;
+               _item->set_fill_color(ARDOUR_UI::config()->color ("control point selected fill"));
        } else {
-               color = ARDOUR_UI::config()->get_canvasvar_ControlPointOutline();
+               _item->set_outline_color(ARDOUR_UI::config()->color ("control point outline"));
+               _item->set_fill_color(ARDOUR_UI::config()->color ("control point fill"));
        }
-
-       _item->set_outline_color (color);
-       _item->set_fill_color (ARDOUR_UI::config()->get_canvasvar_ControlPointFill());
 }
 
 void
@@ -167,8 +164,8 @@ ControlPoint::move_to (double x, double y, ShapeType shape)
        _shape = shape;
 }
 
-void
-ControlPoint::i2w (double& x, double& y) const
+ArdourCanvas::Item&
+ControlPoint::item() const 
 {
-       _item->item_to_canvas (x, y);
+       return *_item;
 }