1 /** 2 * Add a new box to the parent 3 * 4 * By default, the box will be in vertical mode and non-homogeneous. 5 * 6 * @param parent The parent object 7 * @return The new object or NULL if it cannot be created 8 * 9 * @ingroup Elm_Box_Group 10 */ 11 EAPI Evas_Object *elm_box_add(Evas_Object *parent); 12 13 #include "elm_box_eo.legacy.h" 14 15 /** 16 * @brief Set the layout defining function to be used by the box 17 * 18 * Whenever anything changes that requires the box in @c obj to recalculate the 19 * size and position of its elements, the function @c cb will be called to 20 * determine what the layout of the children will be. 21 * 22 * Once a custom function is set, everything about the children layout is 23 * defined by it. The flags set by @ref elm_box_horizontal_set and 24 * @ref elm_box_homogeneous_set no longer have any meaning, and the values 25 * given by @ref elm_box_padding_set and @ref elm_box_align_set are up to this 26 * layout function to decide if they are used and how. These last two will be 27 * found in the @c priv parameter, of type @c Evas_Object_Box_Data, passed to 28 * @c cb. The @c Evas_Object the function receives is not the Elementary 29 * widget, but the internal Evas Box it uses, so none of the functions 30 * described here can be used on it. 31 * 32 * Any of the layout functions in @c Evas can be used here, as well as the 33 * special @ref elm_box_layout_transition. 34 * 35 * The final @c data argument received by @c cb is the same @c data passed 36 * here, and the @c free_data function will be called to free it whenever the 37 * box is destroyed or another layout function is set. 38 * 39 * Setting @c cb to @c null will revert back to the default layout function. 40 * 41 * See also @ref elm_box_layout_transition. 42 * 43 * @param[in] cb The callback function used for layout 44 * @param[in] data Data that will be passed to layout function 45 * @param[in] free_data Function called to free @c data 46 * 47 * @ingroup Elm_Box_Group 48 */ 49 EAPI void elm_box_layout_set(Evas_Object *obj, Evas_Object_Box_Layout cb, const void *data, Ecore_Cb free_data); 50