X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fcanvas%2Fcanvas%2Foutline.h;h=38f8eb2e32ca00f046f2d00085028d3e264ec08a;hb=22b07e0233a29d9633ffa825a79503befaf2e16e;hp=c315da874c815e9a640bb6d03331d5efc5d9feb9;hpb=fa22520fd257f166c00615e7e40ec10c9e29b948;p=ardour.git diff --git a/libs/canvas/canvas/outline.h b/libs/canvas/canvas/outline.h index c315da874c..38f8eb2e32 100644 --- a/libs/canvas/canvas/outline.h +++ b/libs/canvas/canvas/outline.h @@ -21,16 +21,21 @@ #define __CANVAS_OUTLINE_H__ #include + +#include + +#include "canvas/visibility.h" #include "canvas/types.h" -#include "canvas/item.h" namespace ArdourCanvas { -class Outline : virtual public Item +class Item; + +class LIBCANVAS_API Outline : public boost::noncopyable { public: - Outline (Group *); - virtual ~Outline () {} + Outline (Item& self); + virtual ~Outline() {} Color outline_color () const { return _outline_color; @@ -41,7 +46,7 @@ public: Distance outline_width () const { return _outline_width; } - + virtual void set_outline_width (Distance); bool outline () const { @@ -50,39 +55,14 @@ public: virtual void set_outline (bool); -#ifdef CANVAS_COMPATIBILITY - int& property_first_arrowhead () { - return _foo_int; - } - int& property_last_arrowhead () { - return _foo_int; - } - int& property_arrow_shape_a () { - return _foo_int; - } - int& property_arrow_shape_b () { - return _foo_int; - } - int& property_arrow_shape_c () { - return _foo_int; - } - bool& property_draw () { - return _foo_bool; - } -#endif - protected: void setup_outline_context (Cairo::RefPtr) const; - - Color _outline_color; - Distance _outline_width; - bool _outline; -#ifdef CANVAS_COMPATIBILITY - int _foo_int; - bool _foo_bool; -#endif + Item& _self; + Color _outline_color; + Distance _outline_width; + bool _outline; }; }