if (transform)
{
transform->ref_count = 0;
+ transform->role = NULL;
e_util_transform_init(transform);
e_util_transform_ref(transform);
}
if (!transform) return;
transform->ref_count -= 1;
if (transform->ref_count <= 0)
- free(transform);
+ {
+ eina_stringshare_replace(&transform->role, NULL);
+ free(transform);
+ }
}
E_API int
}
}
+E_API void
+e_util_transform_role_set(E_Util_Transform *transform, const char *role)
+{
+ if (!transform) return;
+ eina_stringshare_replace(&transform->role, role);
+}
+
+E_API const char *
+e_util_transform_role_get(E_Util_Transform *transform)
+{
+ if (!transform) return NULL;
+ return transform->role;
+}
+
E_API void
e_util_transform_merge(E_Util_Transform *in_out, E_Util_Transform *input)
{
Eina_Bool use_viewport;
Eina_Bool use_bg_transform;
Eina_Bool use_axis;
+ Eina_Stringshare *role;
};
struct _E_Util_Transform_Vertex
E_API void e_util_transform_viewport_set(E_Util_Transform *transform, int x, int y, int w, int h);
E_API void e_util_transform_rotation_axis_set(E_Util_Transform *transform, double ax, double ay, double az);
E_API void e_util_transform_rotation_axis_reset(E_Util_Transform *transform);
+E_API void e_util_transform_role_set(E_Util_Transform *transform, const char *role);
+E_API const char *e_util_transform_role_get(E_Util_Transform *transform);
E_API void e_util_transform_merge(E_Util_Transform *in_out, E_Util_Transform *input);
E_API E_Util_Transform_Matrix e_util_transform_convert_to_matrix(E_Util_Transform *transform, E_Util_Transform_Rect *source_rect);