Clipped smart object is a base to construct other smart objects based on the concept of having an internal clipper that is applied to all children objects. More...
Data Structures | |
struct | _Evas_Object_Smart_Clipped_Data |
Typedefs | |
typedef struct _Evas_Object_Smart_Clipped_Data | Evas_Object_Smart_Clipped_Data |
Every subclass should provide this at the beginning of their own data set with evas_object_smart_data_set(). | |
Functions | |
void | evas_object_smart_clipped_smart_set (Evas_Smart_Class *sc) |
Set a given smart class' callbacks so it implements the clipped smart object"'s interface. More... | |
const Evas_Smart_Class * | evas_object_smart_clipped_class_get (void) |
Get a pointer to the clipped smart object's class, to use for proper inheritance. More... | |
const Eo_Class * | evas_object_smart_clipped_eo_class_get (void) |
#define | EVAS_OBJ_SMART_CLIPPED_CLASS evas_object_smart_clipped_eo_class_get() |
enum | { EVAS_OBJ_SMART_CLIPPED_SUB_ID_LAST } |
Eo_Op | EVAS_OBJ_SMART_CLIPPED_BASE_ID |
#define | evas_obj_smart_clipped_clipper_get(ret) EVAS_OBJ_ID(EVAS_OBJ_SUB_ID_SMART_CLIPPED_CLIPPER_GET), EO_TYPECHECK(Evas_Object **, ret) |
Evas_Object * | evas_object_smart_clipped_clipper_get (Evas_Object *obj) |
Get the clipper object for the given clipped smart object. More... | |
Clipped smart object is a base to construct other smart objects based on the concept of having an internal clipper that is applied to all children objects.
This clipper will control the visibility, clipping and color of sibling objects (remember that the clipping is recursive, and clipper color modulates the color of its clippees). By default, this base will also move children relatively to the parent, and delete them when parent is deleted. In other words, it is the base for simple object grouping.
See some examples of this group of functions.
#define evas_obj_smart_clipped_clipper_get | ( | ret | ) | EVAS_OBJ_ID(EVAS_OBJ_SUB_ID_SMART_CLIPPED_CLIPPER_GET), EO_TYPECHECK(Evas_Object **, ret) |
Get the clipper object for the given clipped smart object.
[out] | ret | out |
Referenced by evas_object_smart_clipped_clipper_get().
void evas_object_smart_clipped_smart_set | ( | Evas_Smart_Class * | sc | ) |
Set a given smart class' callbacks so it implements the clipped smart object"'s interface.
sc | The smart class handle to operate on |
This call will assign all the required methods of the sc
Evas_Smart_Class instance to the implementations set for clipped smart objects. If one wants to "subclass" it, call this function and then override desired values. If one wants to call any original method, save it somewhere. Example:
Default behavior for each of Evas_Smart_Class functions on a clipped smart object are:
add:
creates a hidden clipper with "infinite" size, to clip any incoming members;del:
delete all children objects;move:
move all objects relative relatively;resize:
not defined;show:
if there are children objects, show clipper;hide:
hides clipper;color_set:
set the color of clipper;clip_set:
set clipper of clipper;clip_unset:
unset the clipper of clipper;References _Evas_Smart_Class::add, _Evas_Smart_Class::calculate, _Evas_Smart_Class::clip_set, _Evas_Smart_Class::clip_unset, _Evas_Smart_Class::color_set, _Evas_Smart_Class::del, _Evas_Smart_Class::hide, _Evas_Smart_Class::member_add, _Evas_Smart_Class::member_del, _Evas_Smart_Class::move, and _Evas_Smart_Class::show.
Referenced by evas_object_smart_clipped_class_get().
const Evas_Smart_Class* evas_object_smart_clipped_class_get | ( | void | ) |
Get a pointer to the clipped smart object's class, to use for proper inheritance.
References evas_object_smart_clipped_smart_set(), and EVAS_SMART_CLASS_INIT_NAME_VERSION.
Evas_Object* evas_object_smart_clipped_clipper_get | ( | Evas_Object * | obj | ) |
Get the clipper object for the given clipped smart object.
obj | the clipped smart object to retrieve associated clipper from. |
Use this function if you want to change any of this clipper's properties, like colors.
References evas_obj_smart_clipped_clipper_get.