+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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)
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
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);
+/*
+ * 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,
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);
}
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);
+/*
+ * 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__
+/*
+ * 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)
+/*
+ * 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__
bool setTheme(const LayoutTheme &theme);
bool setEdjeFile(const std::string &filePath, EdjeGroup group);
- Variant getEdjeData(EdjeDataKey key);
+ Variant getData(EdjeDataKey key);
};
}
+/*
+ * 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)
{
}
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);
}
+/*
+ * 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__
+/*
+ * 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
+/*
+ * 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__
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);
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;
+/*
+ * 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)
{
}
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)
{
inline Evas_Object *Naviframe::pop()
{
auto result = elm_naviframe_item_pop(getEo());
- if (isValid(getBottomItem())) {
+ if (getBottomItem()) {
startTransition();
}
return result;
}
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,
}
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,
}
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
+/*
+ * 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__
+/*
+ * 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(
+/*
+ * 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__
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();
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"
+/*
+ * 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__";
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);
}
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());
+ }
}
+/*
+ * 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__
Elm_Object_Item *getIt() const;
operator Elm_Object_Item *() const;
+ operator bool() const;
Evas_Object *getWidget() const;
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;
void enable(WidgetItem item);
void disable(WidgetItem item);
- bool isValid(WidgetItem item);
-
bool operator==(WidgetItem lhs, WidgetItem rhs);
bool operator!=(WidgetItem lhs, WidgetItem rhs);
}
+/*
+ * 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() :
return m_it;
}
+ inline WidgetItem::operator bool() const
+ {
+ return !!m_it;
+ }
+
inline Evas_Object *WidgetItem::getWidget() const
{
return elm_object_item_widget_get(getIt());
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());
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);
}
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);
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());
+/*
+ * 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__
StyledWidget &getConformant();
const StyledWidget &getConformant() const;
+ void getScreenSize(int *w, int *h) const;
+
void setTitle(const std::string &title);
std::string getTitle() const;
+/*
+ * 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 {
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());
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)
+/*
+ * 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__
+/*
+ * 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)
+/*
+ * 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__
+/*
+ * 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__
// 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__
+/*
+ * 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__
namespace ucl {
constexpr LayoutTheme LAYOUT_DEFAULT {"layout", "application", "default"};
+
+ constexpr LayoutTheme LAYOUT_NO_CONTENTS
+ {"layout", "nocontents", "default"};
}
#endif // __UCL_GUI_STD_THEME_LAYOUT_H__
--- /dev/null
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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 {
+/*
+ * 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__
+/*
+ * 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"
+/*
+ * 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__
+/*
+ * 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 {
+/*
+ * 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__
+/*
+ * 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>
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);
// 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"
{
}
- 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);
}
}
+/*
+ * 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__
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;
+/*
+ * 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>
}
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;
strLen = n + 1;
}
- return {result, false};
+ return result;
}
}
+/*
+ * 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__
+/*
+ * 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 {
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
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);
+/*
+ * 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)
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
friend class WeakRef;
public:
+ int getUseCount() const;
+
T *operator->() const noexcept;
typename std::add_lvalue_reference<T>::type operator*() const noexcept;
+/*
+ * 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>
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
{
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
void refWeak() noexcept;
void unrefWeak() noexcept;
+ int getUseCount() const noexcept;
bool isDisposed() const noexcept;
protected:
+/*
+ * 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() :
}
}
+ inline int RefCountObjBase::getUseCount() const noexcept
+ {
+ return m_useRefs;
+ }
+
inline bool RefCountObjBase::isDisposed() const noexcept
{
return m_isDisposed;
+/*
+ * 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__
+/*
+ * 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 {
+/*
+ * 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__
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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() :
+/*
+ * 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__
+/*
+ * 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() :
+/*
+ * 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__
+/*
+ * 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) :
+/*
+ * 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__
+/*
+ * 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 {
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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)
+/*
+ * 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__
+/*
+ * 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__
+/*
+ * 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"
+/*
+ * 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"
+/*
+ * 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>
+/*
+ * 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__
+/*
+ * 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 {
}
}
- void EdjeWidget::setText(const EdjePart part, const TString &value)
+ void EdjeWidget::setText(const TString &value, const EdjePart part)
{
if (value.isTranslatable()) {
if (value.hasDomain()) {
+/*
+ * 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"
+/*
+ * 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"
{
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);
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);
+/*
+ * 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"
return {};
}
- auto result = makeShared<Naviframe>(eo, m_isOwner);
+ auto result = makeShared<Naviframe>(eo);
if (m_needBindToEo) {
result->bindToEo();
{
if (!m_isInTransition) {
m_isInTransition = true;
- callSmartEvent(NAVI_TRANSITION_STARTED);
+ callEvent(NAVI_TRANSITION_STARTED);
}
}
+/*
+ * 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"
+/*
+ * 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 {
}
}
- 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()) {
+/*
+ * 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"
+/*
+ * 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"
+/*
+ * 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)
+/*
+ * 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"