11b649cfb8c941fd911aa40ddc660941cf3194c3
[ardour.git] / libs / canvas / canvas / poly_item.h
1 #ifndef __CANVAS_POLY_ITEM_H__
2 #define __CANVAS_POLY_ITEM_H__
3
4 #include "canvas/item.h"
5 #include "canvas/outline.h"
6
7 namespace ArdourCanvas {
8
9 class PolyItem : virtual public Item, public Outline
10 {
11 public:
12         PolyItem (Group *);
13
14         void compute_bounding_box () const;
15
16         void add_poly_item_state (XMLNode *) const;
17         void set_poly_item_state (XMLNode const *);
18         
19         void set (Points const &);
20         Points const & get () const;
21
22 protected:
23         void render_path (Rect const &, Cairo::RefPtr<Cairo::Context>) const;
24
25         Points _points;
26 };
27         
28 }
29
30 #endif