fileman config dialog improvements.

* comment non-implemented/non-working layout modes.

 * implement check_changed.



SVN revision: 40219
This commit is contained in:
Gustavo Sverzut Barbieri 2009-04-19 08:57:01 +00:00
parent 989bb269af
commit e5c6e579cf
1 changed files with 31 additions and 9 deletions

View File

@ -74,6 +74,7 @@ static void *_create_data(E_Config_Dialog *cfd);
static void _fill_data(E_Config_Dialog_Data *cfdata);
static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static int _basic_apply(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static int _basic_check_changed(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static Evas_Object *_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
EAPI E_Config_Dialog *
@ -88,6 +89,7 @@ e_int_config_fileman(E_Container *con, const char *params __UNUSED__)
v->free_cfdata = _free_data;
v->basic.apply_cfdata = _basic_apply;
v->basic.create_widgets = _basic_create;
v->basic.check_changed = _basic_check_changed;
cfd = e_config_dialog_new(con, _("Fileman Settings"), "E",
"_config_fileman_dialog",
"system-file-manager", 0, v, NULL);
@ -165,6 +167,26 @@ _basic_apply(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
return 1;
}
static int
_basic_check_changed(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
{
return
((fileman_config->view.mode != cfdata->view.mode) ||
(fileman_config->view.open_dirs_in_place != cfdata->view.open_dirs_in_place) ||
(fileman_config->view.single_click != cfdata->view.single_click) ||
(fileman_config->view.show_full_path != cfdata->view.show_full_path) ||
(fileman_config->view.show_desktop_icons != cfdata->view.show_desktop_icons) ||
(fileman_config->view.show_toolbar != cfdata->view.show_toolbar) ||
(fileman_config->icon.extension.show != cfdata->icon.extension.show) ||
(fileman_config->selection.windows_modifiers != cfdata->selection.windows_modifiers) ||
(fileman_config->icon.icon.w != cfdata->icon.icon.w) ||
(fileman_config->icon.icon.h != cfdata->icon.icon.w) ||
(fileman_config->list.sort.dirs.first != cfdata->list.sort.dirs.first) ||
(fileman_config->list.sort.dirs.last != !(cfdata->list.sort.dirs.first)) ||
(fileman_config->list.sort.no_case != !(cfdata->list.sort.case_sen)) ||
(e_config->hal_desktop != cfdata->hal.desktop));
}
static Evas_Object *
_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{
@ -176,19 +198,19 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("View Mode"), 0);
rg = e_widget_radio_group_new(&(cfdata->view.mode));
ob = e_widget_radio_add(evas, _("Icons"), 0, rg);
e_widget_disabled_set(ob, 1);
e_widget_framelist_object_append(of, ob);
/* ob = e_widget_radio_add(evas, _("Icons"), 0, rg); */
/* e_widget_disabled_set(ob, 1); */
/* e_widget_framelist_object_append(of, ob); */
ob = e_widget_radio_add(evas, _("Grid Icons"), 1, rg);
e_widget_framelist_object_append(of, ob);
ob = e_widget_radio_add(evas, _("Custom Icons"), 2, rg);
e_widget_framelist_object_append(of, ob);
ob = e_widget_radio_add(evas, _("Custom Grid Icons"), 3, rg);
e_widget_disabled_set(ob, 1);
e_widget_framelist_object_append(of, ob);
ob = e_widget_radio_add(evas, _("Custom Smart Grid Icons"), 4, rg);
e_widget_disabled_set(ob, 1);
e_widget_framelist_object_append(of, ob);
/* ob = e_widget_radio_add(evas, _("Custom Grid Icons"), 3, rg); */
/* e_widget_disabled_set(ob, 1); */
/* e_widget_framelist_object_append(of, ob); */
/* ob = e_widget_radio_add(evas, _("Custom Smart Grid Icons"), 4, rg); */
/* e_widget_disabled_set(ob, 1); */
/* e_widget_framelist_object_append(of, ob); */
ob = e_widget_radio_add(evas, _("List"), 5, rg);
e_widget_framelist_object_append(of, ob);
e_widget_list_object_append(o, of, 1, 1, 0.5);