forked from enlightenment/enlightenment
allow you to remove transitions too...
SVN revision: 25444
This commit is contained in:
parent
cd5937a70e
commit
338fc58a33
|
@ -69,27 +69,29 @@ _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
static int
|
static int
|
||||||
_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
if (cfdata->transition_start)
|
|
||||||
{
|
|
||||||
if (e_config->transition_start)
|
if (e_config->transition_start)
|
||||||
evas_stringshare_del(e_config->transition_start);
|
evas_stringshare_del(e_config->transition_start);
|
||||||
|
e_config->transition_start = NULL;
|
||||||
|
if (cfdata->transition_start)
|
||||||
|
{
|
||||||
if (e_theme_transition_find(cfdata->transition_start))
|
if (e_theme_transition_find(cfdata->transition_start))
|
||||||
e_config->transition_start = evas_stringshare_add(cfdata->transition_start);
|
e_config->transition_start = evas_stringshare_add(cfdata->transition_start);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cfdata->transition_desk)
|
|
||||||
{
|
|
||||||
|
|
||||||
if (e_config->transition_desk)
|
if (e_config->transition_desk)
|
||||||
evas_stringshare_del(e_config->transition_desk);
|
evas_stringshare_del(e_config->transition_desk);
|
||||||
|
e_config->transition_desk = NULL;
|
||||||
|
if (cfdata->transition_desk)
|
||||||
|
{
|
||||||
if (e_theme_transition_find(cfdata->transition_desk))
|
if (e_theme_transition_find(cfdata->transition_desk))
|
||||||
e_config->transition_desk = evas_stringshare_add(cfdata->transition_desk);
|
e_config->transition_desk = evas_stringshare_add(cfdata->transition_desk);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cfdata->transition_change)
|
|
||||||
{
|
|
||||||
if (e_config->transition_change)
|
if (e_config->transition_change)
|
||||||
evas_stringshare_del(e_config->transition_change);
|
evas_stringshare_del(e_config->transition_change);
|
||||||
|
e_config->transition_change = NULL;
|
||||||
|
if (cfdata->transition_change)
|
||||||
|
{
|
||||||
if (e_theme_transition_find(cfdata->transition_change))
|
if (e_theme_transition_find(cfdata->transition_change))
|
||||||
e_config->transition_change = evas_stringshare_add(cfdata->transition_change);
|
e_config->transition_change = evas_stringshare_add(cfdata->transition_change);
|
||||||
}
|
}
|
||||||
|
@ -124,6 +126,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
||||||
cfdata->trans_list = il;
|
cfdata->trans_list = il;
|
||||||
e_widget_min_size_set(il, 160, 200);
|
e_widget_min_size_set(il, 160, 200);
|
||||||
|
|
||||||
|
e_widget_ilist_append(il, NULL, _("None"), _trans_cb_changed, cfdata, NULL);
|
||||||
l = e_theme_transition_list();
|
l = e_theme_transition_list();
|
||||||
for (l = e_theme_transition_list(); l; l = l->next)
|
for (l = e_theme_transition_list(); l; l = l->next)
|
||||||
{
|
{
|
||||||
|
@ -163,22 +166,27 @@ _event_cb_changed(void *data)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!trans)
|
|
||||||
{
|
|
||||||
e_widget_ilist_unselect(cfdata->trans_list);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (i = 0; i < e_widget_ilist_count(cfdata->trans_list); i++)
|
for (i = 0; i < e_widget_ilist_count(cfdata->trans_list); i++)
|
||||||
{
|
{
|
||||||
list = e_widget_ilist_nth_label_get(cfdata->trans_list, i);
|
list = e_widget_ilist_nth_label_get(cfdata->trans_list, i);
|
||||||
if (!list) continue;
|
if (!list) continue;
|
||||||
|
if (!trans)
|
||||||
|
{
|
||||||
|
if (!strcmp(_("None"), list))
|
||||||
|
{
|
||||||
|
e_widget_ilist_selected_set(cfdata->trans_list, i);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
if (!strcmp(trans, list))
|
if (!strcmp(trans, list))
|
||||||
{
|
{
|
||||||
e_widget_ilist_selected_set(cfdata->trans_list, i);
|
e_widget_ilist_selected_set(cfdata->trans_list, i);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
e_widget_ilist_unselect(cfdata->trans_list);
|
e_widget_ilist_unselect(cfdata->trans_list);
|
||||||
}
|
}
|
||||||
|
@ -197,16 +205,22 @@ _trans_cb_changed(void *data)
|
||||||
t = e_widget_ilist_selected_label_get(cfdata->trans_list);
|
t = e_widget_ilist_selected_label_get(cfdata->trans_list);
|
||||||
if (!t) return;
|
if (!t) return;
|
||||||
|
|
||||||
|
if (!strcmp(t, _("None"))) t = NULL;
|
||||||
switch (sel)
|
switch (sel)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
cfdata->transition_start = strdup(t);
|
E_FREE(cfdata->transition_start);
|
||||||
|
if (t) cfdata->transition_start = strdup(t);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
cfdata->transition_desk = strdup(t);
|
E_FREE(cfdata->transition_desk);
|
||||||
|
if (t) cfdata->transition_desk = strdup(t);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
cfdata->transition_change = strdup(t);
|
E_FREE(cfdata->transition_change);
|
||||||
|
if (t) cfdata->transition_change = strdup(t);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue