Update UCL library 95/126995/1
authorIgor Olshevskyi <i.olshevskyi@samsung.com>
Tue, 25 Apr 2017 12:24:53 +0000 (15:24 +0300)
committerIgor Olshevskyi <i.olshevskyi@samsung.com>
Tue, 25 Apr 2017 12:25:38 +0000 (15:25 +0300)
Change-Id: I160479f55ef886cd3b12e4ddaf76957311ca68a4

111 files changed:
ucl/inc/ucl/appfw/IInstance.h
ucl/inc/ucl/appfw/IInstanceAppControlExt.h
ucl/inc/ucl/appfw/IInstanceContext.h
ucl/inc/ucl/appfw/InstanceManagerBase.h
ucl/inc/ucl/appfw/SysEventProvider.h
ucl/inc/ucl/appfw/SysEventProvider.hpp
ucl/inc/ucl/appfw/UIApp.h
ucl/inc/ucl/appfw/types.h
ucl/inc/ucl/config.h
ucl/inc/ucl/gui/EdjeWidget.h
ucl/inc/ucl/gui/EdjeWidget.hpp
ucl/inc/ucl/gui/ElmWidget.h
ucl/inc/ucl/gui/ElmWidget.hpp
ucl/inc/ucl/gui/Layout.h
ucl/inc/ucl/gui/Layout.hpp
ucl/inc/ucl/gui/NaviItem.h
ucl/inc/ucl/gui/NaviItem.hpp
ucl/inc/ucl/gui/Naviframe.h
ucl/inc/ucl/gui/Naviframe.hpp
ucl/inc/ucl/gui/StyledWidget.h
ucl/inc/ucl/gui/StyledWidget.hpp
ucl/inc/ucl/gui/Widget.h
ucl/inc/ucl/gui/Widget.hpp
ucl/inc/ucl/gui/WidgetItem.h
ucl/inc/ucl/gui/WidgetItem.hpp
ucl/inc/ucl/gui/Window.h
ucl/inc/ucl/gui/Window.hpp
ucl/inc/ucl/gui/helpers.h
ucl/inc/ucl/gui/helpers.hpp
ucl/inc/ucl/gui/stdTheme.h
ucl/inc/ucl/gui/stdTheme/common.h
ucl/inc/ucl/gui/stdTheme/layout.h
ucl/inc/ucl/gui/stdTheme/naviframe.h [new file with mode: 0644]
ucl/inc/ucl/gui/types.h
ucl/inc/ucl/gui/types.hpp
ucl/inc/ucl/misc/Aspect.h
ucl/inc/ucl/misc/Aspect.hpp
ucl/inc/ucl/misc/Event.h
ucl/inc/ucl/misc/Event.hpp
ucl/inc/ucl/misc/HashMap.h
ucl/inc/ucl/misc/HashMap.hpp
ucl/inc/ucl/misc/RefCountAware.h
ucl/inc/ucl/misc/RefCountAware.hpp
ucl/inc/ucl/misc/TString.h
ucl/inc/ucl/misc/TString.hpp
ucl/inc/ucl/misc/Variant.h
ucl/inc/ucl/misc/Variant.hpp
ucl/inc/ucl/misc/smartDelegation.h
ucl/inc/ucl/misc/smartDelegation/WeakDelegate.h
ucl/inc/ucl/misc/smartDelegation/WeakDelegate.hpp
ucl/inc/ucl/misc/smartDelegation/macro.h
ucl/inc/ucl/misc/smartDelegation/shortMacro.h
ucl/inc/ucl/util/delegation.h
ucl/inc/ucl/util/delegation/BaseDelegate.h
ucl/inc/ucl/util/delegation/BaseDelegate.hpp
ucl/inc/ucl/util/delegation/BaseDelegate2.h
ucl/inc/ucl/util/delegation/BaseDelegate2.hpp
ucl/inc/ucl/util/delegation/Callback.h
ucl/inc/ucl/util/delegation/Callback.hpp
ucl/inc/ucl/util/delegation/Delegate.h
ucl/inc/ucl/util/delegation/Delegate.hpp
ucl/inc/ucl/util/delegation/Delegate2.h
ucl/inc/ucl/util/delegation/Delegate2.hpp
ucl/inc/ucl/util/delegation/helpers.h
ucl/inc/ucl/util/delegation/macro.h
ucl/inc/ucl/util/delegation/shortMacro.h
ucl/inc/ucl/util/helpers.h
ucl/inc/ucl/util/helpers.hpp
ucl/inc/ucl/util/logging.h
ucl/inc/ucl/util/memory.h
ucl/inc/ucl/util/memory/BaseRef.h
ucl/inc/ucl/util/memory/BaseRef.hpp
ucl/inc/ucl/util/memory/RefCountObj.h
ucl/inc/ucl/util/memory/RefCountObj.hpp
ucl/inc/ucl/util/memory/RefCountObjBase.h
ucl/inc/ucl/util/memory/RefCountObjBase.hpp
ucl/inc/ucl/util/memory/SharedRef.h
ucl/inc/ucl/util/memory/SharedRef.hpp
ucl/inc/ucl/util/memory/WeakRef.h
ucl/inc/ucl/util/memory/WeakRef.hpp
ucl/inc/ucl/util/memory/helpers.h
ucl/inc/ucl/util/memory/macro.h
ucl/inc/ucl/util/shortLogs.h
ucl/inc/ucl/util/threading.h
ucl/inc/ucl/util/threading/CondVar.h
ucl/inc/ucl/util/threading/CondVar.hpp
ucl/inc/ucl/util/threading/Mutex.h
ucl/inc/ucl/util/threading/Mutex.hpp
ucl/inc/ucl/util/threading/MutexLock.h
ucl/inc/ucl/util/threading/MutexLock.hpp
ucl/inc/ucl/util/threading/Thread.h
ucl/inc/ucl/util/threading/Thread.hpp
ucl/inc/ucl/util/types.h
ucl/inc/ucl/util/types/Result.h
ucl/inc/ucl/util/types/Result.hpp
ucl/inc/ucl/util/types/baseTypes.h
ucl/inc/ucl/util/types/classTypes.h
ucl/src/appfw/InstanceManagerBase.cpp
ucl/src/appfw/SysEventProvider.cpp
ucl/src/appfw/UIApp.cpp
ucl/src/common.h
ucl/src/gui/EdjeWidget.cpp
ucl/src/gui/ElmWidget.cpp
ucl/src/gui/Layout.cpp
ucl/src/gui/Naviframe.cpp
ucl/src/gui/Widget.cpp
ucl/src/gui/WidgetItem.cpp
ucl/src/gui/Window.cpp
ucl/src/misc/Variant.cpp
ucl/src/util/logging.cpp
ucl/src/util/types/Result.cpp

index dc94d906e1f8e0c7053f90a4d226bb41d752a13c..bf0920538fee9b3e3a0c3db737e26051b7c76b21 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_I_INSTANCE_H__
 #define __UCL_APPFW_I_INSTANCE_H__
 
index da05a7fff81f2a927db44b0dd5460c638cb5aa4a..6799a84c865ee816e0db27b5f6fd02e2bbb3053b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_I_INSTANCE_APP_CONTROL_EXT_H__
 #define __UCL_APPFW_I_INSTANCE_APP_CONTROL_EXT_H__
 
index 59765ebd158aaae571d7eabe28312fc34994e137..b06c1774d24a97cb74ba2f4da6aba47647aa0b99 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_I_INSTANCE_CONTEXT_H__
 #define __UCL_APPFW_I_INSTANCE_CONTEXT_H__
 
index af161bdf6242d7152e363d5d24bfea7b5cd7256c..0fdde8ca7d37512d7b308d7ef4654bc447ba8cee 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_INSTANCE_MANAGER_BASE_H__
 #define __UCL_APPFW_INSTANCE_MANAGER_BASE_H__
 
index 8223ffe77f903d1dd2b9df8090453e78ddfc5123..68539b3f3fa2cac341583f3931200d69028ce918 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_SYS_EVENT_PROVIDER_H__
 #define __UCL_APPFW_SYS_EVENT_PROVIDER_H__
 
index 8d6708f159b02f3f9e5005dbff19edc6e2432573..867e62f9226b5c257a8594a7ee949723b9fa1e6e 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline void SysEventProvider::addEventHandler(SysEventHandler handler)
index 417fc3521396fe12cd2564a0a7a2c7d9fe3472e9..f482ce43c11ee72e82a9afb703854bd57ace1965 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_UI_APP_H__
 #define __UCL_APPFW_UI_APP_H__
 
index 17f5b6e42d36f1bf87142789773b947d579974cc..bb7c740af19aa1c6d82f14762fceedb5fb257d15 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_APPFW_TYPES_H__
 #define __UCL_APPFW_TYPES_H__
 
index 7b4254418697dd585637bc2e0c4d51a6be5aec33..cd36042a46cf99cc594a3743b296969cdc3c86f8 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_CONFIG_H__
 #define __UCL_CONFIG_H__
 
index d89747dc216f9014d1a8348a300a0e4045486570..8d20b50ab17e3f54e70f97e84452785d2ee210b3 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_EDJE_WIDGET_H__
 #define __UCL_GUI_EDJE_WIDGET_H__
 
@@ -10,20 +26,21 @@ namespace ucl {
        class EdjeWidget : public ElmWidget {
        public:
                void setText(const TString &value);
-               void setText(EdjePart part, const TString &value);
+               void setText(const TString &value, EdjePart part);
 
                TString getText() const;
                TString getText(EdjePart part) const;
 
                void setContent(Evas_Object *content);
-               void setContent(EdjePart part, Evas_Object *content);
+               void setContent(Evas_Object *content, EdjePart part);
                Evas_Object *unsetContent();
                Evas_Object *unsetContent(EdjePart part);
 
                Evas_Object *getContent() const;
                Evas_Object *getContent(EdjePart part) const;
 
-               void emitSignal(EdjeSignal signal, EdjeSignalSrc source);
+               void emit(EdjeSignal signal, EdjeSignalSrc source =
+                               EdjeSignalSrc(""));
 
        protected:
                EdjeWidget(RefCountObjBase *rc, Evas_Object *eo, bool isOwner = false);
index 7105fcce9cad1c69bbb91178719214f1a496c71c..5197f592f690d080f8d695f2f1ddb0ea99294cdd 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline EdjeWidget::EdjeWidget(RefCountObjBase *const rc,
@@ -21,8 +37,8 @@ namespace ucl {
                elm_object_content_set(getEo(), content);
        }
 
-       inline void EdjeWidget::setContent(const EdjePart part,
-                       Evas_Object *const content)
+       inline void EdjeWidget::setContent(Evas_Object *const content,
+                       const EdjePart part)
        {
                elm_object_part_content_set(getEo(), part.name, content);
        }
@@ -47,7 +63,7 @@ namespace ucl {
                return elm_object_part_content_get(getEo(), part.name);
        }
 
-       inline void EdjeWidget::emitSignal(const EdjeSignal signal,
+       inline void EdjeWidget::emit(const EdjeSignal signal,
                        const EdjeSignalSrc source)
        {
                elm_object_signal_emit(getEo(), signal.name, source.name);
index b0df1ad6d4cd5b44e68d0673672b8fb0a04b0ab4..9c03011a06bfa723b8b636d240000bbdfff07115 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_ELM_WIDGET_H__
 #define __UCL_GUI_ELM_WIDGET_H__
 
index 814b2587fa6e13d332e4c6d40fe277776dcd84d9..8d0e1abb4161d06f554926dcaa762e937045a4b1 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline void ElmWidget::setEnabled(const bool value)
index 80f3f2656734f43503f47417a6e96a41963cddf6..0df33ab2e52d226008d334ba9812ef5148663eca 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_LAYOUT_H__
 #define __UCL_GUI_LAYOUT_H__
 
@@ -33,7 +49,7 @@ namespace ucl {
                bool setTheme(const LayoutTheme &theme);
                bool setEdjeFile(const std::string &filePath, EdjeGroup group);
 
-               Variant getEdjeData(EdjeDataKey key);
+               Variant getData(EdjeDataKey key);
        };
 }
 
index 3516b4a987503d3a00f6a216ac5576cea3074612..e3df1dbbf69d4379e333f26282aac08fb16bcd57 100644 (file)
@@ -1,10 +1,26 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        // Layout::Builder //
 
        inline Layout::Builder::Builder() :
                m_isOwner(false),
-               m_needBindToEo(true)
+               m_needBindToEo(false)
        {
        }
 
@@ -53,7 +69,7 @@ namespace ucl {
                return elm_layout_file_set(getEo(), filePath.c_str(), group.name);
        }
 
-       inline Variant Layout::getEdjeData(EdjeDataKey key)
+       inline Variant Layout::getData(EdjeDataKey key)
        {
                return elm_layout_data_get(getEo(), key);
        }
index 6b3bd6a6ed6f35fcb04b06e4756b9a3ac23c5206..1161847002ea8f94e8752deea29fd01b0cc1f0e0 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_NAVI_ITEM_H__
 #define __UCL_GUI_NAVI_ITEM_H__
 
index ef60d29d48f26d2c1778da7c1825cc4dfba213ce..6b33fe45f695532b8ae68dbf686fb4dcd1821edf 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline void NaviItem::setPopHandler(const PopHandler &handler) const
index b516813794ddac8c3e1a65b17d007341b41b1b8f..73c1d51db615e5348b534e0a344ebb691d5d758b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_NAVIFRAME_H__
 #define __UCL_GUI_NAVIFRAME_H__
 
@@ -19,18 +35,14 @@ namespace ucl {
                public:
                        Builder();
                        Builder &setStyle(ElmStyle value);
-                       Builder &setIsOwner(bool value);
                        Builder &setNeedBindToEo(bool value);
                        NaviframeSRef build(Widget &parent) const;
                private:
                        ElmStyle m_style;
-                       bool m_isOwner;
                        bool m_needBindToEo;
                };
 
        public:
-               using StyledWidget::StyledWidget;
-
                bool isInTransition() const;
 
                void setAutoBackBtn(bool value);
@@ -44,26 +56,28 @@ namespace ucl {
 
                Evas_Object *pop();
 
-               NaviItem push(const TString &title, Evas_Object *backBtn,
-                               Evas_Object *moreBtn, Evas_Object *content, ElmStyle style);
-               NaviItem push(const TString &title, Evas_Object *content);
-               NaviItem push(Evas_Object *content);
+               NaviItem push(const TString &title,
+                               Evas_Object *backBtn, Evas_Object *moreBtn,
+                               Evas_Object *content, ElmStyle style = nullptr);
+               NaviItem push(const TString &title,
+                               Evas_Object *content, ElmStyle style = nullptr);
+               NaviItem push(Evas_Object *content, ElmStyle style = nullptr);
 
                NaviItem insertAfter(NaviItem after, const TString &title,
                                Evas_Object *backBtn, Evas_Object *moreBtn,
-                               Evas_Object *content, ElmStyle style);
+                               Evas_Object *content, ElmStyle style = nullptr);
                NaviItem insertAfter(NaviItem after, const TString &title,
-                               Evas_Object *content);
+                               Evas_Object *content, ElmStyle style = nullptr);
                NaviItem insertAfter(NaviItem after,
-                               Evas_Object *content);
+                               Evas_Object *content, ElmStyle style = nullptr);
 
                NaviItem insertBefore(NaviItem before, const TString &title,
                                Evas_Object *backBtn, Evas_Object *moreBtn,
-                               Evas_Object *content, ElmStyle style);
+                               Evas_Object *content, ElmStyle style = nullptr);
                NaviItem insertBefore(NaviItem before, const TString &title,
-                               Evas_Object *content);
+                               Evas_Object *content, ElmStyle style = nullptr);
                NaviItem insertBefore(NaviItem before,
-                               Evas_Object *content);
+                               Evas_Object *content, ElmStyle style = nullptr);
 
                NaviItem getTopItem()const;
                NaviItem getBottomItem() const;
