Efl.Object.constructor;
Efl.Object.destructor;
Efl.Object.dbg_info_get;
+ Efl.Canvas.Object.no_render.set;
Efl.Canvas.Object.paragraph_direction.set;
Efl.Canvas.Group.group_hide;
Efl.Canvas.Group.group_show;
Efl.Canvas.Group.group_add;
Efl.Canvas.Group.group_del;
Efl.Canvas.Group.group_resize;
- Efl.Canvas.Group.group_no_render.set;
Efl.Canvas.Group.group_calculate;
Efl.File.file.set;
Efl.File.file.get;
}
EOLIAN static void
-_edje_object_efl_canvas_group_group_no_render_set(Eo *obj, Edje *ed, Eina_Bool hide)
+_edje_object_efl_canvas_object_no_render_set(Eo *obj, Edje *ed, Eina_Bool enable)
{
Eina_List *l;
Edje *edg;
- efl_canvas_group_no_render_set(efl_super(obj, MY_CLASS), hide);
- if (efl_canvas_object_no_render_get(obj) == hide) return;
+ enable = !!enable;
+ if (efl_canvas_object_no_render_get(obj) == enable) return;
+ efl_canvas_object_no_render_set(efl_super(obj, MY_CLASS), enable);
EINA_LIST_FOREACH(ed->groups, l, edg)
- if (edg != ed) efl_canvas_group_no_render_set(edg->obj, hide);
+ if (edg != ed) efl_canvas_object_no_render_set(edg->obj, enable);
}
EOLIAN static void
}
EOLIAN static void
-_elm_widget_efl_canvas_group_group_no_render_set(Eo *obj, Elm_Widget_Smart_Data *_pd EINA_UNUSED, Eina_Bool hide)
+_elm_widget_efl_canvas_object_no_render_set(Eo *obj, Elm_Widget_Smart_Data *_pd EINA_UNUSED, Eina_Bool hide)
{
Eina_Iterator *it;
Evas_Object *o;
+ hide = !!hide;
+ if (efl_canvas_object_no_render_get(obj) == hide)
+ return;
+
it = evas_object_smart_iterator_new(obj);
EINA_ITERATOR_FOREACH(it, o)
{
efl_canvas_object_no_render_set(o, hide);
}
eina_iterator_free(it);
+
+ // bypass implementation in Efl.Canvas.Group
+ efl_canvas_object_no_render_set(efl_super(obj, EFL_CANVAS_GROUP_CLASS), hide);
}
EOLIAN static void
Efl.Object.destructor;
Efl.Object.dbg_info_get;
Efl.Object.provider_find;
+ Efl.Canvas.Object.no_render.set;
Efl.Canvas.Group.group_hide;
Efl.Canvas.Group.group_calculate;
Efl.Canvas.Group.group_clip_unset;
Efl.Canvas.Group.group_clip.set;
Efl.Canvas.Group.group_member_add;
Efl.Canvas.Group.group_resize;
- Efl.Canvas.Group.group_no_render.set;
Elm.Interface.Atspi_Accessible.name.get;
Elm.Interface.Atspi_Accessible.state_set.get;
Elm.Interface.Atspi_Accessible.children.get;
@in y: Evas.Coord;
}
}
- @property group_no_render {
- [[Propagates the value of no-render to the smart children.]]
- set { legacy: null; }
- values { hide: bool; }
- }
group_hide {
[[No description supplied by the EAPI.]]
legacy: null;
class.constructor;
class.destructor;
Efl.Object.constructor;
+ Efl.Canvas.Object.no_render.set;
Efl.Canvas.Object.paragraph_direction.set;
Efl.Canvas.Object.paragraph_direction.get;
}
[[Internal class representing a canvas object group with a clipper.]]
data: Evas_Object_Smart_Clipped_Data;
implements {
+ Efl.Canvas.Object.no_render.set;
Efl.Canvas.Group.group_hide;
Efl.Canvas.Group.group_clip.set;
Efl.Canvas.Group.group_clip_unset;
}
EOLIAN void
-_efl_canvas_object_no_render_set(Eo *eo_obj, Evas_Object_Protected_Data *obj, Eina_Bool enable)
+_efl_canvas_object_no_render_set(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Eina_Bool enable)
{
- enable = !!enable;
- if (obj->no_render == enable) return;
-
- obj->no_render = enable;
- if (obj->is_smart)
- efl_canvas_group_no_render_set(eo_obj, enable);
+ obj->no_render = !!enable;
}
EOLIAN Eina_Bool
}
EOLIAN static void
-_efl_canvas_group_group_no_render_set(Eo *eo_obj, Evas_Smart_Data *o EINA_UNUSED, Eina_Bool hide)
+_efl_canvas_group_efl_canvas_object_no_render_set(Eo *eo_obj, Evas_Smart_Data *o EINA_UNUSED, Eina_Bool enable)
{
Evas_Object_Protected_Data *obj2;
- Evas_Object_Smart_Clipped_Data *cso;
- Evas_Object *cso_clipper;
- if (efl_isa(eo_obj, EFL_CANVAS_GROUP_CLIPPED_CLASS))
- cso = efl_data_scope_get(eo_obj, EFL_CANVAS_GROUP_CLIPPED_CLASS);
- else
- cso = evas_object_smart_data_get(eo_obj);
- cso_clipper = cso ? cso->clipper : NULL;
+ enable = !!enable;
+ if (efl_canvas_object_no_render_get(eo_obj) == enable) return;
+ efl_canvas_object_no_render_set(efl_super(eo_obj, MY_CLASS), enable);
EINA_INLIST_FOREACH(evas_object_smart_members_get_direct(eo_obj), obj2)
- {
- if (cso_clipper != obj2->object)
- efl_canvas_object_no_render_set(obj2->object, hide);
- }
+ efl_canvas_object_no_render_set(obj2->object, enable);
}
void
evas_object_smart_clipped_group_hide(eo_obj);
}
+EOLIAN static void
+_efl_canvas_group_clipped_efl_canvas_object_no_render_set(Eo *eo_obj, Evas_Object_Smart_Clipped_Data *cso, Eina_Bool enable)
+{
+ enable = !!enable;
+ if (efl_canvas_object_no_render_get(eo_obj) == enable) return;
+ efl_canvas_object_no_render_set(efl_super(eo_obj, MY_CLASS), enable);
+ efl_canvas_object_no_render_set(cso->clipper, 1);
+}
+
static void
evas_object_smart_clipped_smart_color_set(Evas_Object *eo_obj, int r, int g, int b, int a)
{