1 typedef Eo Elm_Flip;
2 
3 
4 /** Elm flip mode
5  *
6  * @ingroup Elm_Flip
7  */
8 typedef enum
9 {
10   ELM_FLIP_ROTATE_Y_CENTER_AXIS = 0, /**< Rotate Y center axis flip mode */
11   ELM_FLIP_ROTATE_X_CENTER_AXIS, /**< Rotate X center axis flip mode */
12   ELM_FLIP_ROTATE_XZ_CENTER_AXIS, /**< Rotate XZ center axis flip mode */
13   ELM_FLIP_ROTATE_YZ_CENTER_AXIS, /**< Rotate YZ center axis flip mode */
14   ELM_FLIP_CUBE_LEFT, /**< Cube left flip mode */
15   ELM_FLIP_CUBE_RIGHT, /**< Cube right flip mode */
16   ELM_FLIP_CUBE_UP, /**< Cube up flip mode */
17   ELM_FLIP_CUBE_DOWN, /**< Cube down flip mode */
18   ELM_FLIP_PAGE_LEFT, /**< Page left flip mode */
19   ELM_FLIP_PAGE_RIGHT, /**< Page right flip mode */
20   ELM_FLIP_PAGE_UP, /**< Page up flip mode */
21   ELM_FLIP_PAGE_DOWN, /**< Page down flip mode */
22   ELM_FLIP_CROSS_FADE /**< Cross fade flip mode */
23 } Elm_Flip_Mode;
24 
25 /** Efl UI flip interaction
26  *
27  * @ingroup Efl_Ui
28  */
29 typedef enum
30 {
31   ELM_FLIP_INTERACTION_NONE = 0, /**< No interaction */
32   ELM_FLIP_INTERACTION_ROTATE, /**< Rotate interaction */
33   ELM_FLIP_INTERACTION_CUBE, /**< Cube interaction */
34   ELM_FLIP_INTERACTION_PAGE /**< Page interaction */
35 } Elm_Flip_Interaction;
36 
37 
38 typedef enum
39 {
40   ELM_FLIP_DIRECTION_UP = 0, /** Allows interaction with the top of the widget
41                               */
42   ELM_FLIP_DIRECTION_DOWN, /** Allows interaction with the bottom of the widget
43                             */
44   ELM_FLIP_DIRECTION_LEFT, /** Allows interaction with the left portion of the
45                             * widget */
46   ELM_FLIP_DIRECTION_RIGHT /** Allows interaction with the right portion of the
47                             * widget */
48 } Elm_Flip_Direction;
49 
50 /**
51  * @brief Set the amount of the flip that is sensitive to interactive flip.
52  *
53  * Set the amount of the flip that is sensitive to interactive flip, with 0
54  * representing no area in the flip and 1 representing the entire flip. There
55  * is however a consideration to be made in that the area will never be smaller
56  * than the finger size set (as set in your Elementary configuration), and
57  * dragging must always start from the opposite half of the flip (eg. right
58  * half of the flip when dragging to the left).
59  *
60  * @note The @c dir parameter is not actually related to the direction of the
61  * drag, it only refers to the area in the flip where interaction can occur
62  * (top, bottom, left, right).
63  *
64  * Negative values of @c hitsize will disable this hit area.
65  *
66  * See also @ref elm_flip_interaction_set.
67  *
68  * @param[in] hitsize The amount of that dimension (0.0 to 1.0) to use.
69  *
70  * @ingroup Elm_Flip
71  */
72 EAPI void elm_flip_interaction_direction_hitsize_set(Elm_Flip *obj, Elm_Flip_Direction dir, double hitsize);
73 
74 /**
75  * @brief Get the amount of the flip that is sensitive to interactive flip.
76  *
77  * @param[in] dir The direction to check.
78  *
79  * @return The size set for that direction.
80  *
81  * @ingroup Elm_Flip
82  */
83 EAPI double elm_flip_interaction_direction_hitsize_get(Elm_Flip *obj, Elm_Flip_Direction dir);
84 
85 /**
86  * @brief Set which directions of the flip respond to interactive flip
87  *
88  * By default all directions are disabled, so you may want to enable the
89  * desired directions for flipping if you need interactive flipping. You must
90  * call this function once for each direction that should be enabled.
91  *
92  * You can also set the appropriate hit area size by calling
93  * @ref efl_ui_flip_interaction_direction_hitsize_set. By default, a minimum
94  * hit area will be created on the opposite edge of the flip.
95  *
96  * @param[in] enabled If that direction is enabled or not.
97  *
98  * @ingroup Elm_Flip
99  */
100 EAPI void elm_flip_interaction_direction_enabled_set(Elm_Flip *obj, Elm_Flip_Direction dir, Eina_Bool enabled);
101 
102 /**
103  * @brief Get the enabled state of that flip direction.
104  *
105  * @param[in] dir The direction to check.
106  *
107  * @return If that direction is enabled or not.
108  *
109  * @ingroup Elm_Flip
110  */
111 EAPI Eina_Bool elm_flip_interaction_direction_enabled_get(Elm_Flip *obj, Elm_Flip_Direction dir);
112 
113 /**
114  * @brief Add a new flip to the parent
115  *
116  * @param parent The parent object
117  * @return The new object or NULL if it cannot be created
118  *
119  * @ingroup Elm_Flip
120  */
121 EAPI Evas_Object *elm_flip_add(Evas_Object *parent);
122 
123 /**
124  * @brief Set flip perspective
125  *
126  * @param obj The flip object
127  * @param foc The coordinate to set the focus on
128  * @param x The X coordinate
129  * @param y The Y coordinate
130  *
131  * @warning This function currently does nothing.
132  *
133  * @ingroup Elm_Flip
134  */
135 EAPI void                 elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y);
136 #include "efl_ui_flip_eo.legacy.h"
137