disable the disabling of 'disable live preview' when the background is an animated edje

ticket #1161


SVN revision: 74821
This commit is contained in:
Mike Blumenkrantz 2012-08-03 07:51:14 +00:00
parent 0f61462049
commit c3a52481ce
1 changed files with 26 additions and 0 deletions

View File

@ -117,6 +117,31 @@ _free_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
E_FREE(cfdata);
}
static void
_live_preview_change(void *d __UNUSED__, Evas_Object *obj)
{
Eina_List *l, *ll, *lll;
E_Manager *man;
E_Container *con;
E_Zone *zone;
const char *str;
if (e_widget_check_checked_get(obj)) return;
EINA_LIST_FOREACH(e_manager_list(), l, man)
EINA_LIST_FOREACH(man->containers, ll, con)
EINA_LIST_FOREACH(con->zones, lll, zone)
{
if (!zone->bg_object) continue;
str = evas_object_type_get(zone->bg_object);
if (!str) continue;
if (strcmp(evas_object_type_get(zone->bg_object), "edje")) continue;
if (!edje_object_animation_get(zone->bg_object)) continue;
e_util_dialog_internal(_("Invalid Configuration"), _("Live previews cannot be used with animated desktop images!"));
e_widget_check_checked_set(obj, 1);
}
}
static Evas_Object *
_basic_create(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data *cfdata)
{
@ -133,6 +158,7 @@ _basic_create(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data
e_widget_framelist_object_append(of, ow);
ow = e_widget_check_add(evas, _("Disable live preview"),
&(cfdata->disable_live_preview));
e_widget_on_change_hook_set(ow, _live_preview_change, NULL);
e_widget_framelist_object_append(of, ow);
e_widget_list_object_append(ol, of, 1, 0, 0.5);