summaryrefslogtreecommitdiffstats
path: root/friendfinder/render/line.h
blob: 7f3ef09aa2e01157dccac0739f542ea6ded574ca (plain) (blame)
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
31
32
33
34
35
36
37
38
39
#ifndef __LINE_H
#define __LINE_H

struct point
{
	Evas_Coord x, y;
	double lat, lon;
};

static inline void point_dump(struct point *p)
{
	printf("%lf,%lf -> %i,%i\n", p->lat, p->lon, p->x, p->y);
}

struct line
{
	struct point p0;
	struct point p1;
};

struct polyline
{
	struct point *points;
	int count;
	unsigned char a, r, g, b, w;
	int mode;
};

Evas_Object *e_smart_line_add(Evas *e);
void e_smart_line_set(Evas_Object *o, struct polyline *pl);
struct polyline *e_smart_line_get(Evas_Object *o);

void polyline_add_point(struct polyline *pl, struct point p);
void polyline_set_width(struct polyline *pl, int w);
void polyline_set_color(struct polyline *pl, int r, int g, int b, int a);
void polyline_delete(struct polyline *pl);
struct polyline *polyline_empty();

#endif