* resized bounded to a minimum or maximum size, their size hint
* properties must be set (by the
* evas_object_size_hint_{min,max}_set() functions.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv)
* This function behaves analogously to
* evas_object_box_layout_horizontal(). The description of its
* behaviour can be derived from that function's documentation.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_vertical(Evas_Object *o, Evas_Object_Box_Data *priv)
* value of -1.0 to @c align_y makes the box try to resize this child
* element to the exact height of its parent (respecting the max hint
* on the child's height).
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_homogeneous_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv)
* This function behaves analogously to
* evas_object_box_layout_homogeneous_horizontal(). The description
* of its behaviour can be derived from that function's documentation.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_homogeneous_vertical(Evas_Object *o, Evas_Object_Box_Data *priv)
* value of -1.0 to @c align_y makes the box try to resize this child
* element to the exact height of its parent (respecting the max hint
* on the child's height).
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_homogeneous_max_size_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv)
* evas_object_box_layout_homogeneous_max_size_horizontal(). The
* description of its behaviour can be derived from that function's
* documentation.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_homogeneous_max_size_vertical(Evas_Object *o, Evas_Object_Box_Data *priv)
* row justifying) of setting space between rows. Note, however, that
* @c align_y dictates positioning relative to the *largest height*
* required by a child object in the actual row.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_flow_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv)
* This function behaves analogously to
* evas_object_box_layout_flow_horizontal(). The description of its
* behaviour can be derived from that function's documentation.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_flow_vertical(Evas_Object *o, Evas_Object_Box_Data *priv)
* (respecting the min and max hints on the child's width *and*
* accounting its horizontal padding properties). Same applies to
* vertical axis.
+ *
+ * @todo consider aspect hint and respect it.
*/
void
evas_object_box_layout_stack(Evas_Object *o, Evas_Object_Box_Data *priv)
Evas_Object_Table_Cache *c;
Eina_List *l;
- // XXX TODO: account paddings!
-
if (!priv->cache)
{
priv->cache = _evas_object_table_cache_alloc
((opt->max.h > -1) && (opt->min.h < opt->max.h))))
opt->expand_v = 1;
+ if (opt->align.h < 0.0)
+ opt->align.h = 0.5;
+ if (opt->align.v < 0.0)
+ opt->align.v = 0.5;
+
if (opt->expand_h)
memset(c->expands.h + opt->col, 1, opt->colspan);
if (opt->expand_v)
/**
* Set how this table should layout children.
*
+ * @todo consider aspect hint and respect it.
+ *
* @par EVAS_OBJECT_TABLE_HOMOGENEOUS_NONE
* If table does not use homogeneous mode then columns and rows will
* be calculated based on hints of individual cells. This operation
* mode is more flexible, but more complex and heavy to calculate as
- * well.
+ * well. @b Weight properties are handled as a boolean
+ * expand. Negative alignment will be considered as 0.5.
+ *
+ * @todo @c EVAS_OBJECT_TABLE_HOMOGENEOUS_NONE should balance weight.
*
* @par EVAS_OBJECT_TABLE_HOMOGENEOUS_TABLE
* When homogeneous is relative to table the own table size is divided