diff options
author | ChunEon Park <hermet@hermet.pe.kr> | 2014-03-22 15:17:00 +0900 |
---|---|---|
committer | ChunEon Park <hermet@hermet.pe.kr> | 2014-03-22 15:17:00 +0900 |
commit | 9fa7f9125946a6222157034fc83fe8e8d79e5fe1 (patch) | |
tree | 0a35174fd387094658caec2ab839efeb120f103d | |
parent | 1fae5b440457948a048007fbb24171f90e6aab30 (diff) | |
download | elementary-9fa7f9125946a6222157034fc83fe8e8d79e5fe1.tar.gz |
Revert "Revert "win: Add a API, elm_win_type_get.""
This reverts commit 1fae5b440457948a048007fbb24171f90e6aab30.
sorry i didn't intend reverting this commit.
-rw-r--r-- | src/lib/elm_win.c | 19 | ||||
-rw-r--r-- | src/lib/elm_win_common.h | 1 | ||||
-rw-r--r-- | src/lib/elm_win_eo.h | 13 | ||||
-rw-r--r-- | src/lib/elm_win_legacy.h | 11 |
4 files changed, 44 insertions, 0 deletions
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c index 24476994b..ff4d8dfd5 100644 --- a/src/lib/elm_win.c +++ b/src/lib/elm_win.c @@ -3303,6 +3303,23 @@ _constructor(Eo *obj, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) ERR("only custom constructor can be used with '%s' class", MY_CLASS_NAME); } +EAPI Elm_Win_Type +elm_win_type_get(const Evas_Object *obj) +{ + ELM_WIN_CHECK(obj) ELM_WIN_UNKNOWN; + Elm_Win_Type ret = ELM_WIN_UNKNOWN; + eo_do((Eo *) obj, elm_obj_win_type_get(&ret)); + return ret; +} + +static void +_type_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +{ + Elm_Win_Type *ret = va_arg(*list, Elm_Win_Type *); + Elm_Win_Smart_Data *sd = _pd; + *ret = sd->type; +} + EAPI Evas_Object * elm_win_util_standard_add(const char *name, const char *title) @@ -5898,6 +5915,7 @@ _class_constructor(Eo_Class *klass) EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WIN_CONSTRUCTOR), _win_constructor), EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_ADD), _resize_object_add), EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_DEL), _resize_object_del), + EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TYPE_GET), _type_get), EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TITLE_SET), _title_set), EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TITLE_GET), _title_get), EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICON_NAME_SET), _icon_name_set), @@ -6009,6 +6027,7 @@ static const Eo_Op_Description op_desc[] = { EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WIN_CONSTRUCTOR, "Adds a window object."), EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_ADD, "Add subobj as a resize object of window obj."), EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_DEL, "Delete subobj as a resize object of window obj."), + EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_TYPE_GET, "Get the type of the window."), EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_TITLE_SET, "Set the title of the window."), EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_TITLE_GET, "Get the title of the window."), EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICON_NAME_SET, "Set the icon name of the window."), diff --git a/src/lib/elm_win_common.h b/src/lib/elm_win_common.h index 664b29b87..b5eb567c2 100644 --- a/src/lib/elm_win_common.h +++ b/src/lib/elm_win_common.h @@ -9,6 +9,7 @@ */ typedef enum { + ELM_WIN_UNKNOWN, /**< Unknown window type. */ ELM_WIN_BASIC, /**< A normal window. Indicates a normal, top-level window. Almost every window will be created with this type. */ diff --git a/src/lib/elm_win_eo.h b/src/lib/elm_win_eo.h index 8d9468ca2..8ade15a58 100644 --- a/src/lib/elm_win_eo.h +++ b/src/lib/elm_win_eo.h @@ -14,6 +14,7 @@ enum ELM_OBJ_WIN_SUB_ID_WIN_CONSTRUCTOR, ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_ADD, ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_DEL, + ELM_OBJ_WIN_SUB_ID_TYPE_GET, ELM_OBJ_WIN_SUB_ID_TITLE_SET, ELM_OBJ_WIN_SUB_ID_TITLE_GET, ELM_OBJ_WIN_SUB_ID_ICON_NAME_SET, @@ -156,6 +157,18 @@ enum #define elm_obj_win_resize_object_del(subobj) ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_DEL), EO_TYPECHECK(Evas_Object *, subobj) /** + * @def elm_obj_win_type_get + * @since 1.9 + * + * Get the type of the window + * + * @param[out] ret + * + * @see elm_win_type_get + */ +#define elm_obj_win_type_get(ret) ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TYPE_GET), EO_TYPECHECK(Elm_Win_Type *, ret) + +/** * @def elm_obj_win_title_set * @since 1.8 * diff --git a/src/lib/elm_win_legacy.h b/src/lib/elm_win_legacy.h index 85968a39c..2513357ab 100644 --- a/src/lib/elm_win_legacy.h +++ b/src/lib/elm_win_legacy.h @@ -17,6 +17,17 @@ EAPI Evas_Object *elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type); /** + * Get the type of a window. + * + * @param obj The window object for which it gets the type. + * + * @return The type of a window object. If the object is not window object, return ELM_WIN_UNKNOWN. + * + * @ingroup Win + */ +EAPI Elm_Win_Type elm_win_type_get(const Evas_Object *obj); + +/** * Adds a window object with standard setup * * @param name The name of the window |