And more moving the buttons into the theme.
This commit is contained in:
@ -1,8 +1,15 @@
|
||||
/* vim: set sw=3 ts=3 sts=3 expandtab: */
|
||||
#include "ecdb.h"
|
||||
#include <fnmatch.h>
|
||||
|
||||
static void ecdb_handle_typebuf(Evas_Object *gui);
|
||||
static void ecdb_cb_welcome_page_buttons_clicked(void *data, Evas_Object *o,
|
||||
static void _button_cb_burn_data(void *data, Evas_Object *o,
|
||||
const char *emission, const char *source);
|
||||
static void _button_cb_burn_audio(void *data, Evas_Object *o,
|
||||
const char *emission, const char *source);
|
||||
static void _button_cb_burn_image(void *data, Evas_Object *o,
|
||||
const char *emission, const char *source);
|
||||
static void _button_cb_erase(void *data, Evas_Object *o,
|
||||
const char *emission, const char *source);
|
||||
static void ecdb_filelist_show(void);
|
||||
static void ecdb_page_hide(const char *pname);
|
||||
@ -354,45 +361,41 @@ ecdb_handle_typebuf(Evas_Object *gui)
|
||||
edje_object_part_text_set(gui, "filelist_overlay_text", NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
_button_cb_burn_data(void *data __UNUSED__, Evas_Object *o,
|
||||
const char *emission __UNUSED__,
|
||||
const char *source __UNUSED__)
|
||||
{
|
||||
edje_object_signal_emit(o, "ecdb,welcome_page,hide", "ecdb");
|
||||
ecdb_burn_data_page_show();
|
||||
ecdb_filelist_show();
|
||||
}
|
||||
|
||||
static void
|
||||
ecdb_cb_welcome_page_buttons_clicked(void *data, Evas_Object *o,
|
||||
const char *emission, const char *source)
|
||||
_button_cb_erase(void *data __UNUSED__, Evas_Object *o,
|
||||
const char *emission __UNUSED__,
|
||||
const char *source __UNUSED__)
|
||||
{
|
||||
Evas_Object *swallow, *gui;
|
||||
edje_object_signal_emit(o, "ecdb,welcome_page,hide", "ecdb");
|
||||
ecdb_erase_page_show();
|
||||
}
|
||||
|
||||
gui = evas_object_name_find(ecore_evas_get(em->main_win_ee), "gui");
|
||||
swallow = evas_object_name_find(ecore_evas_get(em->main_win_ee),
|
||||
"main_filelist");
|
||||
static void
|
||||
_button_cb_burn_image(void *data __UNUSED__, Evas_Object *o,
|
||||
const char *emission __UNUSED__,
|
||||
const char *source __UNUSED__)
|
||||
{
|
||||
edje_object_signal_emit(o, "ecdb,welcome_page,hide", "ecdb");
|
||||
ecdb_burn_image_page_show();
|
||||
ecdb_filelist_show();
|
||||
}
|
||||
|
||||
if (!strcmp(source, "ecdb/burn_data"))
|
||||
{
|
||||
swallow = evas_object_name_find(ecore_evas_get(em->main_win_ee),
|
||||
"welcome_page");
|
||||
edje_object_signal_emit(swallow, "ecdb,welcome_page,hide", "ecdb");
|
||||
ecdb_burn_data_page_show();
|
||||
ecdb_filelist_show();
|
||||
}
|
||||
else if (!strcmp(source, "ecdb/erase"))
|
||||
{
|
||||
swallow = evas_object_name_find(ecore_evas_get(em->main_win_ee),
|
||||
"welcome_page");
|
||||
edje_object_signal_emit(swallow, "ecdb,welcome_page,hide", "ecdb");
|
||||
ecdb_erase_page_show();
|
||||
}
|
||||
else if (!strcmp(source, "ecdb/burn_image"))
|
||||
{
|
||||
ecdb_filelist_show();
|
||||
swallow = evas_object_name_find(ecore_evas_get(em->main_win_ee),
|
||||
"welcome_page");
|
||||
edje_object_signal_emit(swallow, "ecdb,welcome_page,hide", "ecdb");
|
||||
ecdb_burn_image_page_show();
|
||||
}
|
||||
else if (swallow)
|
||||
{
|
||||
edje_object_signal_emit(gui, "ecdb,filelist,hide", "ecdb");
|
||||
}
|
||||
|
||||
static void
|
||||
_button_cb_burn_audio(void *data __UNUSED__, Evas_Object *o,
|
||||
const char *emission __UNUSED__,
|
||||
const char *source)
|
||||
{
|
||||
printf("Action: %s\n", source);
|
||||
}
|
||||
|
||||
@ -408,7 +411,6 @@ ecdb_welcome_page_show(void)
|
||||
if (!swallow)
|
||||
{
|
||||
|
||||
Evas_Object *b;
|
||||
Evas_Coord x, y, w, h;
|
||||
|
||||
swallow = edje_object_add(ecore_evas_get(em->main_win_ee));
|
||||
@ -418,24 +420,24 @@ ecdb_welcome_page_show(void)
|
||||
evas_object_move(swallow, x, y);
|
||||
evas_object_resize(swallow, w, h);
|
||||
edje_object_part_swallow(gui, "action_area", swallow);
|
||||
edje_object_signal_callback_add(swallow, "mouse,clicked,1", "ecdb/*",
|
||||
ecdb_cb_welcome_page_buttons_clicked, NULL);
|
||||
edje_object_signal_callback_add(swallow, "hide,finished", "welcome_page",
|
||||
ecdb_page_hide_finished, NULL);
|
||||
evas_object_show(swallow);
|
||||
|
||||
int i;
|
||||
char *labels[] = {"Burn Data CD", "Burn Audio CD", "Burn Image",
|
||||
"Erase Re-writable Disc"};
|
||||
char *ids[] = {"ecdb/burn_data", "ecdb/burn_audio", "ecdb/burn_image",
|
||||
"ecdb/erase"};
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
b = ecdb_button_add(swallow, ids[i]);
|
||||
ecdb_button_label_set(b, labels[i]);
|
||||
evas_object_show(b);
|
||||
ecdb_button_icon_set(b, ids[i]);
|
||||
}
|
||||
edje_object_part_text_set(swallow, "ecdb/burn_data/text", "Burn Data CD");
|
||||
edje_object_signal_callback_add(swallow, "ecdb/burn_data,clicked", "*",
|
||||
_button_cb_burn_data, NULL);
|
||||
edje_object_part_text_set(swallow, "ecdb/burn_audio/text",
|
||||
"Burn Audio CD");
|
||||
edje_object_signal_callback_add(swallow, "ecdb/burn_audio,clicked", "*",
|
||||
_button_cb_burn_audio, NULL);
|
||||
edje_object_part_text_set(swallow, "ecdb/burn_image/text", "Burn Image");
|
||||
edje_object_signal_callback_add(swallow, "ecdb/burn_image,clicked", "*",
|
||||
_button_cb_burn_image, NULL);
|
||||
edje_object_part_text_set(swallow, "ecdb/erase/text",
|
||||
"Erase Re-writable Disc");
|
||||
edje_object_signal_callback_add(swallow, "ecdb/erase,clicked", "*",
|
||||
_button_cb_erase, NULL);
|
||||
}
|
||||
|
||||
else if (edje_object_part_swallow_get(gui, "action_area") != swallow)
|
||||
|
Reference in New Issue
Block a user