// special effects. VERY EXPERIMENTAL for now.
struct {
+ Eina_Stringshare *code;
Evas_Filter_Program *chain;
Eina_Hash *sources;
void *output;
o->cur.filter.output = NULL;
}
evas_filter_program_del(o->cur.filter.chain);
+ eina_stringshare_del(o->cur.filter.code);
o->cur.filter.chain = NULL;
/* free obj */
Evas_Filter_Program *pgm = NULL;
if (!o) return;
+ if (o->cur.filter.code == arg) return;
+ if (o->cur.filter.code && arg && !strcmp(arg, o->cur.filter.code)) return;
// Parse filter program
evas_filter_program_del(o->cur.filter.chain);
}
o->cur.filter.chain = pgm;
o->cur.filter.changed = EINA_TRUE;
+ eina_stringshare_replace(&o->cur.filter.code, arg);
// Update object
obj = eo_data_scope_get(eo_obj, EVAS_OBJ_CLASS);