summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h')
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h135
1 files changed, 135 insertions, 0 deletions
diff --git a/src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h b/src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h
new file mode 100644
index 0000000..2b7e96b
--- /dev/null
+++ b/src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h
@@ -0,0 +1,135 @@
1#ifndef _EFL_CANVAS_VG_OBJECT_EO_LEGACY_H_
2#define _EFL_CANVAS_VG_OBJECT_EO_LEGACY_H_
3
4#ifndef _EFL_CANVAS_VG_OBJECT_EO_CLASS_TYPE
5#define _EFL_CANVAS_VG_OBJECT_EO_CLASS_TYPE
6
7typedef Eo Efl_Canvas_Vg_Object;
8
9#endif
10
11#ifndef _EFL_CANVAS_VG_OBJECT_EO_TYPES
12#define _EFL_CANVAS_VG_OBJECT_EO_TYPES
13
14/** Enumeration that defines how viewbox will be filled int the vg canvs's
15 * viewport. default Fill_Mode is @c none
16 *
17 * @ingroup Efl_Canvas_Vg
18 */
19typedef enum
20{
21 EFL_CANVAS_VG_FILL_MODE_NONE = 0, /**< Don't scale the viewbox. Placed it
22 * inside viewport taking align property
23 * into account */
24 EFL_CANVAS_VG_FILL_MODE_STRETCH, /**< Scale the viewbox so that it matches the
25 * canvas viewport. Aaspect ratio might be
26 * changed. */
27 EFL_CANVAS_VG_FILL_MODE_MEET, /**< Scale the viewbox so that it fits inside
28 * canvas viewport while maintaining the aspect
29 * ratio. At least one of the dimensions of the
30 * viewbox should be equal to the corresponding
31 * dimension of the viewport. */
32 EFL_CANVAS_VG_FILL_MODE_SLICE /**< Scale the viewbox so that it covers the
33 * entire canvas viewport while maintaining the
34 * aspect ratio. At least one of the dimensions
35 * of the viewbox should be equal to the
36 * corresponding dimension of the viewport. */
37} Efl_Canvas_Vg_Fill_Mode;
38
39
40#endif
41
42/**
43 * @brief Control how the viewbox is mapped to the vg canvas's viewport.
44 *
45 * @param[in] obj The object.
46 * @param[in] fill_mode Fill mode type
47 *
48 * @ingroup Evas_Object_Vg_Group
49 */
50EAPI void evas_object_vg_fill_mode_set(Efl_Canvas_Vg_Object *obj, Efl_Canvas_Vg_Fill_Mode fill_mode);
51
52/**
53 * @brief Control how the viewbox is mapped to the vg canvas's viewport.
54 *
55 * @param[in] obj The object.
56 *
57 * @return Fill mode type
58 *
59 * @ingroup Evas_Object_Vg_Group
60 */
61EAPI Efl_Canvas_Vg_Fill_Mode evas_object_vg_fill_mode_get(const Efl_Canvas_Vg_Object *obj);
62
63/**
64 * @brief Sets the viewbox for the evas vg canvas. viewbox if set should be
65 * mapped to the canvas geometry when rendering the vg tree.
66 *
67 * @param[in] obj The object.
68 * @param[in] viewbox viewbox for the vg canvas
69 *
70 * @ingroup Evas_Object_Vg_Group
71 */
72EAPI void evas_object_vg_viewbox_set(Efl_Canvas_Vg_Object *obj, Eina_Rect viewbox);
73
74/**
75 * @brief Get the current viewbox from the evas_object_vg
76 *
77 * @param[in] obj The object.
78 *
79 * @return viewbox for the vg canvas
80 *
81 * @ingroup Evas_Object_Vg_Group
82 */
83EAPI Eina_Rect evas_object_vg_viewbox_get(const Efl_Canvas_Vg_Object *obj);
84
85/**
86 * @brief Control how the viewbox is positioned inside the viewport.
87 *
88 * @param[in] obj The object.
89 * @param[in] align_x Alignment in the horizontal axis (0 <= align_x <= 1).
90 * @param[in] align_y Alignment in the vertical axis (0 <= align_y <= 1).
91 *
92 * @ingroup Evas_Object_Vg_Group
93 */
94EAPI void evas_object_vg_viewbox_align_set(Efl_Canvas_Vg_Object *obj, double align_x, double align_y);
95
96/**
97 * @brief Control how the viewbox is positioned inside the viewport.
98 *
99 * @param[in] obj The object.
100 * @param[out] align_x Alignment in the horizontal axis (0 <= align_x <= 1).
101 * @param[out] align_y Alignment in the vertical axis (0 <= align_y <= 1).
102 *
103 * @ingroup Evas_Object_Vg_Group
104 */
105EAPI void evas_object_vg_viewbox_align_get(const Efl_Canvas_Vg_Object *obj, double *align_x, double *align_y);
106
107/**
108 * @brief Set the root node of the evas_object_vg.
109 *
110 * @note To manually create the shape object and show in the Vg object canvas
111 * you must create the hierarchy and set as root node.
112 *
113 * It takes the ownership of the root node.
114 *
115 * @param[in] obj The object.
116 * @param[in] root Root node of the VG canvas.
117 *
118 * @ingroup Evas_Object_Vg_Group
119 */
120EAPI void evas_object_vg_root_node_set(Efl_Canvas_Vg_Object *obj, Efl_Canvas_Vg_Node *root);
121
122/**
123 * @brief Get the root node of the evas_object_vg.
124 *
125 * @param[in] obj The object.
126 *
127 * @return Root node of the VG canvas.
128 *
129 * @since 1.14
130 *
131 * @ingroup Evas_Object_Vg_Group
132 */
133EAPI Efl_Canvas_Vg_Node *evas_object_vg_root_node_get(const Efl_Canvas_Vg_Object *obj);
134
135#endif