add object configuration to comp matches

This commit is contained in:
Mike Blumenkrantz 2014-01-30 10:10:16 -05:00
parent 1d22c527a3
commit cd6fcead3e
1 changed files with 28 additions and 1 deletions

View File

@ -16,6 +16,7 @@ struct _E_Config_Dialog_Data
Eina_List *borders; // used for borders Eina_List *borders; // used for borders
Eina_List *overrides; // used for client menus, tooltips etc. Eina_List *overrides; // used for client menus, tooltips etc.
Eina_List *menus; // used for e menus Eina_List *menus; // used for e menus
Eina_List *objects; // used for e objects
int changed; int changed;
Evas_Object *edit_il; Evas_Object *edit_il;
@ -24,6 +25,7 @@ struct _E_Config_Dialog_Data
Evas_Object *borders_il; Evas_Object *borders_il;
Evas_Object *overrides_il; Evas_Object *overrides_il;
Evas_Object *menus_il; Evas_Object *menus_il;
Evas_Object *objects_il;
}; };
static void static void
@ -274,6 +276,8 @@ _edit_ok(void *d1, void *d2)
m->cfd->cfdata->overrides = eina_list_append(m->cfd->cfdata->overrides, m); m->cfd->cfdata->overrides = eina_list_append(m->cfd->cfdata->overrides, m);
else if (il == m->cfd->cfdata->menus_il) else if (il == m->cfd->cfdata->menus_il)
m->cfd->cfdata->menus = eina_list_append(m->cfd->cfdata->menus, m); m->cfd->cfdata->menus = eina_list_append(m->cfd->cfdata->menus, m);
else if (il == m->cfd->cfdata->objects_il)
m->cfd->cfdata->objects = eina_list_append(m->cfd->cfdata->objects, m);
_match_ilist_append(il, m, -1, 0); _match_ilist_append(il, m, -1, 0);
n = e_widget_ilist_count(il); n = e_widget_ilist_count(il);
e_widget_ilist_nth_show(il, n - 1, 0); e_widget_ilist_nth_show(il, n - 1, 0);
@ -540,6 +544,7 @@ _but_up(void *d1, void *d2)
_match_list_up(&(cfd->cfdata->borders), m); _match_list_up(&(cfd->cfdata->borders), m);
_match_list_up(&(cfd->cfdata->overrides), m); _match_list_up(&(cfd->cfdata->overrides), m);
_match_list_up(&(cfd->cfdata->menus), m); _match_list_up(&(cfd->cfdata->menus), m);
_match_list_up(&(cfd->cfdata->objects), m);
cfd->cfdata->changed = 1; cfd->cfdata->changed = 1;
e_config_dialog_changed_set(cfd, 1); e_config_dialog_changed_set(cfd, 1);
} }
@ -571,6 +576,7 @@ _but_down(void *d1, void *d2)
_match_list_down(&(cfd->cfdata->borders), m); _match_list_down(&(cfd->cfdata->borders), m);
_match_list_down(&(cfd->cfdata->overrides), m); _match_list_down(&(cfd->cfdata->overrides), m);
_match_list_down(&(cfd->cfdata->menus), m); _match_list_down(&(cfd->cfdata->menus), m);
_match_list_down(&(cfd->cfdata->objects), m);
cfd->cfdata->changed = 1; cfd->cfdata->changed = 1;
e_config_dialog_changed_set(cfd, 1); e_config_dialog_changed_set(cfd, 1);
} }
@ -613,6 +619,7 @@ _but_del(void *d1, void *d2)
_match_list_del(&(cfd->cfdata->borders), m); _match_list_del(&(cfd->cfdata->borders), m);
_match_list_del(&(cfd->cfdata->overrides), m); _match_list_del(&(cfd->cfdata->overrides), m);
_match_list_del(&(cfd->cfdata->menus), m); _match_list_del(&(cfd->cfdata->menus), m);
_match_list_del(&(cfd->cfdata->objects), m);
cfd->cfdata->changed = 1; cfd->cfdata->changed = 1;
e_config_dialog_changed_set(cfd, 1); e_config_dialog_changed_set(cfd, 1);
} }
@ -684,7 +691,7 @@ _create_styles_toolbook(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *
oi = _create_match_editor(cfd, evas, cfdata, &(cfdata->popups), &il); oi = _create_match_editor(cfd, evas, cfdata, &(cfdata->popups), &il);
cfdata->popups_il = il; cfdata->popups_il = il;
e_widget_toolbook_page_append(tb, NULL, _("E"), oi, 1, 1, 1, 1, 0.5, 0.0); e_widget_toolbook_page_append(tb, NULL, _("Popups"), oi, 1, 1, 1, 1, 0.5, 0.0);
oi = _create_match_editor(cfd, evas, cfdata, &(cfdata->overrides), &il); oi = _create_match_editor(cfd, evas, cfdata, &(cfdata->overrides), &il);
cfdata->overrides_il = il; cfdata->overrides_il = il;
@ -694,6 +701,10 @@ _create_styles_toolbook(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *
cfdata->menus_il = il; cfdata->menus_il = il;
e_widget_toolbook_page_append(tb, NULL, _("Menus"), oi, 1, 1, 1, 1, 0.5, 0.0); e_widget_toolbook_page_append(tb, NULL, _("Menus"), oi, 1, 1, 1, 1, 0.5, 0.0);
oi = _create_match_editor(cfd, evas, cfdata, &(cfdata->objects), &il);
cfdata->objects_il = il;
e_widget_toolbook_page_append(tb, NULL, _("Objects"), oi, 1, 1, 1, 1, 0.5, 0.0);
e_widget_toolbook_page_show(tb, 0); e_widget_toolbook_page_show(tb, 0);
return tb; return tb;
@ -713,6 +724,7 @@ _basic_apply_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata
E_FREE_LIST(conf->match.borders, e_comp_cfdata_match_free); E_FREE_LIST(conf->match.borders, e_comp_cfdata_match_free);
E_FREE_LIST(conf->match.overrides, e_comp_cfdata_match_free); E_FREE_LIST(conf->match.overrides, e_comp_cfdata_match_free);
E_FREE_LIST(conf->match.menus, e_comp_cfdata_match_free); E_FREE_LIST(conf->match.menus, e_comp_cfdata_match_free);
E_FREE_LIST(conf->match.objects, e_comp_cfdata_match_free);
EINA_LIST_FOREACH(cfdata->popups, l, m2) EINA_LIST_FOREACH(cfdata->popups, l, m2)
{ {
@ -738,6 +750,12 @@ _basic_apply_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata
_match_dup2(m2, m); _match_dup2(m2, m);
conf->match.menus = eina_list_append(conf->match.menus, m); conf->match.menus = eina_list_append(conf->match.menus, m);
} }
EINA_LIST_FOREACH(cfdata->objects, l, m2)
{
m = E_NEW(E_Comp_Match, 1);
_match_dup2(m2, m);
conf->match.objects = eina_list_append(conf->match.objects, m);
}
cfdata->changed = 0; cfdata->changed = 0;
e_comp_shadows_reset(); e_comp_shadows_reset();
e_config_save_queue(); e_config_save_queue();
@ -761,6 +779,7 @@ _free_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata)
E_FREE_LIST(cfdata->popups, _match_free); E_FREE_LIST(cfdata->popups, _match_free);
E_FREE_LIST(cfdata->borders, _match_free); E_FREE_LIST(cfdata->borders, _match_free);
E_FREE_LIST(cfdata->menus, _match_free); E_FREE_LIST(cfdata->menus, _match_free);
E_FREE_LIST(cfdata->objects, _match_free);
E_FREE_LIST(cfdata->overrides, _match_free); E_FREE_LIST(cfdata->overrides, _match_free);
free(cfdata); free(cfdata);
} }
@ -808,6 +827,14 @@ _create_data(E_Config_Dialog *cfd)
cfdata->menus = eina_list_append(cfdata->menus, m2); cfdata->menus = eina_list_append(cfdata->menus, m2);
} }
EINA_LIST_FOREACH(conf->match.objects, l, m)
{
m2 = E_NEW(Match_Config, 1);
_match_dup(m, m2);
m2->cfd = cfd;
cfdata->objects = eina_list_append(cfdata->objects, m2);
}
return cfdata; return cfdata;
} }