diff include/mb_paint.h @ 186:530bb7728546 include_mb_test

Move header files to $(top_srcdir)/include/ and prefixed with 'mb_'. This is the solution that I dicussed with FourDollars, last night.
author Thinker K.F. Li <thinker@branda.to>
date Wed, 05 Nov 2008 15:24:01 +0800
parents include/mb/paint.h@c7e5b8779bb5
children 29acbd8a0dd0
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/include/mb_paint.h	Wed Nov 05 15:24:01 2008 +0800
@@ -0,0 +1,57 @@
+#ifndef __PAINT_H_
+#define __PAINT_H_
+
+#include <cairo.h>
+#include "mb_types.h"
+#include "mb_redraw_man.h"
+#include "mb_tools.h"
+
+typedef float co_comp_t;
+
+extern paint_t *rdman_paint_color_new(redraw_man_t *rdman,
+				      co_comp_t r, co_comp_t g,
+				      co_comp_t b, co_comp_t a);
+extern void paint_color_set(paint_t *paint,
+			    co_comp_t r, co_comp_t g,
+			    co_comp_t b, co_comp_t a);
+extern void paint_color_get(paint_t *paint,
+			    co_comp_t *r, co_comp_t *g,
+			    co_comp_t *b, co_comp_t *a);
+#define paint_init(_paint, _prepare, _free)	\
+     do {					\
+	 (_paint)->flags = 0;			\
+	 (_paint)->prepare = _prepare;		\
+	 (_paint)->free = _free;		\
+	 STAILQ_INIT((_paint)->members);	\
+	 (_paint)->pnt_next = NULL;		\
+     } while(0)					\
+
+
+typedef struct _grad_stop {
+    co_aix offset;
+    co_comp_t r, g, b, a;
+} grad_stop_t;
+
+extern paint_t *rdman_paint_linear_new(redraw_man_t *rdman,
+				       co_aix x1, co_aix y1,
+				       co_aix x2, co_aix y2);
+extern grad_stop_t *paint_linear_stops(paint_t *paint,
+				       int n_stops,
+				       grad_stop_t *stops);
+extern paint_t *rdman_paint_radial_new(redraw_man_t *rdman,
+				       co_aix cx, co_aix cy, co_aix r);
+extern grad_stop_t *paint_radial_stops(paint_t *paint,
+				       int n_stops,
+				       grad_stop_t *stops);
+
+#define grad_stop_init(stop, _offset, _r, _g, _b, _a)	\
+    do {						\
+	(stop)->offset = _offset;			\
+	(stop)->r = _r;					\
+	(stop)->g = _g;					\
+	(stop)->b = _b;					\
+	(stop)->a = _a;					\
+    } while(0)
+
+
+#endif /* __PAINT_H_ */