5 * The grid is a grid layout widget that lays out a series of children as a
6 * fixed "grid" of widgets using a given percentage of the grid width and
7 * height each using the child object.
9 * The Grid uses a "Virtual resolution" that is stretched to fill the grid
10 * widgets size itself. The default is 100 x 100, so that means the
11 * position and sizes of children will effectively be percentages (0 to 100)
12 * of the width or height of the grid widget
18 * Add a new grid to the parent
20 * @param parent The parent object
21 * @return The new object or NULL if it cannot be created
25 EAPI Evas_Object *elm_grid_add(Evas_Object *parent);
28 * Set the virtual size of the grid
30 * @param obj The grid object
31 * @param w The virtual width of the grid
32 * @param h The virtual height of the grid
36 EAPI void elm_grid_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
39 * Get the virtual size of the grid
41 * @param obj The grid object
42 * @param w Pointer to integer to store the virtual width of the grid
43 * @param h Pointer to integer to store the virtual height of the grid
47 EAPI void elm_grid_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
50 * Pack child at given position and size
52 * @param obj The grid object
53 * @param subobj The child to pack
54 * @param x The virtual x coord at which to pack it
55 * @param y The virtual y coord at which to pack it
56 * @param w The virtual width at which to pack it
57 * @param h The virtual height at which to pack it
61 EAPI void elm_grid_pack(Evas_Object *obj, Evas_Object *subobj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
64 * Unpack a child from a grid object
66 * @param obj The grid object
67 * @param subobj The child to unpack
71 EAPI void elm_grid_unpack(Evas_Object *obj, Evas_Object *subobj);
74 * Faster way to remove all child objects from a grid object.
76 * @param obj The grid object
77 * @param clear If true, it will delete just removed children
81 EAPI void elm_grid_clear(Evas_Object *obj, Eina_Bool clear);
84 * Set packing of an existing child at to position and size
86 * @param subobj The child to set packing of
87 * @param x The virtual x coord at which to pack it
88 * @param y The virtual y coord at which to pack it
89 * @param w The virtual width at which to pack it
90 * @param h The virtual height at which to pack it
94 EAPI void elm_grid_pack_set(Evas_Object *subobj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
97 * Get packing of a child
99 * @param subobj The child to query
100 * @param x Pointer to integer to store the virtual x coord
101 * @param y Pointer to integer to store the virtual y coord
102 * @param w Pointer to integer to store the virtual width
103 * @param h Pointer to integer to store the virtual height
107 EAPI void elm_grid_pack_get(Evas_Object *subobj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
110 * Get the list of the children for the grid.
112 * @param obj The grid object
114 * @note This is a duplicate of the list kept by the grid internally.
115 It's up to the user to destroy it when it no longer needs it.
116 It's possible to remove objects from the grid when walking this
117 list, but these removals won't be reflected on it.
121 EAPI Eina_List *elm_grid_children_get(const Evas_Object *obj);