diff options
Diffstat (limited to 'src/libraries')
-rw-r--r-- | src/libraries/winFang.c | 12 | ||||
-rw-r--r-- | src/libraries/winFang.h | 4 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/libraries/winFang.c b/src/libraries/winFang.c index a52d01c..205cedb 100644 --- a/src/libraries/winFang.c +++ b/src/libraries/winFang.c | |||
@@ -72,7 +72,7 @@ void winFangShow(winFang *win) | |||
72 | evas_object_show(win->hand[i]); | 72 | evas_object_show(win->hand[i]); |
73 | } | 73 | } |
74 | 74 | ||
75 | winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, char *name) | 75 | winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, char *name, EPhysics_World *world) |
76 | { | 76 | { |
77 | winFang *result; | 77 | winFang *result; |
78 | Evas_Object *obj, *obj2; | 78 | Evas_Object *obj, *obj2; |
@@ -143,6 +143,16 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch | |||
143 | eo_unref(result->hand[i]); | 143 | eo_unref(result->hand[i]); |
144 | #endif | 144 | #endif |
145 | } | 145 | } |
146 | if (world) | ||
147 | { | ||
148 | result->body = ephysics_body_box_add(world); | ||
149 | ephysics_body_evas_object_set(result->body, obj, EINA_TRUE); | ||
150 | ephysics_body_restitution_set(result->body, 0.7); | ||
151 | ephysics_body_friction_set(result->body, 0); | ||
152 | ephysics_body_linear_velocity_set(result->body, 80, -60, 0); | ||
153 | ephysics_body_angular_velocity_set(result->body, 0, 0, 360); | ||
154 | ephysics_body_sleeping_threshold_set(result->body, 0.1, 0.1); | ||
155 | } | ||
146 | } | 156 | } |
147 | else | 157 | else |
148 | { | 158 | { |
diff --git a/src/libraries/winFang.h b/src/libraries/winFang.h index 05c3036..a84c8de 100644 --- a/src/libraries/winFang.h +++ b/src/libraries/winFang.h | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <Eina.h> | 13 | #include <Eina.h> |
14 | #include <Evas.h> | 14 | #include <Evas.h> |
15 | #include <Elementary.h> | 15 | #include <Elementary.h> |
16 | #include <EPhysics.h> | ||
16 | 17 | ||
17 | 18 | ||
18 | typedef struct _winFang | 19 | typedef struct _winFang |
@@ -20,6 +21,7 @@ typedef struct _winFang | |||
20 | Evas_Object *win; | 21 | Evas_Object *win; |
21 | Evas_Object *bg; | 22 | Evas_Object *bg; |
22 | Evas_Object *box; | 23 | Evas_Object *box; |
24 | EPhysics_Body *body; | ||
23 | Eina_Clist widgets; | 25 | Eina_Clist widgets; |
24 | Eina_Clist winFangs; | 26 | Eina_Clist winFangs; |
25 | int x, y, w, h; | 27 | int x, y, w, h; |
@@ -48,7 +50,7 @@ typedef struct _Widget | |||
48 | Evas_Smart_Cb on_del; | 50 | Evas_Smart_Cb on_del; |
49 | } Widget; | 51 | } Widget; |
50 | 52 | ||
51 | winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, char *name); | 53 | winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, char *name, EPhysics_World *world); |
52 | void winFangHide(winFang *win); | 54 | void winFangHide(winFang *win); |
53 | void winFangShow(winFang *win); | 55 | void winFangShow(winFang *win); |
54 | void winFangDel(winFang *win); | 56 | void winFangDel(winFang *win); |