[Pkg-e-commits] [SCM] Enlightenment 17 branch, upstream-vcs, updated. 3eef8cab2cb6f039b529ffc89deb21a0dcab03df
devilhorns
devilhorns at alioth.debian.org
Sat May 24 15:07:35 UTC 2008
The following commit has been merged in the upstream-vcs branch:
commit 6703e9888944331ce0e3379aecc5ec952518208b
Author: devilhorns <devilhorns>
Date: Mon May 12 20:40:44 2008 +0000
Port theme dialog to use new e_widget_flist.
diff --git a/src/modules/conf_theme/e_int_config_theme.c b/src/modules/conf_theme/e_int_config_theme.c
index 1c5bb61..c7d63a0 100644
--- a/src/modules/conf_theme/e_int_config_theme.c
+++ b/src/modules/conf_theme/e_int_config_theme.c
@@ -20,7 +20,6 @@ struct _E_Config_Dialog_Data
E_Config_Dialog *cfd;
/* Basic */
- Evas_Object *o_frame;
Evas_Object *o_fm;
Evas_Object *o_up_button;
Evas_Object *o_preview;
@@ -76,38 +75,23 @@ EAPI void
e_int_config_theme_update(E_Config_Dialog *dia, char *file)
{
E_Config_Dialog_Data *cfdata;
- const char *homedir;
char path[4096];
cfdata = dia->cfdata;
- homedir = e_user_homedir_get();
cfdata->fmdir = 1;
e_widget_radio_toggle_set(cfdata->o_personal, 1);
- snprintf(path, sizeof(path), "%s/.e/e/themes", homedir);
+ snprintf(path, sizeof(path), "%s/.e/e/themes", e_user_homedir_get());
E_FREE(cfdata->theme);
cfdata->theme = strdup(file);
if (cfdata->o_fm)
- e_fm2_path_set(cfdata->o_fm, path, "/");
+ e_widget_flist_path_set(cfdata->o_fm, path, "/");
if (cfdata->o_preview)
e_widget_preview_edje_set(cfdata->o_preview, cfdata->theme, "e/desktop/background");
- if (cfdata->o_frame)
- e_widget_change(cfdata->o_frame);
-
-/*
-
- if (cfdata->o_fm)
- {
- e_fm2_select_set(cfdata->o_fm, file, 1);
- e_fm2_file_show(cfdata->o_fm, file);
-
- evas_object_smart_callback_call(cfdata->o_fm,
- "selection_change", cfdata);
- }
- */
+ if (cfdata->o_fm) e_widget_change(cfdata->o_fm);
}
static void
@@ -116,10 +100,7 @@ _cb_button_up(void *data1, void *data2)
E_Config_Dialog_Data *cfdata;
cfdata = data1;
- if (cfdata->o_fm)
- e_fm2_parent_go(cfdata->o_fm);
- if (cfdata->o_frame)
- e_widget_scrollframe_child_pos_set(cfdata->o_frame, 0, 0);
+ if (cfdata->o_fm) e_widget_flist_parent_go(cfdata->o_fm);
}
static void
@@ -129,18 +110,9 @@ _cb_files_changed(void *data, Evas_Object *obj, void *event_info)
cfdata = data;
if (!cfdata->o_fm) return;
- if (!e_fm2_has_parent_get(cfdata->o_fm))
- {
- if (cfdata->o_up_button)
- e_widget_disabled_set(cfdata->o_up_button, 1);
- }
- else
- {
- if (cfdata->o_up_button)
- e_widget_disabled_set(cfdata->o_up_button, 0);
- }
- if (cfdata->o_frame)
- e_widget_scrollframe_child_pos_set(cfdata->o_frame, 0, 0);
+ if (cfdata->o_up_button)
+ e_widget_disabled_set(cfdata->o_up_button,
+ !e_widget_flist_has_parent_get(cfdata->o_fm));
}
static void
@@ -155,11 +127,10 @@ _cb_files_selection_change(void *data, Evas_Object *obj, void *event_info)
cfdata = data;
if (!cfdata->o_fm) return;
- selected = e_fm2_selected_list_get(cfdata->o_fm);
- if (!selected) return;
+ if (!(selected = e_widget_flist_selected_list_get(cfdata->o_fm))) return;
ici = selected->data;
- realpath = e_fm2_real_path_get(cfdata->o_fm);
+ realpath = e_widget_flist_real_path_get(cfdata->o_fm);
if (!strcmp(realpath, "/"))
snprintf(buf, sizeof(buf), "/%s", ici->file);
@@ -173,8 +144,7 @@ _cb_files_selection_change(void *data, Evas_Object *obj, void *event_info)
cfdata->theme = strdup(buf);
if (cfdata->o_preview)
e_widget_preview_edje_set(cfdata->o_preview, buf, "e/desktop/background");
- if (cfdata->o_frame)
- e_widget_change(cfdata->o_frame);
+ if (cfdata->o_fm) e_widget_change(cfdata->o_fm);
}
static void
@@ -190,20 +160,19 @@ _cb_files_files_changed(void *data, Evas_Object *obj, void *event_info)
{
E_Config_Dialog_Data *cfdata;
const char *p;
- const char *homedir;
char buf[4096];
cfdata = data;
- if (!cfdata->theme) return;
- if (!cfdata->o_fm) return;
- p = e_fm2_real_path_get(cfdata->o_fm);
+ if ((!cfdata->theme) || (!cfdata->o_fm)) return;
+
+ p = e_widget_flist_real_path_get(cfdata->o_fm);
if (p)
{
if (strncmp(p, cfdata->theme, strlen(p))) return;
}
- homedir = e_user_homedir_get();
- snprintf(buf, sizeof(buf), "%s/.e/e/themes", homedir);
if (!p) return;
+
+ snprintf(buf, sizeof(buf), "%s/.e/e/themes", e_user_homedir_get());
if (!strncmp(cfdata->theme, buf, strlen(buf)))
p = cfdata->theme + strlen(buf) + 1;
else
@@ -214,8 +183,8 @@ _cb_files_files_changed(void *data, Evas_Object *obj, void *event_info)
else
p = cfdata->theme;
}
- e_fm2_select_set(cfdata->o_fm, p, 1);
- e_fm2_file_show(cfdata->o_fm, p);
+ e_widget_flist_select_set(cfdata->o_fm, p, 1);
+ e_widget_flist_file_show(cfdata->o_fm, p);
}
static void
@@ -223,19 +192,13 @@ _cb_dir(void *data, Evas_Object *obj, void *event_info)
{
E_Config_Dialog_Data *cfdata;
char path[4096];
- const char *homedir;
cfdata = data;
if (cfdata->fmdir == 1)
- {
- snprintf(path, sizeof(path), "%s/data/themes", e_prefix_data_get());
- }
+ snprintf(path, sizeof(path), "%s/data/themes", e_prefix_data_get());
else
- {
- homedir = e_user_homedir_get();
- snprintf(path, sizeof(path), "%s/.e/e/themes", homedir);
- }
- e_fm2_path_set(cfdata->o_fm, path, "/");
+ snprintf(path, sizeof(path), "%s/.e/e/themes", e_user_homedir_get());
+ e_widget_flist_path_set(cfdata->o_fm, path, "/");
}
static void
@@ -246,13 +209,10 @@ _cb_files_files_deleted(void *data, Evas_Object *obj, void *event_info)
E_Fm2_Icon_Info *ici, *ic;
cfdata = data;
- if (!cfdata->theme) return;
- if (!cfdata->o_fm) return;
+ if ((!cfdata->theme) || (!cfdata->o_fm)) return;
- all = e_fm2_all_list_get(cfdata->o_fm);
- if (!all) return;
- sel = e_fm2_selected_list_get(cfdata->o_fm);
- if (!sel) return;
+ if (!(all = e_widget_flist_all_list_get(cfdata->o_fm))) return;
+ if (!(sel = e_widget_flist_selected_list_get(cfdata->o_fm))) return;
ici = sel->data;
@@ -264,11 +224,10 @@ _cb_files_files_deleted(void *data, Evas_Object *obj, void *event_info)
if (!n) return;
}
- ic = n->data;
- if (!ic) return;
+ if (!(ic = n->data)) return;
- e_fm2_select_set(cfdata->o_fm, ic->file, 1);
- e_fm2_file_show(cfdata->o_fm, ic->file);
+ e_widget_flist_select_set(cfdata->o_fm, ic->file, 1);
+ e_widget_flist_file_show(cfdata->o_fm, ic->file);
evas_list_free(n);
@@ -292,20 +251,20 @@ _fill_data(E_Config_Dialog_Data *cfdata)
{
E_Config_Theme * c;
char path[4096];
- const char *homedir;
c = e_theme_config_get("theme");
if (c)
cfdata->theme = strdup(c->file);
else
{
- snprintf(path, sizeof(path), "%s/data/themes/default.edj", e_prefix_data_get());
+ snprintf(path, sizeof(path), "%s/data/themes/default.edj",
+ e_prefix_data_get());
cfdata->theme = strdup(path);
}
if (cfdata->theme[0] != '/')
{
- homedir = e_user_homedir_get();
- snprintf(path, sizeof(path), "%s/.e/e/themes/%s", homedir, cfdata->theme);
+ snprintf(path, sizeof(path), "%s/.e/e/themes/%s",
+ e_user_homedir_get(), cfdata->theme);
if (ecore_file_exists(path))
{
E_FREE(cfdata->theme);
@@ -313,7 +272,8 @@ _fill_data(E_Config_Dialog_Data *cfdata)
}
else
{
- snprintf(path, sizeof(path), "%s/data/themes/%s", e_prefix_data_get(), cfdata->theme);
+ snprintf(path, sizeof(path), "%s/data/themes/%s",
+ e_prefix_data_get(), cfdata->theme);
if (ecore_file_exists(path))
{
E_FREE(cfdata->theme);
@@ -357,13 +317,9 @@ static Evas_Object *
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{
Evas_Object *o, *ot, *of, *il, *ol;
- char path[4096];
- const char *homedir;
- E_Fm2_Config fmc;
E_Zone *z;
E_Radio_Group *rg;
-
- homedir = e_user_homedir_get();
+ char path[4096];
z = e_zone_current_get(cfd->con);
@@ -391,51 +347,22 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
if (cfdata->fmdir == 1)
snprintf(path, sizeof(path), "%s/data/themes", e_prefix_data_get());
else
- snprintf(path, sizeof(path), "%s/.e/e/themes", homedir);
-
- cfdata->o_fm = NULL;
- o = e_fm2_add(evas);
- memset(&fmc, 0, sizeof(E_Fm2_Config));
- fmc.view.mode = E_FM2_VIEW_MODE_LIST;
- fmc.view.open_dirs_in_place = 1;
- fmc.view.selector = 1;
- fmc.view.single_click = 0;
- fmc.view.no_subdir_jump = 0;
- fmc.icon.list.w = 48;
- fmc.icon.list.h = 48;
- fmc.icon.fixed.w = 1;
- fmc.icon.fixed.h = 1;
- fmc.icon.extension.show = 0;
- fmc.icon.key_hint = NULL;
- fmc.list.sort.no_case = 1;
- fmc.list.sort.dirs.first = 0;
- fmc.list.sort.dirs.last = 1;
- fmc.selection.single = 1;
- fmc.selection.windows_modifiers = 0;
- e_fm2_config_set(o, &fmc);
- e_fm2_icon_menu_flags_set(o, E_FM2_MENU_NO_SHOW_HIDDEN);
+ snprintf(path, sizeof(path), "%s/.e/e/themes", e_user_homedir_get());
+
+ o = e_widget_flist_add(evas);
+ cfdata->o_fm = o;
evas_object_smart_callback_add(o, "dir_changed",
_cb_files_changed, cfdata);
evas_object_smart_callback_add(o, "selection_change",
_cb_files_selection_change, cfdata);
- evas_object_smart_callback_add(o, "selected",
- _cb_files_selected, cfdata);
evas_object_smart_callback_add(o, "changed",
_cb_files_files_changed, cfdata);
evas_object_smart_callback_add(o, "files_deleted",
_cb_files_files_deleted, cfdata);
+ e_widget_flist_path_set(o, path, "/");
- e_fm2_path_set(o, path, "/");
-
- of = e_widget_scrollframe_pan_add(evas, o,
- e_fm2_pan_set,
- e_fm2_pan_get,
- e_fm2_pan_max_get,
- e_fm2_pan_child_size_get);
- cfdata->o_fm = o;
- cfdata->o_frame = of;
- e_widget_min_size_set(of, 160, 160);
- e_widget_table_object_append(ol, of, 0, 2, 1, 1, 1, 1, 1, 1);
+ e_widget_min_size_set(o, 160, 160);
+ e_widget_table_object_append(ol, o, 0, 2, 1, 1, 1, 1, 1, 1);
e_widget_table_object_append(ot, ol, 0, 0, 1, 1, 1, 1, 1, 1);
of = e_widget_list_add(evas, 0, 0);
@@ -585,14 +512,13 @@ _get_theme_categories_list(void)
for (g = e_theme_category_list(); g; g = g->next)
{
const char *c;
- c = g->data;
- if (!c) continue;
+
+ if (!(c = g->data)) continue;
cats2 = cats;
while (cats2)
{
- if (!strcmp(c, cats2->data))
- break;
+ if (!strcmp(c, cats2->data)) break;
cats2 = cats2->next;
}
if (!cats2)
@@ -620,9 +546,7 @@ _get_theme_categories_list(void)
{
theme = themes->data;
if (!strcmp(category + 5, theme->category))
- {
- newtheme->file = strdup(theme->file);
- }
+ newtheme->file = strdup(theme->file);
}
tcl = evas_list_append(tcl, newtheme);
}
@@ -639,16 +563,17 @@ _files_ilist_nth_label_to_file(void *data, int n)
E_Config_Dialog_Data *cfdata;
char file[1024];
- cfdata = data;
- if (!cfdata) return NULL;
+ if (!(cfdata = data)) return NULL;
if (!cfdata->o_files_ilist) return NULL;
if (n > cfdata->personal_file_count)
snprintf(file, sizeof(file), "%s/data/themes/%s.edj",
- e_prefix_data_get(), e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n));
+ e_prefix_data_get(),
+ e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n));
else
snprintf(file, sizeof(file), "%s/.e/e/themes/%s.edj",
- e_user_homedir_get(), e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n));
+ e_user_homedir_get(),
+ e_widget_ilist_nth_label_get(cfdata->o_files_ilist, n));
return strdup(file);
}
@@ -662,20 +587,18 @@ _preview_set(void *data)
int n, ret = 0;
Evas_List *p;
- cfdata = data;
- if (!cfdata) return;
+ if (!(cfdata = data)) return;
n = e_widget_ilist_selected_get(cfdata->o_files_ilist);
theme = _files_ilist_nth_label_to_file(cfdata, n);
snprintf(c_label, sizeof(c_label), "%s:",
- e_widget_ilist_selected_label_get(cfdata->o_categories_ilist));
+ e_widget_ilist_selected_label_get(cfdata->o_categories_ilist));
if (theme)
{
p = cfdata->parts_list;
while (p)
{
- if (strstr((char *)(p->data), c_label))
- break;
+ if (strstr((char *)(p->data), c_label)) break;
p = p->next;
}
if (p)
@@ -698,8 +621,7 @@ _cb_adv_categories_change(void *data, Evas_Object *obj)
Evas_Object *ic = NULL;
int n;
- cfdata = data;
- if (!cfdata) return;
+ if (!(cfdata = data)) return;
label = e_widget_ilist_selected_label_get(cfdata->o_categories_ilist);
if (!label) return;
@@ -754,10 +676,7 @@ _theme_file_used(Evas_List *tlist, const char *filename)
while (tlist)
{
theme = tlist->data;
- if (theme->file && !strcmp(theme->file, filename))
- {
- return 1;
- }
+ if (theme->file && !strcmp(theme->file, filename)) return 1;
tlist = tlist->next;
}
@@ -803,6 +722,7 @@ _ilist_files_add(E_Config_Dialog_Data *cfdata, const char *header, const char *d
while (themefiles)
{
Evas_Object *ic = NULL;
+
if (_theme_file_used(cfdata->theme_list, themefiles->data))
{
ic = edje_object_add(evas);
@@ -828,8 +748,7 @@ _fill_files_ilist(E_Config_Dialog_Data *cfdata)
Evas_Object *o;
char theme_dir[4096];
- o = cfdata->o_files_ilist;
- if (!o) return;
+ if (!(o = cfdata->o_files_ilist)) return;
evas = evas_object_evas_get(o);
evas_event_freeze(evas);
@@ -839,13 +758,13 @@ _fill_files_ilist(E_Config_Dialog_Data *cfdata)
/* Grab the "Personal" themes. */
snprintf(theme_dir, sizeof(theme_dir), "%s/.e/e/themes",
- e_user_homedir_get());
+ e_user_homedir_get());
cfdata->personal_file_count =
_ilist_files_add(cfdata, _("Personal"), theme_dir);
/* Grab the "System" themes. */
snprintf(theme_dir, sizeof(theme_dir),
- "%s/data/themes", e_prefix_data_get());
+ "%s/data/themes", e_prefix_data_get());
_ilist_files_add(cfdata, _("System"), theme_dir);
e_widget_ilist_go(o);
@@ -862,8 +781,7 @@ _fill_categories_ilist(E_Config_Dialog_Data *cfdata)
E_Config_Theme *theme;
Evas_Object *o;
- o = cfdata->o_categories_ilist;
- if (!o) return;
+ if (!(o = cfdata->o_categories_ilist)) return;
evas = evas_object_evas_get(o);
evas_event_freeze(evas);
@@ -904,13 +822,10 @@ _cb_adv_btn_assign(void *data1, void *data2)
const char *label;
int n;
- cfdata = data1;
- if (!cfdata) return;
+ if (!(cfdata = data1)) return;
- oc = cfdata->o_categories_ilist;
- if (!oc) return;
- of = cfdata->o_files_ilist;
- if (!of) return;
+ if (!(oc = cfdata->o_categories_ilist)) return;
+ if (!(of = cfdata->o_files_ilist)) return;
evas = evas_object_evas_get(oc);
n = e_widget_ilist_selected_get(oc);
@@ -975,13 +890,10 @@ _cb_adv_btn_clear(void *data1, void *data2)
const char *filename = NULL;
int n;
- cfdata = data1;
- if (!cfdata) return;
+ if (!(cfdata = data1)) return;
- oc = cfdata->o_categories_ilist;
- if (!oc) return;
- of = cfdata->o_files_ilist;
- if (!of) return;
+ if (!(oc = cfdata->o_categories_ilist)) return;
+ if (!(of = cfdata->o_files_ilist)) return;
n = e_widget_ilist_selected_get(oc);
e_widget_ilist_nth_icon_set(oc, n, NULL);
@@ -1024,13 +936,10 @@ _cb_adv_btn_clearall(void *data1, void *data2)
Evas_Object *oc = NULL, *of = NULL;
int n;
- cfdata = data1;
- if (!cfdata) return;
+ if (!(cfdata = data1)) return;
- oc = cfdata->o_categories_ilist;
- if (!oc) return;
- of = cfdata->o_files_ilist;
- if (!of) return;
+ if (!(oc = cfdata->o_categories_ilist)) return;
+ if (!(of = cfdata->o_files_ilist)) return;
for (n = 0; n < e_widget_ilist_count(oc); n++)
e_widget_ilist_nth_icon_set(oc, n, NULL);
--
Enlightenment 17
More information about the Pkg-e-commits
mailing list