summaryrefslogtreecommitdiffstats
path: root/friendfinder/gui.c
diff options
context:
space:
mode:
Diffstat (limited to 'friendfinder/gui.c')
-rw-r--r--friendfinder/gui.c44
1 files changed, 32 insertions, 12 deletions
diff --git a/friendfinder/gui.c b/friendfinder/gui.c
index 62b35ff..b5d5bf8 100644
--- a/friendfinder/gui.c
+++ b/friendfinder/gui.c
@@ -22,18 +22,22 @@ char *from, *to, *current_msg, *last_msg;
static Evas_Object *win, *bbx;
-
-
-
static void on_cancel(void *data, Evas_Object *obj, void *event_info)
{
/* cleanly exit */
elm_exit();
elm_shutdown();
- disconnect_receiver();
- disconnect_sender();
- disconnect_msg_sender();
- shutdown_ecore_handler();
+ close_threads();
+}
+
+static void on_own_position(void *data, Evas_Object *obj, void *event_info)
+{
+ init_sender_thread(from);
+}
+
+static void on_show_users(void *data, Evas_Object *obj, void *event_info)
+{
+ init_receiver_thread(from);
}
static void on_chat(void *data, Evas_Object *obj, void *event_info)
@@ -286,7 +290,7 @@ void init_toolbar()
void init_options()
{
- Evas_Object *bg, *bx, *bx2, *bt;
+ Evas_Object *bg, *bx, *bx2, *bt, *bt2, *bt3;
/* add a standard bg */
bg = elm_bg_add(win);
@@ -311,12 +315,28 @@ void init_options()
evas_object_show(bx2);
bt = elm_button_add(win);
- elm_button_label_set(bt, "fiend friends");
+ elm_button_label_set(bt, "Find friends");
evas_object_size_hint_weight_set(bt, 1.0, 0.0);
evas_object_size_hint_align_set(bt, -1.0, -1.0);
elm_box_pack_end(bx, bt);
evas_object_smart_callback_add(bt, "clicked", NULL, NULL);
- evas_object_show(bt);
+ evas_object_show(bt);
+
+ bt2 = elm_button_add(win);
+ elm_button_label_set(bt2, "Send own position");
+ evas_object_size_hint_weight_set(bt2, 1.0, 0.0);
+ evas_object_size_hint_align_set(bt2, -1.0, -1.0);
+ elm_box_pack_end(bx, bt2);
+ evas_object_smart_callback_add(bt2, "clicked", on_own_position, NULL);
+ evas_object_show(bt2);
+
+ bt3 = elm_button_add(win);
+ elm_button_label_set(bt3, "Show other users");
+ evas_object_size_hint_weight_set(bt3, 1.0, 0.0);
+ evas_object_size_hint_align_set(bt3, -1.0, -1.0);
+ elm_box_pack_end(bx, bt3);
+ evas_object_smart_callback_add(bt3, "clicked", on_show_users, NULL);
+ evas_object_show(bt3);
}
void init_map()
@@ -430,8 +450,8 @@ void elm_main ()
/* show the window */
evas_object_show(win);
- init_ecore_handler(from, to);
- /* get going and draw/respond to the user */
+ init_msg_thread(from, to);
+ /* get going and draw/respond to the user */
elm_run();
/* standard shutdown */