X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol.cpp;h=ec37028d164bbe3af0bf39e6aa984667ae414a75;hb=f25156f6460c7b288797ed40aaeca1ae6fc827dd;hp=4ceae4f28db0ab7c854226703a45fb164a7a223b;hpb=d04c5bdbb95cc98f90848c7a98b0b2804df6e5b8;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/public-api/controls/control.cpp b/dali-toolkit/public-api/controls/control.cpp index 4ceae4f..ec37028 100644 --- a/dali-toolkit/public-api/controls/control.cpp +++ b/dali-toolkit/public-api/controls/control.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,15 +18,17 @@ // CLASS HEADER #include +// EXTERNAL INCLUDES +#include + // INTERNAL INCLUDES +#include #include namespace Dali { - namespace Toolkit { - Control Control::New() { return Internal::Control::New(); @@ -36,112 +38,114 @@ Control::Control() { } -Control::Control(const Control& uiControl) -: CustomActor( uiControl ? static_cast< const Internal::Control& >( uiControl.GetImplementation() ).GetOwner() : NULL) -{ -} +Control::Control(const Control& uiControl) = default; -Control::~Control() -{ -} +Control::Control(Control&& rhs) = default; -Control& Control::operator=( const Control& handle ) +Control::~Control() { - if( &handle != this ) - { - CustomActor::operator=( handle ); - } - return *this; } -Control Control::DownCast( BaseHandle handle ) -{ - return DownCast< Control, Internal::Control >(handle); -} +Control& Control::operator=(const Control& handle) = default; -Internal::Control& Control::GetImplementation() -{ - return static_cast(CustomActor::GetImplementation()); -} +Control& Control::operator=(Control&& rhs) = default; -const Internal::Control& Control::GetImplementation() const +Control Control::DownCast(BaseHandle handle) { - return static_cast(CustomActor::GetImplementation()); + return DownCast(handle); } void Control::SetKeyInputFocus() { - GetImplementation().SetKeyInputFocus(); + Internal::GetImplementation(*this).SetKeyInputFocus(); } bool Control::HasKeyInputFocus() { - return GetImplementation().HasKeyInputFocus(); + return Internal::GetImplementation(*this).HasKeyInputFocus(); } void Control::ClearKeyInputFocus() { - GetImplementation().ClearKeyInputFocus(); + Internal::GetImplementation(*this).ClearKeyInputFocus(); } PinchGestureDetector Control::GetPinchGestureDetector() const { - return GetImplementation().GetPinchGestureDetector(); + return Internal::GetImplementation(*this).GetPinchGestureDetector(); } PanGestureDetector Control::GetPanGestureDetector() const { - return GetImplementation().GetPanGestureDetector(); + return Internal::GetImplementation(*this).GetPanGestureDetector(); } TapGestureDetector Control::GetTapGestureDetector() const { - return GetImplementation().GetTapGestureDetector(); + return Internal::GetImplementation(*this).GetTapGestureDetector(); } LongPressGestureDetector Control::GetLongPressGestureDetector() const { - return GetImplementation().GetLongPressGestureDetector(); + return Internal::GetImplementation(*this).GetLongPressGestureDetector(); } -void Control::SetStyleName( const std::string& styleName ) +void Control::SetStyleName(const std::string& styleName) { - GetImplementation().SetStyleName( styleName ); + Internal::GetImplementation(*this).SetStyleName(styleName); } const std::string& Control::GetStyleName() const { - return GetImplementation().GetStyleName(); + return Internal::GetImplementation(*this).GetStyleName(); } -void Control::SetBackgroundColor( const Vector4& color ) +void Control::SetBackgroundColor(const Vector4& color) { - GetImplementation().SetBackgroundColor( color ); + Internal::GetImplementation(*this).SetBackgroundColor(color); } -Vector4 Control::GetBackgroundColor() const +void Control::ClearBackground() { - return GetImplementation().GetBackgroundColor(); + Internal::GetImplementation(*this).ClearBackground(); } -void Control::SetBackgroundImage( Image image ) +bool Control::IsResourceReady() const { - GetImplementation().SetBackgroundImage( image ); + const Internal::Control& internalControl = Toolkit::Internal::GetImplementation(*this); + const Internal::Control::Impl& controlDataImpl = Internal::Control::Impl::Get(internalControl); + + return controlDataImpl.IsResourceReady(); } -void Control::ClearBackground() +Toolkit::Visual::ResourceStatus Control::GetVisualResourceStatus(Dali::Property::Index index) { - GetImplementation().ClearBackground(); + const Internal::Control& internalControl = Toolkit::Internal::GetImplementation(*this); + const Internal::Control::Impl& controlDataImpl = Internal::Control::Impl::Get(internalControl); + return controlDataImpl.GetVisualResourceStatus(index); } -Actor Control::GetBackgroundActor() const +Control::KeyEventSignalType& Control::KeyEventSignal() { - return GetImplementation().GetBackgroundActor(); + return Internal::GetImplementation(*this).KeyEventSignal(); } -Control::KeyEventSignalType& Control::KeyEventSignal() +Control::KeyInputFocusSignalType& Control::KeyInputFocusGainedSignal() +{ + return Internal::GetImplementation(*this).KeyInputFocusGainedSignal(); +} + +Control::KeyInputFocusSignalType& Control::KeyInputFocusLostSignal() +{ + return Internal::GetImplementation(*this).KeyInputFocusLostSignal(); +} + +Control::ResourceReadySignalType& Control::ResourceReadySignal() { - return GetImplementation().KeyEventSignal(); + Internal::Control& internalControl = Toolkit::Internal::GetImplementation(*this); + Internal::Control::Impl& controlImpl = Internal::Control::Impl::Get(internalControl); + + return controlImpl.mResourceReadySignal; } Control::Control(Internal::Control& implementation)