added evas object box
[ego.git] / src / lib / gradient2.c
blob12c38c1c44913ee94659ecf0c5d545fc4c018e3a
1 #include "gradient2.h"
2 #include "luaobj.h"
3 #include "class.h"
4 #include "object.h"
5 #include "macro.h"
6 #include <Evas.h>
8 static int
9 lgradient2_fn_color_np_stop_insert (lua_State *L)
11 luaobj_Object *obj = lua_touserdata (L, 1);
12 lua_rawgeti (L, 2, 1); // r
13 lua_rawgeti (L, 2, 2); // g
14 lua_rawgeti (L, 2, 3); // b
15 lua_rawgeti (L, 2, 4); // a
16 lua_rawgeti (L, 2, 5); // pos
17 evas_object_gradient2_color_np_stop_insert (
18 obj->data,
19 luaL_checkint (L, -5),
20 luaL_checkint (L, -4),
21 luaL_checkint (L, -3),
22 luaL_checkint (L, -2),
23 luaL_checknumber (L, -1));
24 return 0;
27 static int
28 lgradient2_get_fill_transform (lua_State *L)
30 luaobj_Object *obj = lua_touserdata (L, 1);
31 Evas_Transform *trans = NULL;
32 evas_object_gradient2_fill_transform_get (obj->data, trans);
33 // FIXME registry
34 lua_pushnil (L);
35 return 1;
37 GET_INTEGER (lgradient2_get_fill_spread, evas_object_gradient2_fill_spread_get);
38 SET_INTEGER (lgradient2_set_fill_spread, evas_object_gradient2_fill_spread_set);
39 SET_OBJ (lgradient2_set_fill_transform, evas_object_gradient2_fill_transform_set);
41 GET_TAB4INTEGER (lgradient2_linear_get_fill, evas_object_gradient2_linear_fill_get);
42 GET_TAB4FLOAT (lgradient2_radial_get_fill, evas_object_gradient2_radial_fill_get);
44 SET_TAB4INTEGER (lgradient2_linear_set_fill, evas_object_gradient2_linear_fill_set);
45 SET_TAB4FLOAT (lgradient2_radial_set_fill, evas_object_gradient2_radial_fill_set);
47 const struct luaL_Reg lGradient2_fn[] = {
48 {"color_np_stop_insert", lgradient2_fn_color_np_stop_insert},
49 {NULL, NULL} // sentinel
52 const struct luaL_Reg lGradient2_get[] = {
53 {"fill_spread", lgradient2_get_fill_spread},
54 {"fill_transform", lgradient2_get_fill_transform},
55 {NULL, NULL} // sentinel
58 const struct luaL_Reg lGradient2_set[] = {
59 {"fill_spread", lgradient2_set_fill_spread},
60 {"fill_transform", lgradient2_set_fill_transform},
61 {NULL, NULL} // sentinel
64 const struct luaL_Reg lGradient2_Linear_get[] = {
65 {"fill", lgradient2_linear_get_fill},
66 {NULL, NULL} // sentinel
69 const struct luaL_Reg lGradient2_Linear_set[] = {
70 {"fill", lgradient2_linear_set_fill},
71 {NULL, NULL} // sentinel
74 const struct luaL_Reg lGradient2_Radial_get[] = {
75 {"fill", lgradient2_radial_get_fill},
76 {NULL, NULL} // sentinel
79 const struct luaL_Reg lGradient2_Radial_set[] = {
80 {"fill", lgradient2_radial_set_fill},
81 {NULL, NULL} // sentinel
84 const luaL_Reg lGradient2_nil [] = {
85 {NULL, NULL} // sentinel
88 const luaobj_Reg mGradient2 = {
89 lGradient2_nil, // mt
90 lGradient2_get,
91 lGradient2_set,
92 lGradient2_fn
95 const luaobj_Reg mGradient2_Linear = {
96 lGradient2_nil, // mt
97 lGradient2_Linear_get,
98 lGradient2_Linear_set,
99 lGradient2_nil
102 const luaobj_Reg mGradient2_Radial = {
103 lGradient2_nil, // mt
104 lGradient2_Radial_get,
105 lGradient2_Radial_set,
106 lGradient2_nil
109 const luaobj_Reg *cGradient2_Linear[] = {
110 &mClass,
111 &mObject,
112 &mGradient2,
113 &mGradient2_Linear,
114 NULL // sentinel
117 const luaobj_Reg *cGradient2_Radial[] = {
118 &mClass,
119 &mObject,
120 &mGradient2,
121 &mGradient2_Radial,
122 NULL // sentinel