use new Canvas::Note object for (sustained) note display
[ardour.git] / libs / canvas / outline.cc
index be8b924df25a5b3a0f01858b1635709a7f926612..fcb7b75d40c85779a3727aa4b541c2d129196dc8 100644 (file)
 #include "pbd/compose.h"
 #include "pbd/convert.h"
 
-#include "ardour/utils.h"
+#include "canvas/item.h"
 #include "canvas/outline.h"
-#include "canvas/utils.h"
 #include "canvas/debug.h"
 
 using namespace ArdourCanvas;
 
-Outline::Outline (Group* parent)
-       : Item (parent)
+Outline::Outline (Item& self)
+       : _self (self)
        , _outline_color (0x000000ff)
        , _outline_width (1.0)
        , _outline (true)
 {
-
 }
 
 void
-Outline::set_outline_color (Color color)
+Outline::set_outline_color (Gtkmm2ext::Color color)
 {
        if (color != _outline_color) {
-               begin_visual_change ();
+               _self.begin_visual_change ();
                _outline_color = color;
-               end_visual_change ();
+               _self.end_visual_change ();
        }
 }
 
@@ -52,10 +50,10 @@ void
 Outline::set_outline_width (Distance width)
 {
        if (width != _outline_width) {
-               begin_change ();
+               _self.begin_change ();
                _outline_width = width;
-               _bounding_box_dirty = true;
-               end_change ();
+               _self._bounding_box_dirty = true;
+               _self.end_change ();
        }
 }
 
@@ -63,17 +61,17 @@ void
 Outline::set_outline (bool outline)
 {
        if (outline != _outline) {
-               begin_change ();
+               _self.begin_change ();
                _outline = outline;
-               _bounding_box_dirty = true;
-               end_change ();
+               _self._bounding_box_dirty = true;
+               _self.end_change ();
        }
 }
 
 void
 Outline::setup_outline_context (Cairo::RefPtr<Cairo::Context> context) const
 {
-       set_source_rgba (context, _outline_color);
+       Gtkmm2ext::set_source_rgba (context, _outline_color);
        context->set_line_width (_outline_width);
 }