fomatting of headers -> fixup. and documentation fixing.
[framework/uifw/elementary.git] / src / lib / elm_mapbuf.h
1 /**
2  * @defgroup Mapbuf Mapbuf
3  * @ingroup Elementary
4  *
5  * @image html img/widget/mapbuf/preview-00.png
6  * @image latex img/widget/mapbuf/preview-00.eps width=\textwidth
7  *
8  * This holds one content object and uses an Evas Map of transformation
9  * points to be later used with this content. So the content will be
10  * moved, resized, etc as a single image. So it will improve performance
11  * when you have a complex interafce, with a lot of elements, and will
12  * need to resize or move it frequently (the content object and its
13  * children).
14  *
15  * Default contents parts of the mapbuf widget that you can use for are:
16  * @li "default" - A content of the mapbuf
17  *
18  * To enable map, elm_mapbuf_enabled_set() should be used.
19  *
20  * See how to use this widget in this example:
21  * @ref mapbuf_example
22  */
23
24 /**
25  * @addtogroup Mapbuf
26  * @{
27  */
28
29 /**
30  * Add a new mapbuf widget to the given parent Elementary
31  * (container) object.
32  *
33  * @param parent The parent object.
34  * @return A new mapbuf widget handle or @c NULL, on errors.
35  *
36  * This function inserts a new mapbuf widget on the canvas.
37  *
38  * @ingroup Mapbuf
39  */
40 EAPI Evas_Object *
41                                   elm_mapbuf_add(Evas_Object *parent)
42 EINA_ARG_NONNULL(1);
43
44 /**
45  * Set the content of the mapbuf.
46  *
47  * @param obj The mapbuf object.
48  * @param content The content that will be filled in this mapbuf object.
49  *
50  * Once the content object is set, a previously set one will be deleted.
51  * If you want to keep that old content object, use the
52  * elm_mapbuf_content_unset() function.
53  *
54  * To enable map, elm_mapbuf_enabled_set() should be used.
55  *
56  * @deprecated use elm_object_content_set() instead
57  *
58  * @ingroup Mapbuf
59  */
60 EINA_DEPRECATED EAPI void         elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
61
62 /**
63  * Get the content of the mapbuf.
64  *
65  * @param obj The mapbuf object.
66  * @return The content that is being used.
67  *
68  * Return the content object which is set for this widget.
69  *
70  * @see elm_mapbuf_content_set() for details.
71  *
72  * @deprecated use elm_object_content_get() instead
73  *
74  * @ingroup Mapbuf
75  */
76 EINA_DEPRECATED EAPI Evas_Object *elm_mapbuf_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
77
78 /**
79  * Unset the content of the mapbuf.
80  *
81  * @param obj The mapbuf object.
82  * @return The content that was being used.
83  *
84  * Unparent and return the content object which was set for this widget.
85  *
86  * @see elm_mapbuf_content_set() for details.
87  *
88  * @deprecated use elm_object_content_unset() instead
89  *
90  * @ingroup Mapbuf
91  */
92 EINA_DEPRECATED EAPI Evas_Object *elm_mapbuf_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
93
94 /**
95  * Enable or disable the map.
96  *
97  * @param obj The mapbuf object.
98  * @param enabled @c EINA_TRUE to enable map or @c EINA_FALSE to disable it.
99  *
100  * This enables the map that is set or disables it. On enable, the object
101  * geometry will be saved, and the new geometry will change (position and
102  * size) to reflect the map geometry set.
103  *
104  * Also, when enabled, alpha and smooth states will be used, so if the
105  * content isn't solid, alpha should be enabled, for example, otherwise
106  * a black retangle will fill the content.
107  *
108  * When disabled, the stored map will be freed and geometry prior to
109  * enabling the map will be restored.
110  *
111  * It's disabled by default.
112  *
113  * @see elm_mapbuf_alpha_set()
114  * @see elm_mapbuf_smooth_set()
115  *
116  * @ingroup Mapbuf
117  */
118 EAPI void                         elm_mapbuf_enabled_set(Evas_Object *obj, Eina_Bool enabled) EINA_ARG_NONNULL(1);
119
120 /**
121  * Get a value whether map is enabled or not.
122  *
123  * @param obj The mapbuf object.
124  * @return @c EINA_TRUE means map is enabled. @c EINA_FALSE indicates
125  * it's disabled. If @p obj is @c NULL, @c EINA_FALSE is returned.
126  *
127  * @see elm_mapbuf_enabled_set() for details.
128  *
129  * @ingroup Mapbuf
130  */
131 EAPI Eina_Bool                    elm_mapbuf_enabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
132
133 /**
134  * Enable or disable smooth map rendering.
135  *
136  * @param obj The mapbuf object.
137  * @param smooth @c EINA_TRUE to enable smooth map rendering or @c EINA_FALSE
138  * to disable it.
139  *
140  * This sets smoothing for map rendering. If the object is a type that has
141  * its own smoothing settings, then both the smooth settings for this object
142  * and the map must be turned off.
143  *
144  * By default smooth maps are enabled.
145  *
146  * @ingroup Mapbuf
147  */
148 EAPI void                         elm_mapbuf_smooth_set(Evas_Object *obj, Eina_Bool smooth) EINA_ARG_NONNULL(1);
149
150 /**
151  * Get a value whether smooth map rendering is enabled or not.
152  *
153  * @param obj The mapbuf object.
154  * @return @c EINA_TRUE means smooth map rendering is enabled. @c EINA_FALSE
155  * indicates it's disabled. If @p obj is @c NULL, @c EINA_FALSE is returned.
156  *
157  * @see elm_mapbuf_smooth_set() for details.
158  *
159  * @ingroup Mapbuf
160  */
161 EAPI Eina_Bool                    elm_mapbuf_smooth_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
162
163 /**
164  * Set or unset alpha flag for map rendering.
165  *
166  * @param obj The mapbuf object.
167  * @param alpha @c EINA_TRUE to enable alpha blending or @c EINA_FALSE
168  * to disable it.
169  *
170  * This sets alpha flag for map rendering. If the object is a type that has
171  * its own alpha settings, then this will take precedence. Only image objects
172  * have this currently. It stops alpha blending of the map area, and is
173  * useful if you know the object and/or all sub-objects is 100% solid.
174  *
175  * Alpha is enabled by default.
176  *
177  * @ingroup Mapbuf
178  */
179 EAPI void                         elm_mapbuf_alpha_set(Evas_Object *obj, Eina_Bool alpha) EINA_ARG_NONNULL(1);
180
181 /**
182  * Get a value whether alpha blending is enabled or not.
183  *
184  * @param obj The mapbuf object.
185  * @return @c EINA_TRUE means alpha blending is enabled. @c EINA_FALSE
186  * indicates it's disabled. If @p obj is @c NULL, @c EINA_FALSE is returned.
187  *
188  * @see elm_mapbuf_alpha_set() for details.
189  *
190  * @ingroup Mapbuf
191  */
192 EAPI Eina_Bool                    elm_mapbuf_alpha_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
193
194 /**
195  * @}
196  */