aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/extantz/extantz.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/extantz/extantz.c')
-rw-r--r--src/extantz/extantz.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/extantz/extantz.c b/src/extantz/extantz.c
index 848bc9a..e16db3c 100644
--- a/src/extantz/extantz.c
+++ b/src/extantz/extantz.c
@@ -83,6 +83,27 @@ static Eina_Bool _del(void *data, int type, Ecore_Con_Event_Server_Del *ev)
83 return ECORE_CALLBACK_RENEW; 83 return ECORE_CALLBACK_RENEW;
84} 84}
85 85
86static void _onWorldClick(void *data, Evas *e EINA_UNUSED, Evas_Object *o, void *einfo)
87{
88 Evas_3D_Node *n = data;
89// Evas_Event_Mouse_Down *ev = einfo;
90
91 if (n)
92 {
93 char *name = NULL;
94
95 name = evas_object_data_get(n, "Name");
96 if (strcmp("cube", name) == 0)
97 {
98 char SID[64];
99
100 // CUBE_UUID.events.touch_start(1), but we just make one up for now.
101 snprintf(SID, sizeof(SID), "%08lx-%04lx-%04lx-%04lx-%012lx", random(), random() % 0xFFFF, random() % 0xFFFF, random() % 0xFFFF, random());
102 sendForth(ourGlobals.server, SID, "events.touch_start(1)");
103 }
104 }
105}
106
86static void gldata_init(GLData *gld) 107static void gldata_init(GLData *gld)
87{ 108{
88 gld->useIrr = USE_IRR; 109 gld->useIrr = USE_IRR;
@@ -644,6 +665,9 @@ EAPI_MAIN int elm_main(int argc, char **argv)
644 else 665 else
645 PC("Failed to connect to server!"); 666 PC("Failed to connect to server!");
646 667
668 // Setup our callback for clicking in world.
669 ourGlobals.scene->clickCb = _onWorldClick;
670
647 elm_run(); 671 elm_run();
648 672
649 if (ourGlobals.server) ecore_con_server_del(ourGlobals.server); 673 if (ourGlobals.server) ecore_con_server_del(ourGlobals.server);