diff options
author | Aleksandr Sapozhnik <a.sapozhnik@samsung.com> | 2017-02-09 16:32:29 +0200 |
---|---|---|
committer | Aleksandr Sapozhnik <a.sapozhnik@samsung.com> | 2017-02-10 08:33:04 +0200 |
commit | 8225e43a1c43f47906c0323319a8f73ac454487f (patch) | |
tree | d4c62870e5044894b9f235eaad63a959450033c4 | |
parent | 68d5a561543311e5ea95b181d597663bf880af14 (diff) | |
download | alarm-8225e43a1c43f47906c0323319a8f73ac454487f.tar.gz alarm-8225e43a1c43f47906c0323319a8f73ac454487f.tar.bz2 alarm-8225e43a1c43f47906c0323319a8f73ac454487f.zip |
Update lib-apps-common
Change-Id: I9b8070c7bd4fec28f76b7b70af229e4a47333398
Signed-off-by: Aleksandr Sapozhnik <a.sapozhnik@samsung.com>
-rw-r--r-- | lib-apps-common/inc/App/AppControlUtils.h | 8 | ||||
-rw-r--r-- | lib-apps-common/inc/Ui/Control.h | 8 | ||||
-rw-r--r-- | lib-apps-common/inc/Ui/GenContainer.h | 3 | ||||
-rw-r--r-- | lib-apps-common/inc/Ui/Window.h | 5 | ||||
-rw-r--r-- | lib-apps-common/src/App/AppControlUtils.cpp | 19 | ||||
-rw-r--r-- | lib-apps-common/src/Ui/TabNavigator.cpp | 1 | ||||
-rw-r--r-- | lib-apps-common/src/Ui/Window.cpp | 6 |
7 files changed, 47 insertions, 3 deletions
diff --git a/lib-apps-common/inc/App/AppControlUtils.h b/lib-apps-common/inc/App/AppControlUtils.h index d0aa1af..d9ac46b 100644 --- a/lib-apps-common/inc/App/AppControlUtils.h +++ b/lib-apps-common/inc/App/AppControlUtils.h @@ -56,6 +56,14 @@ namespace App std::vector<int> EXPORT_API getIntExtraDataArray(app_control_h appControl, const char *key); /** + * @brief Get vector of string values from App Control array extra data. + * @param[in] appControl App Control handle + * @param[in] key Extra data array key + * @return Vector of string values on success, otherwise empty vector. + */ + std::vector<std::string> EXPORT_API getStringExtraDataArray(app_control_h appControl, const char *key); + + /** * @brief Create array of strings of equal size. * @details Both array and strings are created in a contiguous memory * so it can be released all at once. diff --git a/lib-apps-common/inc/Ui/Control.h b/lib-apps-common/inc/Ui/Control.h index 916296e..24481a7 100644 --- a/lib-apps-common/inc/Ui/Control.h +++ b/lib-apps-common/inc/Ui/Control.h @@ -124,9 +124,15 @@ namespace Ui */ virtual void onDestroy() { } + /** + * @brief Untie underlying Evas_Object from this Control. + * @return Underlying Evas_Object. + */ + Evas_Object *resetEvasObject(); + private: void setEvasObject(Evas_Object *object); - Evas_Object *resetEvasObject(); + void destroyEvasObject(); void onTypeCheck(Evas_Object *obj, void *eventInfo); diff --git a/lib-apps-common/inc/Ui/GenContainer.h b/lib-apps-common/inc/Ui/GenContainer.h index ecf50bd..0348fc8 100644 --- a/lib-apps-common/inc/Ui/GenContainer.h +++ b/lib-apps-common/inc/Ui/GenContainer.h @@ -88,9 +88,10 @@ namespace Ui */ void update(const char *parts, int type); - private: + protected: virtual Evas_Object *onCreate(Evas_Object *parent) override; + private: static void onItemSelected(void *data, Evas_Object *obj, Elm_Object_Item *objectItem); static void onItemLongpressed(void *data, Evas_Object *obj, Elm_Object_Item *objectItem); static void onItemRealized(void *data, Evas_Object *obj, Elm_Object_Item *objectItem); diff --git a/lib-apps-common/inc/Ui/Window.h b/lib-apps-common/inc/Ui/Window.h index 7f90d09..8364a89 100644 --- a/lib-apps-common/inc/Ui/Window.h +++ b/lib-apps-common/inc/Ui/Window.h @@ -48,6 +48,11 @@ namespace Ui Evas_Object *getBaseLayout() const; /** + * @return Whether window is in landscape orientation. + */ + bool isLandscape() const; + + /** * @brief Set whether windows supports rotation. * @param[in] isEnabled Whether rotation is enabled */ diff --git a/lib-apps-common/src/App/AppControlUtils.cpp b/lib-apps-common/src/App/AppControlUtils.cpp index ba506c5..574e65b 100644 --- a/lib-apps-common/src/App/AppControlUtils.cpp +++ b/lib-apps-common/src/App/AppControlUtils.cpp @@ -92,6 +92,25 @@ std::vector<int> App::getIntExtraDataArray(app_control_h appControl, const char return result; } +std::vector<std::string> App::getStringExtraDataArray(app_control_h appControl, const char *key) +{ + std::vector<std::string> result; + char **array = nullptr; + int count = 0; + + int err = app_control_get_extra_data_array(appControl, key, &array, &count); + RETVM_IF_ERR(err, result, "app_control_get_extra_data_array() failed."); + result.reserve(count); + + for (int i = 0; i < count; ++i) { + result.push_back(array[i]); + free(array[i]); + } + free(array); + + return result; +} + char **App::createExtraDataArray(size_t dataSize, size_t count) { typedef char ExtraData[dataSize]; diff --git a/lib-apps-common/src/Ui/TabNavigator.cpp b/lib-apps-common/src/Ui/TabNavigator.cpp index 6fe526f..f2d63cc 100644 --- a/lib-apps-common/src/Ui/TabNavigator.cpp +++ b/lib-apps-common/src/Ui/TabNavigator.cpp @@ -15,7 +15,6 @@ */ #include "Ui/TabNavigator.h" -#include "Ui/TabPage.h" #include "Ui/Selector.h" #include <algorithm> diff --git a/lib-apps-common/src/Ui/Window.cpp b/lib-apps-common/src/Ui/Window.cpp index 68763f1..db6f34a 100644 --- a/lib-apps-common/src/Ui/Window.cpp +++ b/lib-apps-common/src/Ui/Window.cpp @@ -53,6 +53,12 @@ Evas_Object *Window::getBaseLayout() const return m_Layout; } +bool Window::isLandscape() const +{ + int rotation = elm_win_rotation_get(getEvasObject()); + return rotation == 90 || rotation == 270; +} + void Window::setRotationEnabled(bool isEnabled) { if (isEnabled) { |