forked from enlightenment/efl
elm_layout: Implement Efl.Text
This implements support for efl_text_set() for the default part (NULL). This also adds support for efl_text_set(efl_part()) for layouts. This should cover a LOT of widgets :) The next step is to remove Elm.Layout.text but it's used in too many places at the moment. @herdsman!!
This commit is contained in:
parent
03eb4c6409
commit
584e17ae84
|
@ -1270,6 +1270,7 @@ _elm_layout_efl_container_content_count(Eo *eo_obj EINA_UNUSED, Elm_Layout_Smart
|
|||
return eina_list_count(sd->subs);
|
||||
}
|
||||
|
||||
// FIXME: Remove from EO file, remove EOLIAN tag
|
||||
EOLIAN static Eina_Bool
|
||||
_elm_layout_text_set(Eo *obj, Elm_Layout_Smart_Data *sd, const char *part, const char *text)
|
||||
{
|
||||
|
@ -1326,7 +1327,7 @@ _elm_layout_text_set(Eo *obj, Elm_Layout_Smart_Data *sd, const char *part, const
|
|||
return EINA_TRUE;
|
||||
}
|
||||
|
||||
EOLIAN static const char*
|
||||
EOLIAN static const char *
|
||||
_elm_layout_text_get(Eo *obj, Elm_Layout_Smart_Data *sd, const char *part)
|
||||
{
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
|
||||
|
@ -1337,6 +1338,18 @@ _elm_layout_text_get(Eo *obj, Elm_Layout_Smart_Data *sd, const char *part)
|
|||
return edje_object_part_text_get(wd->resize_obj, part);
|
||||
}
|
||||
|
||||
EOLIAN static void
|
||||
_elm_layout_efl_text_text_set(Eo *obj, Elm_Layout_Smart_Data *sd, const char *text)
|
||||
{
|
||||
_elm_layout_text_set(obj, sd, NULL, text);
|
||||
}
|
||||
|
||||
EOLIAN static const char *
|
||||
_elm_layout_efl_text_text_get(Eo *obj, Elm_Layout_Smart_Data *sd)
|
||||
{
|
||||
return _elm_layout_text_get(obj, sd, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
_layout_box_subobj_init(Elm_Layout_Smart_Data *sd, Elm_Layout_Sub_Object_Data *sub_d, const char *part, Evas_Object *child)
|
||||
{
|
||||
|
@ -2048,6 +2061,18 @@ _elm_layout_efl_part_part(const Eo *obj, Elm_Layout_Smart_Data *sd,
|
|||
return proxy;
|
||||
}
|
||||
|
||||
EOLIAN static void
|
||||
_elm_layout_internal_part_efl_text_text_set(Eo *obj, Elm_Part_Data *pd, const char *text)
|
||||
{
|
||||
ELM_PART_CALL(_elm_layout_text_set(pd->obj, pd->sd, pd->part, text));
|
||||
}
|
||||
|
||||
EOLIAN static const char *
|
||||
_elm_layout_internal_part_efl_text_text_get(Eo *obj, Elm_Part_Data *pd)
|
||||
{
|
||||
ELM_PART_RETURN_VAL(_elm_layout_text_get(pd->obj, pd->sd, pd->part));
|
||||
}
|
||||
|
||||
ELM_PART_IMPLEMENT_DESTRUCTOR(elm_layout, ELM_LAYOUT, Elm_Layout_Smart_Data, Elm_Part_Data)
|
||||
ELM_PART_IMPLEMENT_CONTENT_SET(elm_layout, ELM_LAYOUT, Elm_Layout_Smart_Data, Elm_Part_Data)
|
||||
ELM_PART_IMPLEMENT_CONTENT_GET(elm_layout, ELM_LAYOUT, Elm_Layout_Smart_Data, Elm_Part_Data)
|
||||
|
|
|
@ -17,7 +17,7 @@ struct Elm.Layout_Part_Alias_Description
|
|||
real_part: string; [[Target part name for the alias set on Elm.Layout_Part_Proxies_Description::real_part. An example of usage would be "default" on that field, with "elm.content.swallow" on this one]]
|
||||
}
|
||||
|
||||
class Elm.Layout (Elm.Widget, Efl.Part, Efl.Container, Efl.File)
|
||||
class Elm.Layout (Elm.Widget, Efl.Part, Efl.Container, Efl.File, Efl.Text)
|
||||
{
|
||||
[[Elementary layout class]]
|
||||
legacy_prefix: elm_layout;
|
||||
|
@ -358,6 +358,8 @@ class Elm.Layout (Elm.Widget, Efl.Part, Efl.Container, Efl.File)
|
|||
Efl.Container.content.get;
|
||||
Efl.Container.content_unset;
|
||||
Efl.Part.part;
|
||||
Efl.Text.text.set;
|
||||
Efl.Text.text.get;
|
||||
}
|
||||
events {
|
||||
theme,changed; [[Called when theme changed]]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
class Elm.Layout.Internal.Part (Efl.Object, Efl.Container)
|
||||
class Elm.Layout.Internal.Part (Efl.Object, Efl.Container, Efl.Text)
|
||||
{
|
||||
[[Elementary layout internal part class]]
|
||||
data: Elm_Part_Data;
|
||||
|
@ -7,5 +7,7 @@ class Elm.Layout.Internal.Part (Efl.Object, Efl.Container)
|
|||
Efl.Container.content.set;
|
||||
Efl.Container.content.get;
|
||||
Efl.Container.content_unset;
|
||||
Efl.Text.text.set;
|
||||
Efl.Text.text.get;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -127,6 +127,25 @@ EAPI Eina_Bool elm_layout_mmap_set(Eo *obj, const Eina_File *file, const char *g
|
|||
*/
|
||||
EAPI void elm_layout_mmap_get(Eo *obj, const Eina_File **file, const char **group);
|
||||
|
||||
/**
|
||||
* @brief Set the text of the given part.
|
||||
*
|
||||
* @param[in] part The TEXT part where to set the text.
|
||||
* @param[in] text The text to set.
|
||||
*
|
||||
* @return @c true on success, @c false otherwise
|
||||
*/
|
||||
EAPI Eina_Bool elm_layout_text_set(Evas_Object *obj, const char * part, const char *text);
|
||||
|
||||
/**
|
||||
* @brief Get the text set in the given part.
|
||||
*
|
||||
* @param[in] part The TEXT part where to set the text.
|
||||
*
|
||||
* @return The text to set.
|
||||
*/
|
||||
EAPI const char *elm_layout_text_get(const Evas_Object *obj, const char * part);
|
||||
|
||||
/**
|
||||
* @brief Append child to layout box part.
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue