Refactor/Fix cast methods. 73/152973/4 submit/tizen_4.0/20170927.132130
authorDenis Dolzhenko <d.dolzhenko@samsung.com>
Wed, 27 Sep 2017 11:49:02 +0000 (14:49 +0300)
committerDenis Dolzhenko <d.dolzhenko@samsung.com>
Wed, 27 Sep 2017 12:53:26 +0000 (15:53 +0300)
Change-Id: I43edb4b1db743c27b87d1001d6d590064ebe2cc2
Signed-off-by: Denis Dolzhenko <d.dolzhenko@samsung.com>
src/App/src/TaskListView.cpp
src/Common/inc/View.h
src/Common/src/View.cpp

index d53e892..2a08663 100644 (file)
@@ -109,7 +109,7 @@ TaskListViewItem *TaskListView::getCurrentPage() const
                int i = getCurrentPageIndex() + 1; // left padding
                int count = eina_list_count(list) - 1; // right padding
                if (i >=0 && i < count)
-                       res = staticCast<TaskListViewItem*>(eina_list_nth(list, i));
+                       res = staticCast<TaskListViewItem>(eina_list_nth(list, i));
        }
 
        return res;
@@ -143,7 +143,7 @@ std::vector<TaskListViewItem*> TaskListView::getItems() const
                        if (obj == m_LeftPadding || obj == m_RightPadding)
                                continue;
 
-                       res.push_back(staticCast<TaskListViewItem*>(obj));
+                       res.push_back(staticCast<TaskListViewItem>(obj));
                }
 
                eina_list_free(list);
index fe41713..4c71cdf 100644 (file)
@@ -233,11 +233,9 @@ namespace TaskMngr {
                        void addSignalCb(const char *emission, const char *source, Edje_Signal_Cb func, void *data);
 
                        template<typename T>
-                       static T staticCast(void *evasObj);
+                       static T* staticCast(const void *evasObj);
                        template<typename T>
-                       static T reinterpretCast(void *evasObj);
-                       template<typename T>
-                       static T dynamicCast(void *evasObj);
+                       static T* dynamicCast(const void *evasObj);
 
                        /**
                         * @brief Gets text placed in specified part.
@@ -311,10 +309,7 @@ namespace TaskMngr {
                        View(View&) = delete;
                        View& operator=(View&) = delete;
                        Evas_Object_Event_Cb getCb(Evas_Callback_Type);
-                       void *getData() const;
-                       static void *getData(Evas_Object *obj);
-                       void setData(const void *data);
-                       static void setData(Evas_Object *obj, const void *data);
+                       static View *getThis(const Evas_Object *obj);
 
                private:
                        static void on_free_cb(void *data, Evas *e, Evas_Object *obj, void *event_info);
@@ -482,32 +477,16 @@ namespace TaskMngr {
                return evas_object_data_get(m_pEo, key);
        }
 
-       inline void View::setData(const void *data)
-       {
-               setData(m_pEo, data);
-       }
-
-       inline void *View::getData() const
-       {
-               return getData(m_pEo);
-       }
-
-       template<typename T>
-       inline T View::staticCast(void *evasObj)
-       {
-               return static_cast<T>(getData((Evas_Object*)evasObj));
-       }
-
        template<typename T>
-       inline T View::reinterpretCast(void *evasObj)
+       inline T* View::staticCast(const void *evasObj)
        {
-               return reinterpret_cast<T>(getData((Evas_Object*)evasObj));
+               return static_cast<T*>(getThis((Evas_Object*)evasObj));
        }
 
        template<typename T>
-       inline T View::dynamicCast(void *evasObj)
+       inline T* View::dynamicCast(const void *evasObj)
        {
-               return dynamic_cast<T>(staticCast<View*>(evasObj));
+               return dynamic_cast<T*>(staticCast<View*>(evasObj));
        }
 
        inline void View::addEventCb(Evas_Callback_Type type, Evas_Object_Event_Cb func, const void *data)
index c53ff06..d7cc685 100644 (file)
@@ -69,7 +69,7 @@ void View::setEo(Evas_Object *eo)
        BaseView::setEo(eo);
 
        if (eo) {
-               setData(this);
+               evas_object_data_set(eo, thisKey, this);
                setEventCb(EVAS_CALLBACK_FREE);
                setEventCb(EVAS_CALLBACK_DEL);
        }
@@ -139,14 +139,9 @@ Evas_Object *View::addLayout(Evas_Object *parent, const std::string &edjeName, c
        return layout;
 }
 
-void View::setData(Evas_Object *obj, const void *data)
+View *View::getThis(const Evas_Object *obj)
 {
-       evas_object_data_set(obj, thisKey, (void*)data);
-}
-
-void *View::getData(Evas_Object *obj)
-{
-       return evas_object_data_get(obj, thisKey);
+       return static_cast<View*>(evas_object_data_get(obj, thisKey));
 }
 
 std::string TaskMngr::markupToUtf8(const char *str)