~~Title: Efl.Pack_Linear~~ ====== Efl.Pack_Linear (interface) ====== ===== Description ===== %%Common interface for objects (containers) with multiple contents (sub-objects) which can be added and removed at runtime in a linear fashion.%% %%This means the sub-objects are internally organized in an ordered list.%% {{page>:develop:api-include:efl:pack_linear:description&nouser&nolink&nodate}} ===== Inheritance ===== => [[:develop:api:efl:pack|Efl.Pack]] //(interface)// => [[:develop:api:efl:container|Efl.Container]] //(interface)// ++++ Full hierarchy | * [[:develop:api:efl:pack|Efl.Pack]] //(interface)// * [[:develop:api:efl:container|Efl.Container]] //(interface)// ++++ ===== Members ===== **[[:develop:api:efl:pack_linear:method:pack_after|pack_after]]**\\ > %%Append an object after the %%''existing''%% sub-object.%% Eina_Bool efl_pack_after(Eo *obj, Efl_Gfx_Entity *subobj, const Efl_Gfx_Entity *existing); \\ **[[:develop:api:efl:pack_linear:method:pack_at|pack_at]]**\\ > %%Inserts %%''subobj''%% BEFORE the sub-object at position %%''index''%%.%% Eina_Bool efl_pack_at(Eo *obj, Efl_Gfx_Entity *subobj, int index); \\ **[[:develop:api:efl:pack_linear:method:pack_before|pack_before]]**\\ > %%Prepend an object before the %%''existing''%% sub-object.%% Eina_Bool efl_pack_before(Eo *obj, Efl_Gfx_Entity *subobj, const Efl_Gfx_Entity *existing); \\ **[[:develop:api:efl:pack_linear:method:pack_begin|pack_begin]]**\\ > %%Prepend an object at the beginning of this container.%% Eina_Bool efl_pack_begin(Eo *obj, Efl_Gfx_Entity *subobj); \\ **[[:develop:api:efl:pack_linear:method:pack_content_get|pack_content_get]]**\\ > %%Sub-object at a given %%''index''%% in this container.%% Efl_Gfx_Entity *efl_pack_content_get(Eo *obj, int index); \\ **[[:develop:api:efl:pack_linear:method:pack_end|pack_end]]**\\ > %%Append object at the end of this container.%% Eina_Bool efl_pack_end(Eo *obj, Efl_Gfx_Entity *subobj); \\ **[[:develop:api:efl:pack_linear:method:pack_index_get|pack_index_get]]**\\ > %%Get the index of a sub-object in this container.%% int efl_pack_index_get(Eo *obj, const Efl_Gfx_Entity *subobj); \\ **[[:develop:api:efl:pack_linear:method:pack_unpack_at|pack_unpack_at]]**\\ > %%Pop out (remove) the sub-object at the specified %%''index''%%.%% Efl_Gfx_Entity *efl_pack_unpack_at(Eo *obj, int index); \\ ==== Inherited ==== ^ [[:develop:api:efl:container|Efl.Container]] ^^^ | | **[[:develop:api:efl:container:method:content_count|content_count]]** | %%Returns the number of contained sub-objects.%% | | | **[[:develop:api:efl:container:method:content_iterate|content_iterate]]** | %%Begin iterating over this object's contents.%% | ^ [[:develop:api:efl:pack|Efl.Pack]] ^^^ | | **[[:develop:api:efl:pack:method:pack|pack]]** | %%Adds a sub-object to this container.%% | | | **[[:develop:api:efl:pack:method:pack_clear|pack_clear]]** | %%Removes all packed sub-objects and unreferences them.%% | | | **[[:develop:api:efl:pack:method:unpack|unpack]]** | %%Removes an existing sub-object from the container without deleting it.%% | | | **[[:develop:api:efl:pack:method:unpack_all|unpack_all]]** | %%Removes all packed sub-objects without unreferencing them.%% | ===== Events ===== ==== Inherited ==== ^ [[:develop:api:efl:container|Efl.Container]] ^^^ | | **[[:develop:api:efl:container:event:content_added|content,added]]** | %%Sent after a new sub-object was added.%% | | | **[[:develop:api:efl:container:event:content_removed|content,removed]]** | %%Sent after a sub-object was removed, before unref.%% |