index e6d68bf52d4b4d9a29e47974904517e7b6923392..4c56f4adc8c044362ed285ec9486ffba909ec7e4 100644 (file)
@@ -1,9 +1,24 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        // Naviframe::Builder //
 
        inline Naviframe::Builder::Builder() :
-               m_isOwner(false),
                m_needBindToEo(true)
        {
        }
@@ -15,12 +30,6 @@ namespace ucl {
                return *this;
        }
 
-       inline Naviframe::Builder &Naviframe::Builder::setIsOwner(const bool value)
-       {
-               m_isOwner = value;
-               return *this;
-       }
-
        inline Naviframe::Builder &Naviframe::Builder::setNeedBindToEo(
                        const bool value)
        {
@@ -68,7 +77,7 @@ namespace ucl {
        inline Evas_Object *Naviframe::pop()
        {
                auto result = elm_naviframe_item_pop(getEo());
-               if (isValid(getBottomItem())) {
+               if (getBottomItem()) {
                        startTransition();
                }
                return result;
@@ -88,14 +97,15 @@ namespace ucl {
        }
 
        inline NaviItem Naviframe::push(const TString &title,
-                       Evas_Object *const content)
+                       Evas_Object *const content, const ElmStyle style)
        {
-               return push(title, nullptr, nullptr, content, nullptr);
+               return push(title, nullptr, nullptr, content, style);
        }
 
-       inline NaviItem Naviframe::push(Evas_Object *const content)
+       inline NaviItem Naviframe::push(
+                       Evas_Object *const content, const ElmStyle style)
        {
-               return push(nullptr, nullptr, nullptr, content, nullptr);
+               return push(nullptr, nullptr, nullptr, content, style);
        }
 
        inline NaviItem Naviframe::insertAfter(NaviItem after,
@@ -110,15 +120,16 @@ namespace ucl {
        }
 
        inline NaviItem Naviframe::insertAfter(NaviItem after,
-                       const TString &title, Evas_Object *const content)
+                       const TString &title,
+                       Evas_Object *const content, const ElmStyle style)
        {
-               return insertAfter(after, title, nullptr, nullptr, content, nullptr);
+               return insertAfter(after, title, nullptr, nullptr, content, style);
        }
 
        inline NaviItem Naviframe::insertAfter(NaviItem after,
-                       Evas_Object *const content)
+                       Evas_Object *const content, const ElmStyle style)
        {
-               return insertAfter(after, nullptr, nullptr, nullptr, content, nullptr);
+               return insertAfter(after, nullptr, nullptr, nullptr, content, style);
        }
 
        inline NaviItem Naviframe::insertBefore(NaviItem before,
@@ -133,15 +144,16 @@ namespace ucl {
        }
 
        inline NaviItem Naviframe::insertBefore(NaviItem before,
-                       const TString &title, Evas_Object *const content)
+                       const TString &title,
+                       Evas_Object *const content, const ElmStyle style)
        {
-               return insertAfter(before, title, nullptr, nullptr, content, nullptr);
+               return insertAfter(before, title, nullptr, nullptr, content, style);
        }
 
        inline NaviItem Naviframe::insertBefore(NaviItem before,
-                       Evas_Object *const content)
+                       Evas_Object *const content, const ElmStyle style)
        {
-               return insertAfter(before, nullptr, nullptr, nullptr, content, nullptr);
+               return insertAfter(before, nullptr, nullptr, nullptr, content, style);
        }
 
        inline NaviItem Naviframe::getTopItem()const
index 4b8a74c421babccf0bdfe80b023dd178ccd62d37..ad995c1f93d439070513b4f273197e183ca6359f 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_STYLED_WIDGET_H__
 #define __UCL_GUI_STYLED_WIDGET_H__
 
index 033b2aa50f17c92489fa625d0bb35bcf9512c425..cb32329231647ff6ab4e51dd4179b7e524ae0cd4 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline StyledWidget::StyledWidget(
index d197f80ea7dc8724b2691e502c198dce12c2ea55..9f74259e2820fdddc7800dc5236d68b20da1cd04 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_WIDGET_H__
 #define __UCL_GUI_WIDGET_H__
 
@@ -43,7 +59,7 @@ namespace ucl {
                void delEventHandler(WidgetEvent event, WidgetEventHandler handler);
                void delEventHandler(SmartEvent event, WidgetEventHandler handler);
 
-               void callSmartEvent(SmartEvent event, void *eventInfo = nullptr);
+               void callEvent(SmartEvent event, void *eventInfo = nullptr);
 
                void markForDeletion();
 
@@ -137,6 +153,9 @@ namespace ucl {
        void expand(Widget &widget);
        void fill(Widget &widget);
        void expandAndFill(Widget &widget);
+
+       bool operator==(const Widget &lhs, const Widget &rhs);
+       bool operator!=(const Widget &lhs, const Widget &rhs);
 }
 
 #include "Widget.hpp"
index 301dbf9610a620ee37b9d9299bfd564df6a3e832..95da66ac6dcc534b5a57585c3f9ee2fb39070c0a 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl { namespace { namespace impl {
 
        constexpr auto WIDGET_DATA_NAME = "__WIDGET_DATA_NAME__";
@@ -58,7 +74,7 @@ namespace ucl {
                return evas_object_data_get(getEo(), key.name);
        }
 
-       inline void Widget::callSmartEvent(SmartEvent event, void *eventInfo)
+       inline void Widget::callEvent(SmartEvent event, void *eventInfo)
        {
                evas_object_smart_callback_call(getEo(), event, eventInfo);
        }
@@ -245,4 +261,14 @@ namespace ucl {
                expand(widget);
                fill(widget);
        }
+
+       inline bool operator==(const Widget &lhs, const Widget &rhs)
+       {
+               return (lhs.getEo() == rhs.getEo());
+       }
+
+       inline bool operator!=(const Widget &lhs, const Widget &rhs)
+       {
+               return (lhs.getEo() != rhs.getEo());
+       }
 }
index 16a27516e28f6908d904acf95dc63561c4594749..edef5e935a446ef42eb250de563ec17e526ef74a 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_WIDGET_ITEM_H__
 #define __UCL_GUI_WIDGET_ITEM_H__
 
@@ -14,6 +30,7 @@ namespace ucl {
                Elm_Object_Item *getIt() const;
 
                operator Elm_Object_Item *() const;
+               operator bool() const;
 
                Evas_Object *getWidget() const;
 
@@ -27,21 +44,24 @@ namespace ucl {
                void setEnabled(bool value) const;
                bool isEnabled() const;
 
+               void setStyle(ElmStyle style) const;
+
                void setText(const TString &value) const;
-               void setText(EdjePart part, const TString &value) const;
+               void setText(const TString &value, EdjePart part) const;
 
                TString getText() const;
                TString getText(EdjePart part) const;
 
                void setContent(Evas_Object *content) const;
-               void setContent(EdjePart part, Evas_Object *content) const;
+               void setContent(Evas_Object *content, EdjePart part) const;
                Evas_Object *unsetContent() const;
                Evas_Object *unsetContent(EdjePart part) const;
 
                Evas_Object *getContent() const;
                Evas_Object *getContent(EdjePart part) const;
 
-               void emitSignal(EdjeSignal signal, EdjeSignalSrc source) const;
+               void emit(EdjeSignal signal,EdjeSignalSrc source =
+                               EdjeSignalSrc("")) const;
 
        private:
                Elm_Object_Item *m_it;
@@ -52,8 +72,6 @@ namespace ucl {
        void enable(WidgetItem item);
        void disable(WidgetItem item);
 
-       bool isValid(WidgetItem item);
-
        bool operator==(WidgetItem lhs, WidgetItem rhs);
        bool operator!=(WidgetItem lhs, WidgetItem rhs);
 }
index ef2badc6bd13f39888395c8e618ed862bc0f935e..9880816cbb53751f00a999cb60b503a2a5f61d3d 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        constexpr WidgetItem::WidgetItem() :
@@ -25,6 +41,11 @@ namespace ucl {
                return m_it;
        }
 
+       inline WidgetItem::operator bool() const
+       {
+               return !!m_it;
+       }
+
        inline Evas_Object *WidgetItem::getWidget() const
        {
                return elm_object_item_widget_get(getIt());
@@ -61,6 +82,11 @@ namespace ucl {
                return (elm_object_item_disabled_get(getIt()) ? false : true);
        }
 
+       inline void WidgetItem::setStyle(const ElmStyle style) const
+       {
+               elm_object_item_style_set(getIt(), style.name);
+       }
+
        inline TString WidgetItem::getText() const
        {
                return elm_object_item_text_get(getIt());
@@ -76,8 +102,8 @@ namespace ucl {
                elm_object_item_content_set(getIt(), content);
        }
 
-       inline void WidgetItem::setContent(const EdjePart part,
-                       Evas_Object *const content) const
+       inline void WidgetItem::setContent(Evas_Object *const content,
+                       const EdjePart part) const
        {
                elm_object_item_part_content_set(getIt(), part.name, content);
        }
@@ -102,7 +128,7 @@ namespace ucl {
                return elm_object_item_part_content_get(getIt(), part.name);
        }
 
-       inline void WidgetItem::emitSignal(const EdjeSignal signal,
+       inline void WidgetItem::emit(const EdjeSignal signal,
                        const EdjeSignalSrc source) const
        {
                elm_object_item_signal_emit(getIt(), signal.name, source.name);
@@ -120,11 +146,6 @@ namespace ucl {
                item.setEnabled(false);
        }
 
-       inline bool isValid(const WidgetItem item)
-       {
-               return !!item.getIt();
-       }
-
        inline bool operator==(const WidgetItem lhs, const WidgetItem rhs)
        {
                return (lhs.getIt() == rhs.getIt());
index d26dfaf21d46c3b4eaae46234886924b0964585d..8e526b4d49c85fddc95bfdbf84dc3350bdc746c2 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_WINDOW_H__
 #define __UCL_GUI_WINDOW_H__
 
@@ -50,6 +66,8 @@ namespace ucl {
                StyledWidget &getConformant();
                const StyledWidget &getConformant() const;
 
+               void getScreenSize(int *w, int *h) const;
+
                void setTitle(const std::string &title);
                std::string getTitle() const;
 
index eece848b56386fb39f9a85777e60287fae410b5e..3d4c959a4c20870c8dcdd8a24ef2ccd749153350 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include <algorithm>
 
 namespace ucl {
@@ -85,6 +101,11 @@ namespace ucl {
                return m_conform;
        }
 
+       inline void Window::getScreenSize(int *const w, int *const h) const
+       {
+               elm_win_screen_size_get(getEo(), nullptr, nullptr, w, h);
+       }
+
        inline void Window::setTitle(const std::string &title)
        {
                elm_win_title_set(getEo(), title.c_str());
@@ -92,7 +113,7 @@ namespace ucl {
 
        inline std::string Window::getTitle() const
        {
-               return elm_win_title_get(getEo());
+               return nz(elm_win_title_get(getEo()));
        }
 
        inline void Window::setIndicatorVisible(bool value)
index 68c9ff6ecd00205cc1ff64fa37cc355073c05bd8..f598c17ff19c6c7f9eabb8dcc9b28100c998a248 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_HELPERS_H__
 #define __UCL_GUI_HELPERS_H__
 
index abe3cf6b2242dc308ae850a4e6f07fd2418fd0f2..29df283799ae8e6a56229749612baf761ffd446b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline Widget *asWidget(Evas_Object *eo)
index ad77e4a9ce1f9e28bdf20459f03f6d03b06da252..13202cc66e3792f90cdcd7cc6177ca52396c5a6e 100644 (file)
@@ -1,7 +1,24 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_STD_THEME_H__
 #define __UCL_GUI_STD_THEME_H__
 
 #include "stdTheme/common.h"
 #include "stdTheme/layout.h"
+#include "stdTheme/naviframe.h"
 
 #endif // __UCL_GUI_STD_THEME_H__
index 5fbdb0b67b05c73103ec8589987032971ab86fed..7ec81b96bd6092451fc526e3f82f44c956000bf9 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_STD_THEME_COMMON_H__
 #define __UCL_GUI_STD_THEME_COMMON_H__
 
@@ -11,8 +27,12 @@ namespace ucl {
 
        // Parts //
 
-       constexpr EdjePart PART_TEXT    {"elm.text"};
+       constexpr EdjePart PART_TEXT  {"elm.text"};
+       constexpr EdjePart PART_TITLE {"elm.text.title"};
+
        constexpr EdjePart PART_CONTENT {"elm.swallow.content"};
+       constexpr EdjePart PART_ICON    {"elm.swallow.icon"};
+       constexpr EdjePart PART_BUTTON  {"elm.swallow.button"};
 }
 
 #endif // __UCL_GUI_STD_THEME_COMMON_H__
index 6f4144e53b4173162beafc6ac1361950aea784c5..79ff4267387c759189a996ae56f3add5cae9dbb4 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_STD_THEME_LAYOUT_H__
 #define __UCL_GUI_STD_THEME_LAYOUT_H__
 
@@ -6,6 +22,9 @@
 namespace ucl {
 
        constexpr LayoutTheme LAYOUT_DEFAULT {"layout", "application", "default"};
+
+       constexpr LayoutTheme LAYOUT_NO_CONTENTS
+                       {"layout", "nocontents", "default"};
 }
 
 #endif // __UCL_GUI_STD_THEME_LAYOUT_H__
diff --git a/ucl/inc/ucl/gui/stdTheme/naviframe.h b/ucl/inc/ucl/gui/stdTheme/naviframe.h
new file mode 100644 (file)
index 0000000..fd99fdc
--- /dev/null
@@ -0,0 +1,27 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef __UCL_GUI_STD_THEME_NAVIFRAME_H__
+#define __UCL_GUI_STD_THEME_NAVIFRAME_H__
+
+#include "common.h"
+
+namespace ucl {
+
+       constexpr ElmStyle NAVIFRAME_EMPTY {"empty"};
+}
+
+#endif // __UCL_GUI_STD_THEME_NAVIFRAME_H__
index 697e39ae91412d376f6928bacc99f54e2dacfe72..ed7d03f9f61f9fbf17c363b984bb1c16c516644c 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_GUI_TYPES_H__
 #define __UCL_GUI_TYPES_H__
 
index ed7ba8da5a1dff62838202f55b18739546a4c8f3..95521a239be4b6bde41adef12225b6b7c2bb8197 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/util/helpers.h"
 
 namespace ucl {
index 4a0f782d3ec1f3c7c46401cbcc218b18a1e3f369..9b40f98f5de03720a2f033d9e8aedda89b42b9dd 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_ASPECT_H__
 #define __UCL_MISC_ASPECT_H__
 
index 18adcb2e5e64085e0cacc33c1fefefc3b876f6cb..03127ec39f0db70cba6c83e8e5cbecbca1d28b02 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include <cstring>
 
 #include "ucl/util/helpers.h"
index 5ebc4f83c8d0adf2a57ae0c177323492364dadaa..efa93ceb3c625943108fd3ea0fb51d26b1411b75 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_EVENT_H__
 #define __UCL_MISC_EVENT_H__
 
index 17c0a53bc1527e3da696970735f0acbdd785c3b6..53e58a231a5f086494b7b1de7e200d386852c243 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include <algorithm>
 
 namespace ucl { namespace { namespace impl {
index ac6d45509f894862ce43c917441dd9051638411f..e8c078c1ffae453a783e9dd99fb2e1affa91e6bb 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_HASH_MAP_H__
 #define __UCL_MISC_HASH_MAP_H__
 
index 8b646921eeb6a599a5c048f3dc0ce8c8b282811e..05a0652c6b0f8d0df2d3e9c2d10bd20751fea53c 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class KEY, class VALUE>
index f037baa3df7fe2532650f0d093e8ea177754d6a7..7ec13cce993a4b1fe2417871b130f0976053be70 100644 (file)
@@ -26,33 +26,13 @@ namespace ucl {
 
        class RefCountAware : public Polymorphic {
        public:
-               template <class T>
-               static SharedRef<T> asShared(T *obj);
-               template <class T>
-               static WeakRef<T> asWeak(T *obj);
-
-               template <class T>
-               static SharedRef<T> asShared(T &obj);
-               template <class T>
-               static WeakRef<T> asWeak(T &obj);
-
                bool isShared() const;
 
                template <class T>
-               SharedRef<T> asShared();
-               template <class T>
-               WeakRef<T> asWeak();
+               SharedRef<T> asSharedThis(T *thisAlias) const;
 
                template <class T>
-               SharedRef<const T> asShared() const;
-               template <class T>
-               WeakRef<const T> asWeak() const;
-
-               RefCountAwareSRef asShared();
-               RefCountAwareWRef asWeak();
-
-               RefCountAwareSCRef asShared() const;
-               RefCountAwareWCRef asWeak() const;
+               WeakRef<T> asWeakThis(T *thisAlias) const;
 
        protected:
                RefCountAware(RefCountObjBase *rc);
@@ -65,14 +45,42 @@ namespace ucl {
        // Non-member functions //
 
        template <class T>
-       SharedRef<T> asShared(T *obj);
+       SharedRef<T> asShared(T &obj);
        template <class T>
-       WeakRef<T> asWeak(T *obj);
+       SharedRef<T> asShared(T *obj);
 
-       template <class T>
-       SharedRef<T> asShared(T &obj);
        template <class T>
        WeakRef<T> asWeak(T &obj);
+       template <class T>
+       WeakRef<T> asWeak(T *obj);
+
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, U>::value>::type>
+       SharedRef<T> asShared(U &obj);
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, U>::value>::type>
+       SharedRef<T> asShared(U *obj);
+
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, U>::value>::type>
+       WeakRef<T> asWeak(U &obj);
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, U>::value>::type>
+       WeakRef<T> asWeak(U *obj);
+
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, const U>::value>::type>
+       SharedRef<const T> asShared(const U &obj);
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, const U>::value>::type>
+       SharedRef<const T> asShared(const U *obj);
+
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, const U>::value>::type>
+       WeakRef<const T> asWeak(const U &obj);
+       template <class T, class U, class = typename
+                       std::enable_if<!std::is_same<T, const U>::value>::type>
+       WeakRef<const T> asWeak(const U *obj);
 }
 
 #include "RefCountAware.hpp"
index 7969289871b703ac1c6472a821f1e8cd2a7a3378..ae51c0d977b3330b05d5f92c2e6857604492fe4f 100644 (file)
@@ -23,118 +23,108 @@ namespace ucl {
        {
        }
 
-       template <class T>
-       inline SharedRef<T> RefCountAware::asShared(T *obj)
-       {
-               return (obj ? asShared(*obj) : SharedRef<T>());
-       }
-
-       template <class T>
-       inline WeakRef<T> RefCountAware::asWeak(T *obj)
-       {
-               return (obj ? asWeak(*obj) : WeakRef<T>());
-       }
-
-       template <class T>
-       inline SharedRef<T> RefCountAware::asShared(T &obj)
-       {
-               return obj.template asShared<typename std::remove_cv<T>::type>();
-       }
-
-       template <class T>
-       inline WeakRef<T> RefCountAware::asWeak(T &obj)
-       {
-               return obj.template asWeak<typename std::remove_cv<T>::type>();
-       }
-
        inline bool RefCountAware::isShared() const
        {
                return !!m_rc;
        }
 
        template <class T>
-       inline SharedRef<T> RefCountAware::asShared()
+       inline SharedRef<T> RefCountAware::asSharedThis(T *const thisAlias) const
        {
                if (!isShared()) {
                        UCL_ELOG("NOT SHARED: %s", typeid(*this).name());
                        return {};
                }
-               return {m_rc, static_cast<T *>(this)};
+               return {m_rc, thisAlias};
        }
 
        template <class T>
-       inline WeakRef<T> RefCountAware::asWeak()
+       inline WeakRef<T> RefCountAware::asWeakThis(T *const thisAlias) const
        {
                if (!isShared()) {
                        UCL_ELOG("NOT SHARED: %s", typeid(*this).name());
                        return {};
                }
-               return {m_rc, static_cast<T *>(this)};
+               return {m_rc, thisAlias};
        }
 
+       // Non-member functions //
+
        template <class T>
-       inline SharedRef<const T> RefCountAware::asShared() const
+       inline SharedRef<T> asShared(T &obj)
        {
-               if (!isShared()) {
-                       UCL_ELOG("NOT SHARED: %s", typeid(*this).name());
-                       return {};
-               }
-               return {m_rc, static_cast<const T *>(this)};
+               return obj.template asSharedThis<T>(&obj);
        }
 
        template <class T>
-       inline WeakRef<const T> RefCountAware::asWeak() const
+       inline SharedRef<T> asShared(T *obj)
        {
-               if (!isShared()) {
-                       UCL_ELOG("NOT SHARED: %s", typeid(*this).name());
-                       return {};
-               }
-               return {m_rc, static_cast<const T *>(this)};
+               if (!obj) return {};
+               return obj->template asSharedThis<T>(obj);
        }
 
-       inline RefCountAwareSRef RefCountAware::asShared()
+       template <class T>
+       inline WeakRef<T> asWeak(T &obj)
        {
-               return asShared<RefCountAware>();
+               return obj.template asWeakThis<T>(&obj);
        }
 
-       inline RefCountAwareWRef RefCountAware::asWeak()
+       template <class T>
+       inline WeakRef<T> asWeak(T *obj)
        {
-               return asWeak<RefCountAware>();
+               if (!obj) return {};
+               return obj->template asWeakThis<T>(obj);
        }
 
-       inline RefCountAwareSCRef RefCountAware::asShared() const
+       template <class T, class U, class>
+       inline SharedRef<T> asShared(U &obj)
        {
-               return asShared<RefCountAware>();
+               return obj.template asSharedThis<T>(&obj);
        }
 
-       inline RefCountAwareWCRef RefCountAware::asWeak() const
+       template <class T, class U, class>
+       inline SharedRef<T> asShared(U *obj)
        {
-               return asWeak<RefCountAware>();
+               if (!obj) return {};
+               return obj->template asSharedThis<T>(obj);
        }
 
-       // Non-member functions //
+       template <class T, class U, class>
+       inline WeakRef<T> asWeak(U &obj)
+       {
+               return obj.template asWeakThis<T>(&obj);
+       }
 
-       template <class T>
-       inline SharedRef<T> asShared(T *obj)
+       template <class T, class U, class>
+       inline WeakRef<T> asWeak(U *obj)
        {
-               return RefCountAware::asShared(obj);
+               if (!obj) return {};
+               return obj->template asWeakThis<T>(obj);
        }
 
-       template <class T>
-       inline WeakRef<T> asWeak(T *obj)
+       template <class T, class U, class>
+       inline SharedRef<const T> asShared(const U &obj)
        {
-               return RefCountAware::asWeak(obj);
+               return obj.template asSharedThis<const T>(&obj);
        }
 
-       template <class T>
-       inline SharedRef<T> asShared(T &obj)
+       template <class T, class U, class>
+       inline SharedRef<const T> asShared(const U *obj)
        {
-               return RefCountAware::asShared(obj);
+               if (!obj) return {};
+               return obj->template asSharedThis<const T>(obj);
        }
 
-       template <class T>
-       inline WeakRef<T> asWeak(T &obj)
+       template <class T, class U, class>
+       inline WeakRef<const T> asWeak(const U &obj)
+       {
+               return obj.template asWeakThis<const T>(&obj);
+       }
+
+       template <class T, class U, class>
+       inline WeakRef<const T> asWeak(const U *obj)
        {
-               return RefCountAware::asWeak(obj);
+               if (!obj) return {};
+               return obj->template asWeakThis<const T>(obj);
        }
 }
index 60e03c8b0f6e3d9fc64f8bf6fb78ed59e8bb6e4f..5ad240d85f0df33878dfab11c11bb19d670e22d5 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_T_STRING_H__
 #define __UCL_MISC_T_STRING_H__
 
@@ -40,7 +56,7 @@ namespace ucl {
                const char *translate() const;
 
                template <typename ...ARGS>
-               TString format(ARGS ...args) const;
+               std::string format(ARGS ...args) const;
 
        private:
                const char *doTranslate(const char *strId) const;
index 980684878fc94e028065c17b7e84272032db648f..01c1327a39c7e02a72650fc17fbb3e16528c5cf0 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include <libintl.h>
 #include <app_i18n.h>
 
@@ -99,7 +115,7 @@ namespace ucl {
        }
 
        template <typename ...ARGS>
-       inline TString TString::format(ARGS ...args) const
+       inline std::string TString::format(ARGS ...args) const
        {
                constexpr auto STR_LEN_ADJUST = 1.7f;
 
@@ -125,6 +141,6 @@ namespace ucl {
                        strLen = n + 1;
                }
 
-               return {result, false};
+               return result;
        }
 }
index d8e2a3706c7c719f02f61ec9381cf998b09478e6..a69866b1c755897a7a8ca83d438de3fded4e9d33 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_VARIANT_H__
 #define __UCL_MISC_VARIANT_H__
 
index 4c1dcbb5af7a13ba644afa07228299e8d9ad9c4e..86ad92eb15b0046bdd1e0c417f12275b87c1ec99 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include <cstring>
 
 namespace ucl { namespace { namespace impl {
index 6f249a0d7b2abf049cc3635b0689dccaf9b02988..f921743260af753da920da573040cf086e6a74f1 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_SMART_DELEGATION_H__
 #define __UCL_MISC_SMART_DELEGATION_H__
 
index b1792cf8e5e241953dccb99388b6877e5162f88b..0a5e976f3f3587bf16ec052f0b0ec48b4319b861 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_SMART_DELEGATION_WEAK_DELEGATE_H__
 #define __UCL_MISC_SMART_DELEGATION_WEAK_DELEGATE_H__
 
index be7c1ac13f3d8a4ba0fa5910c0aa0c43fe91de6c..e4b4b5d6f4b304302edf37732e12942c7be5dc58 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class R, class ...ARGS>
index 24ab6149ac1ad036e95ade5722662f531c76a875..5368eda8f4bacd36f3537b7b4bc5bf22e208150d 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_SMART_DELEGATION_MACRO_H__
 #define __UCL_MISC_SMART_DELEGATION_MACRO_H__
 
index 38930084ed7dc297871dd2f1a83fb214e9b2c3fa..43c1ec3d653a603c184bd6ac63645561001924b4 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_MISC_SMART_DELEGATION_SHORT_MACRO_H__
 #define __UCL_MISC_SMART_DELEGATION_SHORT_MACRO_H__
 
index 198c20f81efc7a88e1b95a1a3fc9f4006442aee6..a624c083f8c5724f7a7db13b8bdd61d6c9ad6a02 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_H__
 #define __UCL_UTIL_DELEGATION_H__
 
index e4307f0fea0ffc61ed8660692fc37f51f5c48386..e49ce22f55f89961da741dceba086a4381c10d2a 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_BASE_DELEGATE_H__
 #define __UCL_UTIL_DELEGATION_BASE_DELEGATE_H__
 
index 46cef7fad651c276a1d657df14999a4ed318751d..9fe436967c0268ec4cb51fb7fad7a0865d8063f3 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class R, class ...ARGS, class DATA>
index ad3242e50e3096e180fbfb7c86a8318b31d61f8f..ff3b63509f7dc84be3061336285a03325baf637b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_BASE_DELEGATE2_H__
 #define __UCL_UTIL_DELEGATION_BASE_DELEGATE2_H__
 
index 28446def68c43b52ae53ec93013936782d1aa185..6d8efa74042d9accdb145b2af5d890b444e8f218 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class R, class ...ARGS, class DATA>
index 6b282d421b0d2e331a31c5affebecfd456157194..69724bebce4333d21ea6e2f098fdf31e4a7cfbcf 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_CALLBACK_H__
 #define __UCL_UTIL_DELEGATION_CALLBACK_H__
 
index 622729fbd38aa4684641895d5eab31c74de0565d..28d2145037126df5810fa6bf9578ac87d9db49e0 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class R, class ...ARGS>
index ad9a1fd5797b95fd51a1fe91ced9ac91ab25bb47..fd53a0ad4f0ac503946f659a3d732676dfbd01f5 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_DELEGATE_H__
 #define __UCL_UTIL_DELEGATION_DELEGATE_H__
 
index 680745df0a503555c318b18498c0771b2fe9dd77..5f7be3d49cc8e6d2365b60b7ffdb3f11f27a8c4f 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class R, class ...ARGS>
index 766985702cfcaf381a58aeb0623714b2e02e1e94..c49d31c9fc6b2d293cbe68bd73cd99c128d40d79 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_DELEGATE2_H__
 #define __UCL_UTIL_DELEGATION_DELEGATE2_H__
 
index 412840671b0ae09d7768e34a7dd7c5465f2f9d50..4d7786031857a4c5f1c1fea504d1eaa1ac25bb1d 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class R, class ...ARGS>
index fdcc56617bdce075e68add9181068ed375908b7a..95e0481b11292c8cdbf0730b15b66faf458e25cf 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_HELPERS_H__
 #define __UCL_UTIL_DELEGATION_HELPERS_H__
 
index 4b1640fa76660db697c594ca2bd45f5c5055a752..62bf88ff44f7cc6d853d1c4e4cd0a3552cd4883b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_MACRO_H__
 #define __UCL_UTIL_DELEGATION_MACRO_H__
 
index f9b6c065396d71104dc0fc332550e34e93f47d35..3837977d42a8219d70b0bcc16cb8b509aabfda22 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_DELEGATION_SHORT_MACRO_H__
 #define __UCL_UTIL_DELEGATION_SHORT_MACRO_H__
 
index 7c19f2abe8cdaf3e0d2a116dbbf8d6944bb1bd05..87485b0506f76f4ca7b3e6b8b1c97758802cbf25 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_HELPERS_H__
 #define __UCL_UTIL_HELPERS_H__
 
@@ -29,6 +45,12 @@ namespace ucl {
                return value.isEmpty();
        }
 
+       template <class T>
+       constexpr auto isEmpty(const T &value) -> decltype(isEmpty(*value))
+       {
+               return (!value || isEmpty(*value));
+       }
+
        template <class T>
        constexpr bool isNotEmpty(T &&value);
 
index 7c45c5fd9b7d1c08359c60439da162ed892191b5..a7606f81f8d9f207eeea023a04a92fe6b4375568 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        constexpr Eina_Bool toEina(const bool value)
index c957f19fa9c7769d112f5a239841e4792b38cb8b..804a51301f78ca0a206afadae6e84a5ba6f6b63b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_LOGGING_H__
 #define __UCL_UTIL_LOGGING_H__
 
index edc74ce002ac87eb3560a2806ed30e44e398f436..1fd85237709c7c7dd3966fb32a30c1620f642093 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_H__
 #define __UCL_UTIL_MEMORY_H__
 
index bfae1fb0a7c10ee1458822953b6d31f239603709..0aa1b593cc07a61fafcb61a95efd88656b77f7b8 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_BASE_REF_H__
 #define __UCL_UTIL_MEMORY_BASE_REF_H__
 
@@ -18,6 +34,8 @@ namespace ucl {
                friend class WeakRef;
 
        public:
+               int getUseCount() const;
+
                T *operator->() const noexcept;
                typename std::add_lvalue_reference<T>::type operator*() const noexcept;
 
index 047cc881a2a85a14bead913cccca217e2011ddd5..d587bc141ec661167b722e322797913f44c0533a 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class T>
@@ -34,6 +50,12 @@ namespace ucl {
                r.m_ptr = nullptr;
        }
 
+       template <class T>
+       inline int BaseRef<T>::getUseCount() const
+       {
+               return (m_rc ? m_rc->getUseCount() : 0);
+       }
+
        template <class T>
        inline T *BaseRef<T>::operator->() const noexcept
        {
index f067b0a77c82bdf77d146755934fec96f6f98f89..777f07e9a5b663206cf49b356dd6c91154b1f027 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_REF_COUNT_OBJ_H__
 #define __UCL_UTIL_MEMORY_REF_COUNT_OBJ_H__
 
index d0cfa2a8d5efb454a754651fe03218c69eebb6c7..3807bd33ce9c0effc9010da8d3864466048d80b3 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class T>
index b5e42779f002d61da9f6fd1805fbf2e9bb0b9181..4e6edf033e49e69bb7718ca639fda5b6c03900bb 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_REF_COUNT_OBJ_BASE_H__
 #define __UCL_UTIL_MEMORY_REF_COUNT_OBJ_BASE_H__
 
@@ -13,6 +29,7 @@ namespace ucl {
                void refWeak() noexcept;
                void unrefWeak() noexcept;
 
+               int getUseCount() const noexcept;
                bool isDisposed() const noexcept;
 
        protected:
index 4edfa52cf352c4ffefecb86c3436ff7ddd854c72..c4b5d42e48f1a1e03641b9b029c50b01dbdf5efa 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline RefCountObjBase::RefCountObjBase() :
@@ -41,6 +57,11 @@ namespace ucl {
                }
        }
 
+       inline int RefCountObjBase::getUseCount() const noexcept
+       {
+               return m_useRefs;
+       }
+
        inline bool RefCountObjBase::isDisposed() const noexcept
        {
                return m_isDisposed;
index 15b0d49941f4cdc57b465ea3bf2b16907829e8bc..9e4793fb18cd773cba6eb3a2b9b8fa5aa45e90ef 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_SHARED_REF_H__
 #define __UCL_UTIL_MEMORY_SHARED_REF_H__
 
index 29d8ad261a8ca101eed450655fe81aa0e0bcf549..d6b4ee6de694b3f9d81ac9f1a656c3f159c6f327 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "RefCountObj.h"
 
 namespace ucl {
index a755f2a8f4647b4ad4c2087a656902dbe1e40344..c8edef45230f772b43c0b8bb66d427e0d080ad8e 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_WEAK_REF_H__
 #define __UCL_UTIL_MEMORY_WEAK_REF_H__
 
index 3fcee28a137129f9d7d6475229ef0d5b9a19e711..750881576f869154c17d2cf7aadc6cba610376e7 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        template <class T>
index 96921b18dcaa5e3eb4be297b1dad7313f701e5e6..ad785916119801ad9b77363873e20903c9c0ffd7 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_HELPERS_H__
 #define __UCL_UTIL_MEMORY_HELPERS_H__
 
index a27309673baec834c19ff647f297b498d7b1a0df..6818ef965b53cce1efd8ff7eb2f156211e6e37a5 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_MEMORY_MACRO_H__
 #define __UCL_UTIL_MEMORY_MACRO_H__
 
index 0e1edd4cc519137860e5433c4912a16f0d4bc8bc..02f8bbf1bb1a915b7190c3dde8ec0525f92b67b6 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_SHORT_LOGS_H__
 #define __UCL_UTIL_SHORT_LOGS_H__
 
index f8724f28ebfcce8e8982abf61d133b1d9fe6a659..4595b1b5f4444fd866cdedeb1aeb0373872dd265 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_THREADING_H__
 #define __UCL_UTIL_THREADING_H__
 
index dc7c94df493e73cfe22a1855ff36dedbdb4ed69c..58d16d3027c662c84f2202fbf37ea07edd821759 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_THREADING_COND_VAR_H__
 #define __UCL_UTIL_THREADING_COND_VAR_H__
 
index eb7be062c3d7dada5a51c4c778efa53b30225220..09b0ae0a5693c6604b2dba080b2f98e825b7219b 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline CondVar::CondVar() :
index 8e53e0a8bf0839de628935b870db5cfdfa8f0719..a6280cc1d2ad9c4ec34ad7293a00def4f933ed12 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_THREADING_MUTEX_H__
 #define __UCL_UTIL_THREADING_MUTEX_H__
 
index 71e5baa4f0a76de1842dd2bc499f63c5bdbf643f..d152df35e8f1bad33943abe6ca5014e22210eab3 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline Mutex::Mutex() :
index a982b0cd565f9c48650bf8b3183f855c5f50b03c..854d0b34fd2d0ba15b5bf9a2ffe16cab40445af5 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_THREADING_MUTEX_LOCK_H__
 #define __UCL_UTIL_THREADING_MUTEX_LOCK_H__
 
index 251978eb41f5426c40f54ea8cd9e1aa29ee1a003..a30d99515fce7efad702fae23cf546109caa4512 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        inline MutexLock::MutexLock(Mutex &mutex) :
index aa2cfba1719b66839e4dde1f24b2286065b54ffd..08399217281c80d25c0d0c3d1ff4137e34d4a276 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_THREADING_THREAD_H__
 #define __UCL_UTIL_THREADING_THREAD_H__
 
index 4e5255beb3ec4d04682fa600ab62ff817502dffe..74259c15180d96b255f6f4fdbea141414178e751 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/util/logging.h"
 
 namespace ucl {
index e20ca41a21c01e1957912c230bfce380c469cd02..70a33d3fd24091ce8a6aa69bf175911a9c974967 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_TYPES_H__
 #define __UCL_UTIL_TYPES_H__
 
index 83ac56d87ae9a6f32d18de0ca6184013ada11b58..69815a77e918a0ea52c6357311fd59884bb333cc 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_TYPES_RESULT_H__
 #define __UCL_UTIL_TYPES_RESULT_H__
 
index 9c3fd3821f268810b6afc5dcb823edfd30d1f15e..c83db4caeb988fb05eb0632e0416f1af400b6923 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 namespace ucl {
 
        constexpr bool isGood(const Result result)
index f118bf4113bf2596624aff790a1c2b669a16cfe5..5b280de6819a865081366583f89909566184d5f9 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_TYPES_BASE_TYPES_H__
 #define __UCL_UTIL_TYPES_BASE_TYPES_H__
 
index d2640843f35fc8fa312262d840767610ac5bb36b..b340c34183c15cdf143c8b9c0b09acd7120df89a 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_UTIL_TYPES_CLASS_TYPES_H__
 #define __UCL_UTIL_TYPES_CLASS_TYPES_H__
 
index 8929394487332bd025deff23a4813792c7528161..a643b380ac30bb5f1ef9b71a3b4ea5ca14cbde9c 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/appfw/InstanceManagerBase.h"
 
 #include "../common.h"
index 459bdb1e9e2daab538c5aee79b4c765ff3cacec1..3b8994e499f76f0b55744853b7de70ecc956617c 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/appfw/SysEventProvider.h"
 
 #include "../common.h"
index 61b1e47c6cea0f4f1b10c5b900fcec2dcf013b33..49c5e67bec76036b0a3dc77ffe571f7253130eea 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/appfw/UIApp.h"
 
 #include <app.h>
index 24857a27fc9d076e3efc8f5f2f9d55bc0508724c..f03d1947ba2ffc3cdf2b92e5ba3cd18c60f71127 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #ifndef __UCL_COMMON_H__
 #define __UCL_COMMON_H__
 
index 57293dba0e27b07c3497a3b2547b3f3779132d08..8d6759685e1711b09258a8240875740588f6e703 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/EdjeWidget.h"
 
 namespace ucl {
@@ -18,7 +34,7 @@ namespace ucl {
                }
        }
 
-       void EdjeWidget::setText(const EdjePart part, const TString &value)
+       void EdjeWidget::setText(const TString &value, const EdjePart part)
        {
                if (value.isTranslatable()) {
                        if (value.hasDomain()) {
index 4451c160ae38a7738efe0c2eee0011e70fe63a25..cf99eb7c7f835b5ac30d248668ca62b856134ce5 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/ElmWidget.h"
 
 #include "ucl/gui/Window.h"
index bd43c3788ad861843d3a5b7bd7e1b9667f9750c2..070a8d6048bde1b67f00116836d5707a4a47d37e 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/Layout.h"
 
 #include "ucl/gui/stdTheme/layout.h"
@@ -12,8 +28,7 @@ namespace ucl {
        {
                Evas_Object *const eo = elm_layout_add(parent);
                if (!eo) {
-                       ELOG("elm_layout_add() failed!");
-                       return {};
+                       LOG_RETURN_VALUE(RES_FAIL, {}, "elm_layout_add() failed!");
                }
 
                auto result = makeShared<Layout>(eo, m_isOwner);
@@ -22,10 +37,16 @@ namespace ucl {
                        result->bindToEo();
                }
 
+               bool isOk = true;
+
                if (isNotEmpty(m_edjeFilePath) && isValid(m_edjeGroup)) {
-                       result->setEdjeFile(m_edjeFilePath, m_edjeGroup);
-               } else {
-                       result->setTheme(isValid(m_theme) ? m_theme : LAYOUT_DEFAULT);
+                       isOk = result->setEdjeFile(m_edjeFilePath, m_edjeGroup);
+               } else if (isValid(m_theme)) {
+                       isOk = result->setTheme(m_theme);
+               }
+
+               if (!isOk) {
+                       LOG_RETURN_VALUE(RES_FAIL, {}, "Layout init failed!");
                }
 
                show(*result);
index 0814cb517002dff7f6fa4ef8ba549e8c3cd77bd4..1f8a589da9355078648fb8a8cea095123f19cd40 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/Naviframe.h"
 
 #include "../common.h"
@@ -14,7 +30,7 @@ namespace ucl {
                        return {};
                }
 
-               auto result = makeShared<Naviframe>(eo, m_isOwner);
+               auto result = makeShared<Naviframe>(eo);
 
                if (m_needBindToEo) {
                        result->bindToEo();
@@ -43,7 +59,7 @@ namespace ucl {
        {
                if (!m_isInTransition) {
                        m_isInTransition = true;
-                       callSmartEvent(NAVI_TRANSITION_STARTED);
+                       callEvent(NAVI_TRANSITION_STARTED);
                }
        }
 
index 6f4b631808ba614efe14ff711603e0b32ec98d02..5012a6a8127225e2fd7ff8f5da87844b46a5dc6d 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/Widget.h"
 
 #include "../common.h"
index 05ab85acf0a725ea8c0feaec17719af30e9eb97d..04d1fca76ee66e5553ff7ee18039e632e6ab71f5 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/WidgetItem.h"
 
 namespace ucl {
@@ -17,8 +33,8 @@ namespace ucl {
                }
        }
 
-       void WidgetItem::setText(
-                       const EdjePart part, const TString &value) const
+       void WidgetItem::setText(const TString &value,
+                       const EdjePart part) const
        {
                if (value.isTranslatable()) {
                        if (value.hasDomain()) {
index 23a99d2a4762a2c7d8008ca120d942c1cd64b869..e63a0e7fc2b0860808bff536c236024fe13d3ae1 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/gui/Window.h"
 
 #include "../common.h"
index d6cebfa0ab7dab10f6db8746adae80e4fa47e10c..6513076acf8bb37935a9607b16fce24d15000f2f 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/misc/Variant.h"
 
 #include "../common.h"
index cd341a56283c52a00d771c5e3e654ad72ca6d324..311f25bd5f228f28589b9f8fe00764f2f8a8c5af 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/util/logging.h"
 
 #if (UCL_DEFINE_GET_UCL_RESULT_DATA)
index 7e0464f1ee044ca3aaba40bb1f3515291ee4d08e..b42875ed58ed7e65e93b21a30cf17abe47cf4387 100644 (file)
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2017 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 #include "ucl/util/types/Result.h"
 
 #include "ucl/util/logging.h"