4 * The grid is a grid layout widget that lays out a series of children as a
5 * fixed "grid" of widgets using a given percentage of the grid width and
6 * height each using the child object.
8 * The Grid uses a "Virtual resolution" that is stretched to fill the grid
9 * widgets size itself. The default is 100 x 100, so that means the
10 * position and sizes of children will effectively be percentages (0 to 100)
11 * of the width or height of the grid widget
17 * Add a new grid to the parent
19 * @param parent The parent object
20 * @return The new object or NULL if it cannot be created
24 EAPI Evas_Object *elm_grid_add(Evas_Object *parent);
27 * Set the virtual size of the grid
29 * @param obj The grid object
30 * @param w The virtual width of the grid
31 * @param h The virtual height of the grid
35 EAPI void elm_grid_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
38 * Get the virtual size of the grid
40 * @param obj The grid object
41 * @param w Pointer to integer to store the virtual width of the grid
42 * @param h Pointer to integer to store the virtual height of the grid
46 EAPI void elm_grid_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
49 * Pack child at given position and size
51 * @param obj The grid object
52 * @param subobj The child to pack
53 * @param x The virtual x coord at which to pack it
54 * @param y The virtual y coord at which to pack it
55 * @param w The virtual width at which to pack it
56 * @param h The virtual height at which to pack it
60 EAPI void elm_grid_pack(Evas_Object *obj, Evas_Object *subobj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
63 * Unpack a child from a grid object
65 * @param obj The grid object
66 * @param subobj The child to unpack
70 EAPI void elm_grid_unpack(Evas_Object *obj, Evas_Object *subobj);
73 * Faster way to remove all child objects from a grid object.
75 * @param obj The grid object
76 * @param clear If true, it will delete just removed children
80 EAPI void elm_grid_clear(Evas_Object *obj, Eina_Bool clear);
83 * Set packing of an existing child at to position and size
85 * @param subobj The child to set packing of
86 * @param x The virtual x coord at which to pack it
87 * @param y The virtual y coord at which to pack it
88 * @param w The virtual width at which to pack it
89 * @param h The virtual height at which to pack it
93 EAPI void elm_grid_pack_set(Evas_Object *subobj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
96 * Get packing of a child
98 * @param subobj The child to query
99 * @param x Pointer to integer to store the virtual x coord
100 * @param y Pointer to integer to store the virtual y coord
101 * @param w Pointer to integer to store the virtual width
102 * @param h Pointer to integer to store the virtual height
106 EAPI void elm_grid_pack_get(Evas_Object *subobj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
109 * Get the list of the children for the grid.
111 * @param obj The grid object
113 * @note This is a duplicate of the list kept by the grid internally.
114 It's up to the user to destroy it when it no longer needs it.
115 It's possible to remove objects from the grid when walking this
116 list, but these removals won't be reflected on it.
120 EAPI Eina_List *elm_grid_children_get(const Evas_Object *obj);