From 9cfbad9c22d5219ea7edd92c1c2c7157a556515e Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Fri, 17 Jun 2016 17:09:47 +0900 Subject: [PATCH] c typedef ui_standard_view in order to specify a view type in detail. Change-Id: If7656eaa93d827814940c0315fc6f3b693d9ba73 --- src/examples/efl/c/page1.cpp | 4 +- src/examples/efl/c/page10.cpp | 6 +- src/examples/efl/c/page11.cpp | 4 +- src/examples/efl/c/page12.cpp | 8 +- src/examples/efl/c/page13.cpp | 4 +- src/examples/efl/c/page14.cpp | 4 +- src/examples/efl/c/page15.cpp | 4 +- src/examples/efl/c/page16.cpp | 12 +- src/examples/efl/c/page2.cpp | 4 +- src/examples/efl/c/page3.cpp | 4 +- src/examples/efl/c/page4.cpp | 4 +- src/examples/efl/c/page6.cpp | 4 +- src/examples/efl/c/page7.cpp | 4 +- src/examples/efl/c/page8.cpp | 2 +- src/examples/efl/c/page9.cpp | 8 +- ..._private_view.h => _ui_common_view_capi.h} | 7 +- .../efl/mobile/c/ui_mobile_viewmanager.h | 2 + src/include/efl/mobile/c/ui_standard_view.h | 60 ++++---- src/lib/efl/mobile/c/ui_standard_view.cpp | 136 +++++++++++++----- src/lib/efl/mobile/c/ui_view.cpp | 67 +++++---- 20 files changed, 218 insertions(+), 130 deletions(-) rename src/include/efl/mobile/c/{_ui_private_view.h => _ui_common_view_capi.h} (86%) diff --git a/src/examples/efl/c/page1.cpp b/src/examples/efl/c/page1.cpp index 1a262dc..15c0680 100644 --- a/src/examples/efl/c/page1.cpp +++ b/src/examples/efl/c/page1.cpp @@ -31,7 +31,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view1_load_cb(ui_view *view, void *data) +view1_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -61,7 +61,7 @@ void create_page1() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page10.cpp b/src/examples/efl/c/page10.cpp index 018dd1f..aab36c1 100644 --- a/src/examples/efl/c/page10.cpp +++ b/src/examples/efl/c/page10.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view10_rotate_cb(ui_view *view, int degree, void *data) +view10_rotate_cb(ui_standard_view *view, int degree, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -66,7 +66,7 @@ view10_rotate_cb(ui_view *view, int degree, void *data) } static bool -view10_load_cb(ui_view *view, void *data) +view10_load_cb(ui_standard_view *view, void *data) { return view10_rotate_cb(view, ui_view_degree_get(view), data); } @@ -75,7 +75,7 @@ void create_page10() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; ui_view_event_callback_s event_callback = {0, }; diff --git a/src/examples/efl/c/page11.cpp b/src/examples/efl/c/page11.cpp index c936c9e..968c8f9 100644 --- a/src/examples/efl/c/page11.cpp +++ b/src/examples/efl/c/page11.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view11_load_cb(ui_view *view, void *data) +view11_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -105,7 +105,7 @@ void create_page11() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; ui_view_event_callback_s event_callback = {0, }; diff --git a/src/examples/efl/c/page12.cpp b/src/examples/efl/c/page12.cpp index 1d66685..bd41b2a 100644 --- a/src/examples/efl/c/page12.cpp +++ b/src/examples/efl/c/page12.cpp @@ -54,12 +54,12 @@ popup_dismissed_cb(void *data, Evas_Object *obj, void *event_info) static void view12_btn_clicked(void *data, Evas_Object *obj, void *event_info) { - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_popup *popup = NULL; Evas_Object *base = NULL; Elm_Popup *content = NULL; - view = (ui_view *) data; + view = (ui_standard_view *) data; //Create a popup. if (!(popup = ui_popup_create(view))) @@ -94,7 +94,7 @@ view12_btn_clicked(void *data, Evas_Object *obj, void *event_info) } static bool -view12_load_cb(ui_view *view, void *data) +view12_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -128,7 +128,7 @@ void create_page12() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view diff --git a/src/examples/efl/c/page13.cpp b/src/examples/efl/c/page13.cpp index 3627d36..583ff38 100644 --- a/src/examples/efl/c/page13.cpp +++ b/src/examples/efl/c/page13.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view13_load_cb(ui_view *view, void *data) +view13_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -56,7 +56,7 @@ void create_page13() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page14.cpp b/src/examples/efl/c/page14.cpp index 871c125..9dc68ca 100644 --- a/src/examples/efl/c/page14.cpp +++ b/src/examples/efl/c/page14.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view14_load_cb(ui_view *view, void *data) +view14_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -56,7 +56,7 @@ void create_page14() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page15.cpp b/src/examples/efl/c/page15.cpp index ab6fbfd..59a6f6d 100644 --- a/src/examples/efl/c/page15.cpp +++ b/src/examples/efl/c/page15.cpp @@ -24,7 +24,7 @@ view15_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view15_load_cb(ui_view *view, void *data) +view15_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -57,7 +57,7 @@ void create_page15() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; view = ui_standard_view_create("page15"); diff --git a/src/examples/efl/c/page16.cpp b/src/examples/efl/c/page16.cpp index 568f586..9651b2a 100644 --- a/src/examples/efl/c/page16.cpp +++ b/src/examples/efl/c/page16.cpp @@ -32,33 +32,33 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) static void title_show_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) { - ui_view *view = (ui_view *) data; + ui_standard_view *view = (ui_standard_view *) data; ui_standard_view_title_visible_set(view, true, false); } static void title_hide_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) { - ui_view *view = (ui_view *) data; + ui_standard_view *view = (ui_standard_view *) data; ui_standard_view_title_visible_set(view, false, false); } static void title_show_anim_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) { - ui_view *view = (ui_view *) data; + ui_standard_view *view = (ui_standard_view *) data; ui_standard_view_title_visible_set(view, true, true); } static void title_hide_anim_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) { - ui_view *view = (ui_view *) data; + ui_standard_view *view = (ui_standard_view *) data; ui_standard_view_title_visible_set(view, false, true); } static bool -view16_load_cb(ui_view *view, void *data) +view16_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -84,7 +84,7 @@ void create_page16() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page2.cpp b/src/examples/efl/c/page2.cpp index a07c208..7de98e3 100644 --- a/src/examples/efl/c/page2.cpp +++ b/src/examples/efl/c/page2.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view2_load_cb(ui_view *view, void *data) +view2_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -68,7 +68,7 @@ void create_page2() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page3.cpp b/src/examples/efl/c/page3.cpp index dbe86dc..b3898e6 100644 --- a/src/examples/efl/c/page3.cpp +++ b/src/examples/efl/c/page3.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view3_load_cb(ui_view *view, void *data) +view3_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -60,7 +60,7 @@ void create_page3() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page4.cpp b/src/examples/efl/c/page4.cpp index 58a4921..89b23fa 100644 --- a/src/examples/efl/c/page4.cpp +++ b/src/examples/efl/c/page4.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view4_load_cb(ui_view *view, void *data) +view4_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -62,7 +62,7 @@ void create_page4() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page6.cpp b/src/examples/efl/c/page6.cpp index 934d5f0..6d6b7fc 100644 --- a/src/examples/efl/c/page6.cpp +++ b/src/examples/efl/c/page6.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view6_load_cb(ui_view *view, void *data) +view6_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -63,7 +63,7 @@ void create_page6() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page7.cpp b/src/examples/efl/c/page7.cpp index 35c9fa7..a9bdb40 100644 --- a/src/examples/efl/c/page7.cpp +++ b/src/examples/efl/c/page7.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view7_load_cb(ui_view *view, void *data) +view7_load_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -63,7 +63,7 @@ void create_page7() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; //Create a view. diff --git a/src/examples/efl/c/page8.cpp b/src/examples/efl/c/page8.cpp index 6a76f98..f17ec52 100644 --- a/src/examples/efl/c/page8.cpp +++ b/src/examples/efl/c/page8.cpp @@ -32,7 +32,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) void create_page8() { - ui_view *view = NULL; + ui_standard_view *view = NULL; Evas_Object *base = NULL; Evas_Object *content = NULL; diff --git a/src/examples/efl/c/page9.cpp b/src/examples/efl/c/page9.cpp index 7e14f08..646a1ef 100644 --- a/src/examples/efl/c/page9.cpp +++ b/src/examples/efl/c/page9.cpp @@ -30,7 +30,7 @@ next_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) } static bool -view9_portrait_cb(ui_view *view, void *data) +view9_portrait_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -59,7 +59,7 @@ view9_portrait_cb(ui_view *view, void *data) } static bool -view9_landscape_cb(ui_view *view, void *data) +view9_landscape_cb(ui_standard_view *view, void *data) { Evas_Object *content = NULL; Evas_Object *base = NULL; @@ -86,7 +86,7 @@ view9_landscape_cb(ui_view *view, void *data) } static bool -view9_load_cb(ui_view *view, void *data) +view9_load_cb(ui_standard_view *view, void *data) { //FIXME: Change below code to more convenient and clear way. if (ui_view_degree_get(view) == 90 || ui_view_degree_get(view) == 270) @@ -103,7 +103,7 @@ void create_page9() { int ret = 0; - ui_view *view = NULL; + ui_standard_view *view = NULL; ui_view_lifecycle_callback_s lifecycle_callback = {0, }; ui_view_event_callback_s event_callback = {0, }; diff --git a/src/include/efl/mobile/c/_ui_private_view.h b/src/include/efl/mobile/c/_ui_common_view_capi.h similarity index 86% rename from src/include/efl/mobile/c/_ui_private_view.h rename to src/include/efl/mobile/c/_ui_common_view_capi.h index 68e24f3..c6fb86b 100644 --- a/src/include/efl/mobile/c/_ui_private_view.h +++ b/src/include/efl/mobile/c/_ui_common_view_capi.h @@ -20,21 +20,22 @@ namespace efl_viewmanager { -class ui_view_event_attr +class ui_common_view_capi { public: ui_view_lifecycle_callback_s lifecycle_callback; ui_view_event_callback_s event_callback; void *lifecycle_data; void *event_data; + const char *type; - ui_view_event_attr() : lifecycle_data(NULL), event_data(NULL) + ui_common_view_capi(const char *type) : lifecycle_data(NULL), event_data(NULL), type(type) { this->lifecycle_callback = {0, }; this->event_callback = {0, }; } - ~ui_view_event_attr() + ~ui_common_view_capi() { } }; diff --git a/src/include/efl/mobile/c/ui_mobile_viewmanager.h b/src/include/efl/mobile/c/ui_mobile_viewmanager.h index 02e1dea..33f1a6d 100644 --- a/src/include/efl/mobile/c/ui_mobile_viewmanager.h +++ b/src/include/efl/mobile/c/ui_mobile_viewmanager.h @@ -49,9 +49,11 @@ typedef struct ui_viewmgr_s ui_viewmgr; typedef struct ui_view_s ui_view; +typedef ui_view ui_standard_view; typedef struct ui_menu_s ui_menu; typedef struct ui_popup_s ui_popup; + //FIXME: better way? #include "../../../interface/ui_iface_types.h" diff --git a/src/include/efl/mobile/c/ui_standard_view.h b/src/include/efl/mobile/c/ui_standard_view.h index d1b18bb..6aced02 100644 --- a/src/include/efl/mobile/c/ui_standard_view.h +++ b/src/include/efl/mobile/c/ui_standard_view.h @@ -17,16 +17,16 @@ extern "C" { * * @param name view name * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * * @see ui_view_destroy() */ -ui_view *ui_standard_view_create(const char *name); +ui_standard_view *ui_standard_view_create(const char *name); /** * @brief Replace or set a content of the view. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param content A new content. It allows @c NULL for canceling the previous content. * @param title The label in the title area. The name of the title label part is "elm.text.title". * @param subtitle The label in the subtitle area. The name of the subtitle label part is "elm.text.subtitle". @@ -37,148 +37,148 @@ ui_view *ui_standard_view_create(const char *name); * * @see ui_view_content_get() */ -bool ui_standard_view_content_set(ui_view *view, Evas_Object *content, const char *title, const char *subtitle, Evas_Object *title_left_btn, Evas_Object *title_right_btn); +bool ui_standard_view_content_set(ui_standard_view *view, Evas_Object *content, const char *title, const char *subtitle, Evas_Object *title_left_btn, Evas_Object *title_right_btn); /** * @brief Set a title text. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param text The label in the title area * * @return @c true if it succeeds, @c false otherwise. * * @ui_standard_view_title_get() */ -bool ui_standard_view_title_set(ui_view *view, const char *text); +bool ui_standard_view_title_set(ui_standard_view *view, const char *text); /** * @brief Set a subtitle text. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param text The label in the subtitle area. * * @return @c true if it succeeds, @c false otherwise. * * @see ui_standard_view_sub_title_get() */ -bool ui_standard_view_sub_title_set(ui_view *view, const char *text); +bool ui_standard_view_sub_title_set(ui_standard_view *view, const char *text); /** * @brief Set a title badge text. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param text The label in the title badge area. * * @return @c true if it succeeds, @c false otherwise. * * @see ui_standard_view_title_badge_get() */ -bool ui_standard_view_title_badge_set(ui_view *view, const char *badge_text); +bool ui_standard_view_title_badge_set(ui_standard_view *view, const char *badge_text); /** * @brief Set a title_right_btn. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param title_right_btn The button in the right part of title area. * * @return @c true if it succeeds, @c false otherwise. * * @see ui_standard_view_title_right_btn_get() */ -bool ui_standard_view_title_right_btn_set(ui_view *view, Evas_Object *title_right_btn); +bool ui_standard_view_title_right_btn_set(ui_standard_view *view, Evas_Object *title_right_btn); /** * @brief Return a title right button of the view. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * * @return title right button of the view. * * @see ui_standard_view_title_right_btn_set() */ -Elm_Button *ui_standard_view_title_right_btn_get(ui_view *view); +Elm_Button *ui_standard_view_title_right_btn_get(ui_standard_view *view); /** * @brief Unset a title right button of title area. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @return A previous content. If it wasn't, return @c NULL */ -Elm_Button *ui_standard_view_title_right_btn_unset(ui_view *view); +Elm_Button *ui_standard_view_title_right_btn_unset(ui_standard_view *view); /** * @brief Set a title_left_btn. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param title_left_btn The button in the left part of title area. * * @return @c true if it succeeds, @c false otherwise. * * @see ui_standard_view_title_left_btn_get() */ -bool ui_standard_view_title_left_btn_set(ui_view *view, Evas_Object *title_left_btn); +bool ui_standard_view_title_left_btn_set(ui_standard_view *view, Evas_Object *title_left_btn); /** * @brief Return a title left button of the view. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * * @return title left button of the view * * @see ui_standard_view_title_left_btn_set() */ -Elm_Button *ui_standard_view_title_left_btn_get(ui_view *view); +Elm_Button *ui_standard_view_title_left_btn_get(ui_standard_view *view); /** * @brief Unset a title right button of title area. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * * @return A previous content. If it wasn't, return @c NULL. */ -Elm_Button *ui_standard_view_title_left_btn_unset(ui_view *view); +Elm_Button *ui_standard_view_title_left_btn_unset(ui_standard_view *view); /** * @brief Set a toolbar below title. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param toolbar Toolbar object * * @return @c true if it succeeds, @c false otherwise. * * @see ui_standard_view_toolbar_get() */ -bool ui_standard_view_toolbar_set(ui_view *view, Elm_Toolbar *toolbar); +bool ui_standard_view_toolbar_set(ui_standard_view *view, Elm_Toolbar *toolbar); /** * @brief Return a toolbar of the view. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @return The toolbar of the given @p view. * * @see ui_standard_view_toolbar_set() */ -Elm_Toolbar *ui_standard_view_toolbar_get(ui_view *view); +Elm_Toolbar *ui_standard_view_toolbar_get(ui_standard_view *view); /** * @brief Unset a toolbar. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * * @return A previous content. If it wasn't, return @c NULL. */ -Elm_Toolbar *ui_standard_view_toolbar_unset(ui_view *view); +Elm_Toolbar *ui_standard_view_toolbar_unset(ui_standard_view *view); /** * @brief Control the title visible state. * - * @param view An ui_view instance. + * @param view An ui_standard_view instance. * @param visible title state set as visible if the given param is @c true, otherwise title area set as invisible * @param anim title area will be shown with animation if the given param is @c true, otherwise title area will be shown without animation * * @return @c true if it succeeds, @c false otherwise. */ -bool ui_standard_view_title_visible_set(ui_view *view, bool visible, bool anim); +bool ui_standard_view_title_visible_set(ui_standard_view *view, bool visible, bool anim); #ifdef __cplusplus } diff --git a/src/lib/efl/mobile/c/ui_standard_view.cpp b/src/lib/efl/mobile/c/ui_standard_view.cpp index c7f8ad9..8b6b681 100644 --- a/src/lib/efl/mobile/c/ui_standard_view.cpp +++ b/src/lib/efl/mobile/c/ui_standard_view.cpp @@ -1,11 +1,13 @@ #include "../../../../include/efl/mobile/c/_ui_private.h" #include "../../../../include/efl/mobile/c/ui_view.h" #include "../../../../include/efl/mobile/c/ui_standard_view.h" -#include "../../../../include/efl/mobile/c/_ui_private_view.h" +#include "../../../../include/efl/mobile/c/_ui_common_view_capi.h" using namespace efl_viewmanager; -class ui_standard_view_capi: public ui_standard_view, public ui_view_event_attr +static const char *_this_type = "ui_standard_view"; + +class ui_standard_view_capi: public ui_standard_view, public ui_common_view_capi { public: void on_load() @@ -117,7 +119,7 @@ public: } ui_standard_view_capi(const char *name) - : ui_standard_view(name), ui_view_event_attr() + : ui_standard_view(name), ui_common_view_capi(_this_type) { } @@ -131,190 +133,260 @@ struct ui_standard_view_s ui_standard_view_capi *p; }; -ui_view* ui_standard_view_create(const char *name) +ui_standard_view* ui_standard_view_create(const char *name) { return new ui_standard_view_capi(name); } -bool ui_standard_view_content_set(ui_view *view, Evas_Object *content, const char *title, const char *subtitle, Evas_Object *title_left_btn, +bool ui_standard_view_content_set(ui_standard_view *view, Evas_Object *content, const char *title, const char *subtitle, Evas_Object *title_left_btn, Evas_Object *title_right_btn) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_content(content, title, subtitle, title_left_btn, title_right_btn); } -bool ui_standard_view_title_set(ui_view *view, const char *text) +bool ui_standard_view_title_set(ui_standard_view *view, const char *text) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_title(text); } -bool ui_standard_view_sub_title_set(ui_view *view, const char *text) +bool ui_standard_view_sub_title_set(ui_standard_view *view, const char *text) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_subtitle(text); } -bool ui_standard_view_title_badge_set(ui_view *view, const char *badge_text) +bool ui_standard_view_title_badge_set(ui_standard_view *view, const char *badge_text) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_title_badge(badge_text); } -bool ui_standard_view_title_right_btn_set(ui_view *view, Evas_Object *title_right_btn) +bool ui_standard_view_title_right_btn_set(ui_standard_view *view, Evas_Object *title_right_btn) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_title_right_btn(title_right_btn); } -Elm_Button *ui_standard_view_title_right_btn_get(ui_view *view) +Elm_Button *ui_standard_view_title_right_btn_get(ui_standard_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return NULL; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->get_title_right_btn(); } -Elm_Button *ui_standard_view_title_right_btn_unset(ui_view *view) +Elm_Button *ui_standard_view_title_right_btn_unset(ui_standard_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return NULL; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->unset_title_right_btn(); } -bool ui_standard_view_title_left_btn_set(ui_view *view, Evas_Object *title_left_btn) +bool ui_standard_view_title_left_btn_set(ui_standard_view *view, Evas_Object *title_left_btn) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_title_left_btn(title_left_btn); } -Elm_Button *ui_standard_view_title_left_btn_get(ui_view *view) +Elm_Button *ui_standard_view_title_left_btn_get(ui_standard_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return NULL; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->get_title_left_btn(); } -Elm_Button *ui_standard_view_title_left_btn_unset(ui_view *view) +Elm_Button *ui_standard_view_title_left_btn_unset(ui_standard_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view = NULL"); return NULL; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->unset_title_right_btn(); } -bool ui_standard_view_toolbar_set(ui_view *view, Elm_Toolbar *toolbar) +bool ui_standard_view_toolbar_set(ui_standard_view *view, Elm_Toolbar *toolbar) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_toolbar(toolbar); } -Elm_Toolbar *ui_standard_view_toolbar_get(ui_view *view) +Elm_Toolbar *ui_standard_view_toolbar_get(ui_standard_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view"); return NULL; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->get_toolbar(); } -Elm_Toolbar *ui_standard_view_toolbar_unset(ui_view *view) +Elm_Toolbar *ui_standard_view_toolbar_unset(ui_standard_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view"); return NULL; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->unset_toolbar(); } -bool ui_standard_view_title_visible_set(ui_view *view, bool visible, bool anim) +bool ui_standard_view_title_visible_set(ui_standard_view *view, bool visible, bool anim) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_standard_view"); return false; } ui_standard_view_capi *capi_view = dynamic_cast(view); + if (!capi_view) + { + LOGE("Invalid ui_standard_view = %p. Probably, you passed ui_view, not ui_standard_view.", view); + return false; + } return capi_view->set_title_visible(visible, anim); } diff --git a/src/lib/efl/mobile/c/ui_view.cpp b/src/lib/efl/mobile/c/ui_view.cpp index 7d862e1..ec70e1c 100644 --- a/src/lib/efl/mobile/c/ui_view.cpp +++ b/src/lib/efl/mobile/c/ui_view.cpp @@ -1,10 +1,12 @@ #include "../../../../include/efl/mobile/c/_ui_private.h" #include "../../../../include/efl/mobile/c/ui_view.h" -#include "../../../../include/efl/mobile/c/_ui_private_view.h" +#include "../../../../include/efl/mobile/c/_ui_common_view_capi.h" using namespace efl_viewmanager; -class ui_view_capi: public ui_view, public ui_view_event_attr +static const char *_this_type = "ui_view"; + +class ui_view_capi: public ui_view, public ui_common_view_capi { public: void on_load() @@ -116,7 +118,7 @@ public: } ui_view_capi(const char *name) - : ui_view(name), ui_view_event_attr() + : ui_view(name), ui_common_view_capi(_this_type) { } @@ -130,15 +132,20 @@ struct ui_view_s ui_view_capi *p; }; +ui_view* ui_view_create(const char *name) +{ + return new ui_view_capi(name); +} + bool ui_view_lifecycle_callbacks_set(ui_view *view, ui_view_lifecycle_callback_s *lifecycle_callback, void *data) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } - ui_view_event_attr *event_attr = dynamic_cast(view); + ui_common_view_capi *event_attr = dynamic_cast(view); if (!event_attr) { LOGE("This view(%p) doesn't allow lifecycle callback?!"); @@ -158,11 +165,11 @@ bool ui_view_event_callbacks_set(ui_view *view, ui_view_event_callback_s *event_ { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } - ui_view_event_attr *event_attr = dynamic_cast(view); + ui_common_view_capi *event_attr = dynamic_cast(view); if (!event_attr) { LOGE("This view(%p) doesn't allow event callback?!"); @@ -182,7 +189,7 @@ Evas_Object* ui_view_base_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return NULL; } return view->get_base(); @@ -192,7 +199,7 @@ Evas_Object *ui_view_content_unset(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return NULL; } @@ -203,7 +210,7 @@ void ui_view_indicator_set(ui_view *view, ui_view_indicator indicator) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return; } @@ -214,7 +221,7 @@ ui_view_indicator ui_view_indicator_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return UI_VIEW_INDICATOR_LAST; } @@ -225,7 +232,7 @@ void ui_view_removable_content_set(ui_view *view, bool remove) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return; } @@ -236,7 +243,7 @@ bool ui_view_removable_content_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } @@ -247,7 +254,7 @@ int ui_view_degree_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return -1; } @@ -258,7 +265,7 @@ bool ui_view_transition_style_set(ui_view *view, const char *style) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } @@ -269,7 +276,7 @@ const char *ui_view_transition_style_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return NULL; } @@ -280,7 +287,7 @@ const ui_menu *ui_view_menu_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return NULL; } @@ -291,7 +298,7 @@ bool ui_view_name_set(ui_view *view, const char *name) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } @@ -303,7 +310,7 @@ const char *ui_view_name_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return NULL; } @@ -315,7 +322,7 @@ ui_view_state ui_view_state_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return UI_VIEW_STATE_UNKNOWN; } @@ -326,7 +333,7 @@ Evas_Object *ui_view_content_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return NULL; } @@ -337,24 +344,30 @@ bool ui_view_destroy(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } delete (view); return true; } -ui_view* ui_view_create(const char *name) +bool ui_view_content_set(ui_view *view, Evas_Object *content) { - return new ui_view_capi(name); + if (!view) + { + LOGE("Invalid ui_view = NULL"); + return false; + } + return view->set_content(content); } -bool ui_view_content_set(ui_view *view, Evas_Object *content) +const char *ui_view_type_get(ui_view *view) { if (!view) { - LOGE("Invalid ui_view"); + LOGE("Invalid ui_view = NULL"); return false; } - return view->set_content(content); + + return dynamic_cast(view)->type; } -- 2.34.1