Exemplo n.º 1
0
EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *win, *bg, *bt, *bt2, *rect, *rect2, *rect3, *hover;

   win = elm_win_add(NULL, "hover", ELM_WIN_BASIC);
   elm_win_title_set(win, "Hover");
   elm_win_autodel_set(win, EINA_TRUE);
   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   bg = elm_bg_add(win);
   elm_win_resize_object_add(win, bg);
   evas_object_show(bg);

   rect = evas_object_rectangle_add(evas_object_evas_get(win));
   evas_object_size_hint_min_set(rect, 25, 25);
   evas_object_color_set(rect, 255, 0, 0, 255);
   evas_object_show(rect);

   rect2 = evas_object_rectangle_add(evas_object_evas_get(win));
   evas_object_size_hint_min_set(rect2, 25, 25);
   evas_object_color_set(rect2, 0, 255, 0, 255);
   evas_object_show(rect2);

   rect3 = evas_object_rectangle_add(evas_object_evas_get(win));
   evas_object_size_hint_min_set(rect3, 25, 25);
   evas_object_color_set(rect3, 0, 0, 255, 255);
   evas_object_show(rect3);

   bt = elm_button_add(win);
   elm_object_text_set(bt, "Show hover");
   evas_object_move(bt, 60, 90);
   evas_object_resize(bt, 80, 20);
   evas_object_show(bt);

   bt2 = elm_button_add(win);
   elm_object_text_set(bt2, "Hide hover");
   evas_object_show(bt2);

   hover = elm_hover_add(win);
   elm_hover_parent_set(hover, win);
   elm_hover_target_set(hover, bt);

   elm_object_style_set(hover, "popout");

   elm_hover_content_set(hover, "left", rect);
   elm_hover_content_set(hover, "top", rect2);
   elm_hover_content_set(hover, "right", rect3);
   elm_hover_content_set(hover, "middle", bt2);

   evas_object_smart_callback_add(bt, "clicked", _show_hover, hover);
   evas_object_smart_callback_add(bt2, "clicked", _hide_hover, hover);

   evas_object_resize(win, 200, 200);
   evas_object_show(win);

   elm_run();

   return 0;
}
Exemplo n.º 2
0
struct MessageListViewData *
message_list_view_show(struct Window *win, GHashTable * options)
{
	g_debug("message_list_view_show()");
	struct MessageListViewData *data =
		g_slice_alloc0(sizeof(struct MessageListViewData));
	data->win = win;

	window_layout_set(win, MESSAGE_FILE, "list");
	window_text_set(win, "title", D_("Inbox"));

	data->bt1 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->bt1, D_("New"));
	evas_object_smart_callback_add(data->bt1, "clicked",
				       message_list_view_new_clicked, data);
	window_swallow(win, "button_new", data->bt1);
	evas_object_show(data->bt1);


	// Options button with hover
	data->hv = elm_hover_add(window_evas_object_get(win));

	data->bt2 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->bt2, D_("Options"));
	evas_object_smart_callback_add(data->bt2, "clicked", my_hover_bt_1,
				       data->hv);
	window_swallow(win, "button_options", data->bt2);
	evas_object_show(data->bt2);

	elm_hover_parent_set(data->hv, window_evas_object_get(win));
	elm_hover_target_set(data->hv, data->bt2);

	data->bx = elm_box_add(window_evas_object_get(win));
	elm_box_horizontal_set(data->bx, 0);
	elm_box_homogenous_set(data->bx, 1);
	evas_object_show(data->bx);

	data->button_answer = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->button_answer, D_("Answer"));
	evas_object_size_hint_min_set(data->button_answer, 130, 80);
	evas_object_smart_callback_add(data->button_answer, "clicked",
				       message_list_view_answer_clicked, data);
	evas_object_show(data->button_answer);
	elm_box_pack_end(data->bx, data->button_answer);

	data->button_delete = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->button_delete, D_("Delete"));
	evas_object_size_hint_min_set(data->button_delete, 130, 80);
	evas_object_smart_callback_add(data->button_delete, "clicked",
				       message_list_view_delete_clicked, data);
	evas_object_show(data->button_delete);
	elm_box_pack_end(data->bx, data->button_delete);

	elm_hover_content_set(data->hv, "top", data->bx);


	data->bt3 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->bt3, D_("Show"));
	evas_object_smart_callback_add(data->bt3, "clicked",
				       message_list_view_show_clicked, data);
	window_swallow(win, "button_show", data->bt3);
	evas_object_show(data->bt3);


	g_debug("tree init");

	data->tree = etk_tree_new();
	etk_tree_rows_height_set(ETK_TREE(data->tree), 80);
	etk_tree_mode_set(ETK_TREE(data->tree), ETK_TREE_MODE_LIST);
	etk_tree_headers_visible_set(ETK_TREE(data->tree), ETK_FALSE);
	etk_tree_multiple_select_set(ETK_TREE(data->tree), ETK_FALSE);

	data->col1 = etk_tree_col_new(ETK_TREE(data->tree), "Title", 300, 0.0);
	etk_tree_col_model_add(data->col1,
			       etk_tree_model_edje_new(MESSAGE_FILE,
						       "message_row"));
	etk_tree_build(ETK_TREE(data->tree));

	Etk_Scrolled_View *scrolled_view =
		etk_tree_scrolled_view_get(ETK_TREE(data->tree));
	etk_scrolled_view_dragable_set(ETK_SCROLLED_VIEW(scrolled_view),
				       ETK_TRUE);
	etk_scrolled_view_drag_bouncy_set(ETK_SCROLLED_VIEW(scrolled_view),
					  ETK_FALSE);
	etk_scrolled_view_policy_set(ETK_SCROLLED_VIEW(scrolled_view),
				     ETK_POLICY_HIDE, ETK_POLICY_HIDE);

	data->container =
		etk_embed_new(evas_object_evas_get
			      (window_evas_object_get(win)));
	etk_container_add(ETK_CONTAINER(data->container), data->tree);
	etk_widget_show_all(data->container);

	window_swallow(win, "list",
		       etk_embed_object_get(ETK_EMBED(data->container)));


	ogsmd_sim_retrieve_messagebook("all", retrieve_messagebook_callback,
				       data);
	window_show(win);
	return data;
}
Exemplo n.º 3
0
static void
retrieve_callback2(struct MessageShowViewData *data)
{
	struct Window *win = data->win;
	window_layout_set(win, MESSAGE_FILE, "message_show");

	time_t timestamp = 0;
	GValue *value = g_hash_table_lookup(data->properties, "timestamp");
	if (value) {
		const char *timestr = g_value_get_string(value);
		timestamp = time_stringtotimestamp(timestr);
	}
	else
		g_debug("no timestamp for message found !!!");
	char *status = data->status;
	char *number = data->number;
	char *content = data->content;

	char datestr[32];
	strftime(datestr, 31, "%d.%m.%Y, %H:%M", localtime(&timestamp));

	window_text_set(win, "text_status", status);
	window_text_set(win, "text_number", number);
	window_text_set(win, "text_content", content);
	window_text_set(win, "text_date", datestr);
	window_text_set(win, "label_number", D_("From:"));
	window_text_set(win, "label_date", D_("Date:"));
	window_text_set(win, "label_status", D_("Status:"));
	window_text_set(win, "text_number", data->name);

	data->bt1 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->bt1, D_("Close"));
	evas_object_smart_callback_add(data->bt1, "clicked",
				       message_show_view_close_clicked, data);
	window_swallow(win, "button_close", data->bt1);
	evas_object_show(data->bt1);


	// Options button with hover
	data->hv = elm_hover_add(window_evas_object_get(win));

	data->bt2 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->bt2, D_("Options"));
	evas_object_smart_callback_add(data->bt2, "clicked", my_hover_bt_1,
				       data->hv);
	window_swallow(win, "button_options", data->bt2);
	evas_object_show(data->bt2);

	elm_hover_parent_set(data->hv, window_evas_object_get(win));
	elm_hover_target_set(data->hv, data->bt2);

	data->bx = elm_box_add(window_evas_object_get(win));
	elm_box_horizontal_set(data->bx, 0);
	elm_box_homogenous_set(data->bx, 1);
	evas_object_show(data->bx);

	data->hbt1 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->hbt1, D_("Call"));
	evas_object_size_hint_min_set(data->hbt1, 140, 80);
	evas_object_smart_callback_add(data->hbt1, "clicked",
				       message_show_view_call_clicked, data);
	evas_object_show(data->hbt1);
	elm_box_pack_end(data->bx, data->hbt1);

	data->hbt2 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->hbt2, D_("Delete"));
	evas_object_size_hint_min_set(data->hbt2, 140, 80);
	evas_object_smart_callback_add(data->hbt2, "clicked",
				       message_show_view_delete_clicked, data);
	evas_object_show(data->hbt2);
	elm_box_pack_end(data->bx, data->hbt2);

	data->hbt3 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->hbt3, D_("Add Contact"));
	evas_object_size_hint_min_set(data->hbt3, 140, 80);
	evas_object_smart_callback_add(data->hbt3, "clicked",
				       message_show_view_new_contact_clicked,
				       data);
	evas_object_show(data->hbt3);
	elm_box_pack_end(data->bx, data->hbt3);

	elm_hover_content_set(data->hv, "top", data->bx);


	data->bt3 = elm_button_add(window_evas_object_get(win));
	elm_button_label_set(data->bt3, D_("Answer"));
	evas_object_smart_callback_add(data->bt3, "clicked",
				       message_show_view_answer_clicked, data);
	window_swallow(win, "button_answer", data->bt3);
	evas_object_show(data->bt3);


	window_show(win);
}