summaryrefslogtreecommitdiff
path: root/libs/canvas/canvas/poly_item.h
blob: 11b649cfb8c941fd911aa40ddc660941cf3194c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef __CANVAS_POLY_ITEM_H__
#define __CANVAS_POLY_ITEM_H__

#include "canvas/item.h"
#include "canvas/outline.h"

namespace ArdourCanvas {

class PolyItem : virtual public Item, public Outline
{
public:
	PolyItem (Group *);

	void compute_bounding_box () const;

	void add_poly_item_state (XMLNode *) const;
	void set_poly_item_state (XMLNode const *);
	
	void set (Points const &);
	Points const & get () const;

protected:
	void render_path (Rect const &, Cairo::RefPtr<Cairo::Context>) const;

	Points _points;
};
	
}

#endif