/**
* Positions where floatingbutton can be placed on
*/
-typedef enum {
- EEXT_FLOATINGBUTTON_LEFT_OUT = 0, /**< hides in the left, but small handler will show only */
- EEXT_FLOATINGBUTTON_LEFT, /**< shows all of buttons, but lies on the left */
- EEXT_FLOATINGBUTTON_CENTER, /**< shows all of buttons, but lies on the center */
- EEXT_FLOATINGBUTTON_RIGHT, /**< shows all of buttons, but lies on the right */
- EEXT_FLOATINGBUTTON_RIGHT_OUT, /**< hides in the right, but small handler will show only */
- EEXT_FLOATINGBUTTON_LAST /**< indicates the last, do not use this **/
-} Eext_Floatingbutton_Pos;
-typedef enum {
- EEXT_FLOATINGBUTTON_MODE_DEFAULT = 0, /**< allows all positions */
- EEXT_FLOATINGBUTTON_MODE_BOTH_SIDES, /**< allows LEFT and RIGHT positions only */
- EEXT_FLOATINGBUTTON_MODE_LAST /**< indicates the last, do not use this **/
-} Eext_Floatingbutton_Mode;
+// enum types are described as eo now
+//typedef enum {
+// EEXT_FLOATINGBUTTON_LEFT_OUT = 0, /**< hides in the left, but small handler will show only */
+// EEXT_FLOATINGBUTTON_LEFT, /**< shows all of buttons, but lies on the left */
+// EEXT_FLOATINGBUTTON_CENTER, /**< shows all of buttons, but lies on the center */
+// EEXT_FLOATINGBUTTON_RIGHT, /**< shows all of buttons, but lies on the right */
+// EEXT_FLOATINGBUTTON_RIGHT_OUT, /**< hides in the right, but small handler will show only */
+// EEXT_FLOATINGBUTTON_LAST /**< indicates the last, do not use this **/
+//} Eext_Floatingbutton_Pos;
+
+//typedef enum {
+// EEXT_FLOATINGBUTTON_MODE_DEFAULT = 0, /**< allows all positions */
+// EEXT_FLOATINGBUTTON_MODE_BOTH_SIDES, /**< allows LEFT and RIGHT positions only */
+// EEXT_FLOATINGBUTTON_MODE_LAST /**< indicates the last, do not use this **/
+//} Eext_Floatingbutton_Mode;
+
/**
* @}
#define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
#define ELM_INTERNAL_API_ARGESFSDFEFC 1
+#define ELM_WIDGET_PROTECTED
#include <Eo.h>
#define MY_CLASS_NAME "Eext_Floatingbutton"
#define MY_CLASS_NAME_LEGACY "eext_floatingbutton"
+
static const char SIG_PRESSED[] = "pressed";
static const char SIG_UNPRESSED[] = "unpressed";
eext_floatingbutton_add(Evas_Object *parent)
{
if (!parent) return NULL;
- Evas_Object *obj = eo_add(MY_CLASS, parent);
+ Evas_Object *obj = efl_add(MY_CLASS, parent);
return obj;
}
EOLIAN static Eo *
-_eext_floatingbutton_eo_base_constructor(Eo *obj, Eext_Floatingbutton_Data *sd EINA_UNUSED)
+_eext_floatingbutton_efl_object_constructor(Eo *obj, Eext_Floatingbutton_Data *sd EINA_UNUSED)
{
- obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor());
- eo_do(obj,
- evas_obj_type_set(MY_CLASS_NAME_LEGACY),
- evas_obj_smart_callbacks_descriptions_set(_smart_callbacks));
+ obj = efl_constructor(efl_super(obj, MY_CLASS));
+
+ efl_canvas_object_type_set(obj, MY_CLASS_NAME_LEGACY);
+ evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks);
return obj;
}
EOLIAN static void
-_eext_floatingbutton_evas_object_smart_add(Eo *obj, Eext_Floatingbutton_Data *priv)
+_eext_floatingbutton_efl_canvas_group_group_add(Eo *obj, Eext_Floatingbutton_Data *priv)
{
- eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
+ efl_canvas_group_add(efl_super(obj, MY_CLASS));
elm_widget_sub_object_parent_add(obj);
priv->obj = obj;
}
EOLIAN static void
-_eext_floatingbutton_class_constructor(Eo_Class *klass)
+_eext_floatingbutton_class_constructor(Efl_Class *klass)
{
evas_smart_legacy_type_register(MY_CLASS_NAME_LEGACY, klass);
}
static void
_btn_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
{
- Eext_Floatingbutton_Data *fbd = eo_data_scope_get((Eo *)data, EEXT_FLOATINGBUTTON_CLASS);
+ Eext_Floatingbutton_Data *fbd = efl_data_scope_get((Eo *)data, EEXT_FLOATINGBUTTON_CLASS);
if (!fbd) return;
}
EOLIAN static Eina_Bool
-_eext_floatingbutton_elm_container_content_set(Eo *obj, Eext_Floatingbutton_Data *sd, const char *part, Evas_Object *content)
+_eext_floatingbutton_efl_container_content_set(Eo *obj, Eext_Floatingbutton_Data *sd,Efl_Gfx *content)
{
Eina_Bool int_ret = EINA_FALSE;
char buf[256];
+ char *part = "test";
if ((!part) || (!content)) return int_ret;
int_ret = EINA_TRUE;
}
else
- eo_do_super(obj, MY_CLASS, int_ret = elm_obj_container_content_set(part, content));
+ int_ret = efl_content_set(obj, content);
_box_recalc(obj, sd);
_update_pos(obj, sd, EINA_TRUE);
return int_ret;
}
-EOLIAN static Evas_Object *
-_eext_floatingbutton_elm_container_content_get(Eo *obj, Eext_Floatingbutton_Data *sd, const char *part)
+EOLIAN static Efl_Gfx *
+_eext_floatingbutton_efl_container_content_get(Eo *obj, Eext_Floatingbutton_Data *sd)
{
Evas_Object *ret = NULL;
+ char *part ="test";
+
if (!part) return ret;
if (!strcmp(part, BTN1_PART))
else if (!strcmp(part, BTN2_PART))
ret = sd->btn2;
else
- eo_do_super(obj, MY_CLASS, ret = elm_obj_container_content_get(part));
+ ret = efl_content_get(obj);
return ret;
}
-EOLIAN static Evas_Object *
-_eext_floatingbutton_elm_container_content_unset(Eo *obj, Eext_Floatingbutton_Data *sd, const char *part)
+EOLIAN static Efl_Gfx *
+_eext_floatingbutton_efl_container_content_unset(Eo *obj, Eext_Floatingbutton_Data *sd)
{
Evas_Object *ret = NULL;
+ char *part = "test";
if (!part) return ret;
sd->btn2 = NULL;
}
else
- eo_do_super(obj, MY_CLASS, ret = elm_obj_container_content_unset(part));
+ ret = efl_content_unset(obj);
_box_recalc(obj, sd);
_update_pos(obj, sd, EINA_TRUE);
return ret;
}
-EOLIAN static Elm_Theme_Apply
+EOLIAN static Efl_Ui_Theme_Apply
_eext_floatingbutton_elm_widget_theme_apply(Eo *obj, Eext_Floatingbutton_Data *sd)
{
- Elm_Theme_Apply int_ret = ELM_THEME_APPLY_FAILED;
+ Efl_Ui_Theme_Apply int_ret = EFL_UI_THEME_APPLY_FAILED;
char buf[256];
- eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_theme_apply());
- if (!int_ret) return ELM_THEME_APPLY_FAILED;
+ int_ret = elm_obj_widget_theme_apply(efl_super(obj, MY_CLASS));
+ if (!int_ret) return EFL_UI_THEME_APPLY_FAILED;
snprintf(buf, sizeof(buf), "floatingbutton/%s", elm_object_style_get(obj));
}
EOLIAN static void
-_eext_floatingbutton_elm_interface_atspi_component_extents_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd, Eina_Bool screen_coords, int *x, int *y, int *w, int *h)
+_eext_floatingbutton_efl_access_component_extents_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd, Eina_Bool screen_coords, int *x, int *y, int *w, int *h)
{
int ee_x, ee_y;
}
EOLIAN static Eina_Bool
-_eext_floatingbutton_elm_widget_mirrored_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED)
+_eext_floatingbutton_efl_ui_base_mirrored_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED)
{
return EINA_FALSE;
}
EOLIAN static void
-_eext_floatingbutton_elm_widget_mirrored_set(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED, Eina_Bool mirrored EINA_UNUSED)
+_eext_floatingbutton_efl_ui_base_mirrored_set(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED, Eina_Bool mirrored EINA_UNUSED)
{
}
-class Eext.Floatingbutton (Elm.Layout) {
+
+enum Eext_Floatingbutton_Pos {
+ EEXT_FLOATINGBUTTON_LEFT_OUT = 0, /**< hides in the left, but small handler will show only */
+ EEXT_FLOATINGBUTTON_LEFT, /**< shows all of buttons, but lies on the left */
+ EEXT_FLOATINGBUTTON_CENTER, /**< shows all of buttons, but lies on the center */
+ EEXT_FLOATINGBUTTON_RIGHT, /**< shows all of buttons, but lies on the right */
+ EEXT_FLOATINGBUTTON_RIGHT_OUT, /**< hides in the right, but small handler will show only */
+ EEXT_FLOATINGBUTTON_LAST /**< indicates the last, do not use this **/
+}
+
+enum Eext_Floatingbutton_Mode {
+ EEXT_FLOATINGBUTTON_MODE_DEFAULT = 0, /**< allows all positions */
+ EEXT_FLOATINGBUTTON_MODE_BOTH_SIDES, /**< allows LEFT and RIGHT positions only */
+ EEXT_FLOATINGBUTTON_MODE_LAST /**< indicates the last, do not use this **/
+}
+
+class Eext.Floatingbutton (Efl.Ui.Layout, Efl.Container) {
eo_prefix: eext_obj_floatingbutton;
methods {
@property pos {
]]
}
values {
- block: Eina_Bool; [[ the floatingbutton movability ]]
+ block: bool; [[ the floatingbutton movability ]]
}
}
@property mode {
see eext_floatingbutton_pos_set()
]]
- return: Eina_Bool;
+ return: bool;
params {
@in pos: const(Eext_Floatingbutton_Pos); [[ the floatingbutton position ]]
}
}
implements {
class.constructor;
- Eo.Base.constructor;
- Evas.Object_Smart.add;
- Elm.Container.content_set;
- Elm.Container.content_get;
- Elm.Container.content_unset;
- Elm.Widget.mirrored;
+ Efl.Object.constructor;
+// Efl.Canvas.Group.group_add;
+ Efl.Container.content { get; set; }
+ Efl.Container.content_unset;
+ Efl.Ui.Base.mirrored { get; set; }
Elm.Widget.theme_apply;
- Elm_Interface_Atspi_Component.extents.get;
+// Efl.Access.Component.extents.get; // TODO : there will be this definition once we rebase onto upstream/master
}
}