summaryrefslogtreecommitdiffstats
path: root/msg_sender/gui.c
diff options
context:
space:
mode:
Diffstat (limited to 'msg_sender/gui.c')
-rw-r--r--msg_sender/gui.c171
1 files changed, 108 insertions, 63 deletions
diff --git a/msg_sender/gui.c b/msg_sender/gui.c
index 0cd7e2d..868b4c1 100644
--- a/msg_sender/gui.c
+++ b/msg_sender/gui.c
@@ -1,5 +1,6 @@
#include <stdlib.h>
#include <time.h>
+
#include "Evas.h"
#include "Ecore.h"
#include "Ecore_Evas.h"
@@ -8,12 +9,14 @@
#include "msg_sender.h"
#include "gui.h"
#include "handler.h"
+#include "receiver.h"
+#include "sender.h"
int h = 600;
int w = 450;
int first = 0;
-int bubble_pos = 0;
+int bubble_pos = 100;
time_t now;
const char* msg_text;
char *from, *to, *current_msg, *last_msg;
@@ -33,15 +36,15 @@ static void on_chat(void *data, Evas_Object *obj, void *event_info)
{
init_window_parts();
- init_buttons(obj, NULL);
+ init_buttons(obj);
init_toolbar(obj);
}
-static void on_history(void *data, Evas_Object *obj, void *event_info)
+static void on_map(void *data, Evas_Object *obj, void *event_info)
{
- init_history();
+ init_map();
}
@@ -65,42 +68,51 @@ static void on_send_message(void *data, Evas_Object *bx3, void *event_info)
printf("on_send_message: %s\n", msg_text);
set_txt_msg(msg_text);
- Evas_Object *bb;
-
- if (bubble_pos == 0)
- {
- bubble_pos = 100;
- }
+ Evas_Object *bb1, *bb2, *bb3;
if (msg_text != NULL)
{
- /* if its the first bubble */
+
if (first == 0)
{
- bb = elm_bubble_add(bx3);
- evas_object_resize(bb, w, h/7);
- evas_object_move(bb, 0, 0);
- evas_object_show(bb);
- set_bubble_text(bb, from, msg_text);
+ bb1 = elm_bubble_add(bx3);
+ evas_object_resize(bb1, w, h/7);
+ evas_object_move(bb1, 0, 0);
+ evas_object_show(bb1);
+ set_bubble_text(bb1, from, msg_text);
first = 1;
bubble_pos = bubble_pos + h/6;
+
+ return;
}
- else
+ if (first == 1)
{
- bb = elm_bubble_add(bx3);
- evas_object_resize(bb, w, h/6);
- evas_object_move(bb, 0, bubble_pos);
- evas_object_show(bb);
- set_bubble_text(bb, from, msg_text);
+ bb2 = elm_bubble_add(bx3);
+ evas_object_resize(bb2, w, h/6);
+ evas_object_move(bb2, 0, bubble_pos);
+ evas_object_show(bb2);
+ set_bubble_text(bb2, from, msg_text);
+ first = 2;
bubble_pos = bubble_pos + h/6;
+
+ return;
}
- printf("position: %d\n", bubble_pos);
+ // printf("position: %d\n", bubble_pos);
- if (bubble_pos >= 400)
+ if (first == 2)
{
+ bb3 = elm_bubble_add(bx3);
+ evas_object_resize(bb3, w, h/6);
+ evas_object_move(bb3, 0, bubble_pos);
+ evas_object_show(bb3);
+ set_bubble_text(bb3, from, msg_text);
+
+ first = 0;
bubble_pos = 100;
+
+ return;
}
}
}
@@ -108,42 +120,43 @@ static void on_send_message(void *data, Evas_Object *bx3, void *event_info)
/* if message has been sent, print it in a bubble */
void show_message(char *current_msg)
{
- Evas_Object *bb;
-
- if (bubble_pos == 0)
- {
- bubble_pos = 100;
- }
+ Evas_Object *bb1, *bb2, *bb3;
if (current_msg != NULL)
{
if (first == 0)
{
- bb = elm_bubble_add(bbx);
- evas_object_resize(bb, w, h/7);
- evas_object_move(bb, 0, 0);
- evas_object_show(bb);
- set_bubble_text(bb, to, current_msg);
+ bb1 = elm_bubble_add(bbx);
+ evas_object_resize(bb1, w, h/7);
+ evas_object_move(bb1, 0, 0);
+ evas_object_show(bb1);
+ set_bubble_text(bb1, to, current_msg);
first = 1;
bubble_pos = bubble_pos + h/6;
}
- else
+ if (first == 1);
{
- bb = elm_bubble_add(bbx);
- evas_object_resize(bb, w, h/6);
- evas_object_move(bb, 0, bubble_pos);
- evas_object_show(bb);
- set_bubble_text(bb, to, current_msg);
+ bb2 = elm_bubble_add(bbx);
+ evas_object_resize(bb2, w, h/6);
+ evas_object_move(bb2, 0, bubble_pos);
+ evas_object_show(bb2);
+ set_bubble_text(bb2, to, current_msg);
+ first = 2;
bubble_pos = bubble_pos + h/6;
}
- printf("position: %d\n", bubble_pos);
-
- if (bubble_pos >= 400)
+ if (first == 2)
{
- bubble_pos = 100;
- }
+ bb3 = elm_bubble_add(bbx);
+ evas_object_resize(bb3, w, h/6);
+ evas_object_move(bb3, 0, bubble_pos);
+ evas_object_show(bb3);
+ set_bubble_text(bb3, to, current_msg);
+
+ first = 0;
+ bubble_pos = bubble_pos + h/6;
+ }
}
}
@@ -239,7 +252,8 @@ void init_window_parts()
evas_object_show(sc);
/* init buttons */
- init_buttons(bx2, en);
+ bbx = bx2;
+ init_buttons(bx2);
/* init toolbar */
init_toolbar(win);
@@ -272,7 +286,7 @@ void init_toolbar()
ic = elm_icon_add(win);
elm_icon_standard_set(ic, "clock");
- elm_toolbar_item_add(tb, ic, "History", on_history, NULL);
+ elm_toolbar_item_add(tb, ic, "Map", on_map, NULL);
evas_object_show(ic);
// evas_object_show(ic);
@@ -317,10 +331,10 @@ void init_options()
evas_object_show(bt);
}
-void init_history()
+void init_map()
{
- Evas_Object *bg, *bx, *bx2, *bb;
+ Evas_Object *bg, *bx, *bx2, *bx3, *map, *bt1, *bt2;
/* add a standard bg */
bg = elm_bg_add(win);
@@ -338,24 +352,47 @@ void init_history()
evas_object_show(bx);
bx2 = elm_box_add(win);
- elm_box_horizontal_set(bx2, 1);
evas_object_size_hint_weight_set(bx2, 1.0, 0.0);
evas_object_size_hint_align_set(bx2, -1.0, -1.0);
+ evas_object_resize(bx2, w*1.3, h*0.7);
elm_box_pack_end(bx, bx2);
evas_object_show(bx2);
- bb = elm_bubble_add(bx2);
- evas_object_resize(bb, w, h/7);
- evas_object_move(bb, 0, 300);
- evas_object_show(bb);
- set_bubble_text(bb, "testuser", NULL);
-
+ bx3 = elm_box_add(win);
+ elm_box_horizontal_set(bx2, 1);
+ evas_object_size_hint_weight_set(bx3, 1.0, 0.0);
+ evas_object_size_hint_align_set(bx3, -1.0, 0.0);
+ evas_object_resize(bx3, w*0.9, h*0.2);
+ elm_box_pack_end(bx, bx3);
+ evas_object_show(bx3);
+ map = e_smart_map_add(win, "data/maps/fr_map.eet");
+ e_smart_map_set_pos(map, 47.996578,7.840171);
+ evas_object_size_hint_min_set(map, w-2*8, h-10*8-40);
+ evas_object_size_hint_max_set(map, w-2*8, h-10*8-40);
+ //evas_object_resize(map, w*0.92, h*0.7);
+ elm_box_pack_end(bx2, map);
+ evas_object_show(map);
+
+ bt1 = elm_button_add(win);
+ elm_button_label_set(bt1, "Show friends");
+ evas_object_size_hint_weight_set(bt1, 1.0, 1.0);
+ evas_object_size_hint_align_set(bt1, -1.0, -1.0);
+ elm_box_pack_end(bx3, bt1);
+ evas_object_smart_callback_add(bt1, "clicked", NULL, NULL);
+ evas_object_show(bt1);
+
+ bt2 = elm_button_add(win);
+ elm_button_label_set(bt2, "Hide friends");
+ evas_object_size_hint_weight_set(bt2, 1.0, 1.0);
+ evas_object_size_hint_align_set(bt2, -1.0, -1.0);
+ elm_box_pack_end(bx3, bt2);
+ evas_object_smart_callback_add(bt2, "clicked", NULL, NULL);
+ evas_object_show(bt2);
}
-
-void init_buttons(Evas_Object *box, Evas_Object *msg)
+void init_buttons(Evas_Object *box)
{
Evas_Object *bt;
@@ -365,7 +402,7 @@ void init_buttons(Evas_Object *box, Evas_Object *msg)
elm_button_label_set(bt, "Send Message");
evas_object_size_hint_weight_set(bt, 1.0, 1.0);
evas_object_size_hint_align_set(bt, -1.0, -1.0);
- elm_box_pack_end(box, bt);
+ //elm_box_pack_end(box, bt);
evas_object_show(bt);
/* and when clicked - run "on_ok" */
@@ -414,9 +451,17 @@ void elm_main ()
int main (int argc, char **argv)
{
-
- from = argv[1];
- to = argv[2];
+ if (argv[1] == NULL && argv[2] == NULL)
+ {
+ printf("no nick and no receiver set");
+ from == NULL;
+ to == NULL;
+ }
+ else
+ {
+ from = argv[1];
+ to = argv[2];
+ }
elm_init(argc, argv);