X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol-impl.cpp;h=c469d1c3e6898bde30b5eba3e20db85a97271000;hp=49064a824ac2544fb7b41e6cd0f2a0c81d54060b;hb=1061baa5912952ac998c34584b1e2e5e030e0e5f;hpb=b5b774f066e74e54a2e6f4bf923d1501f21f1284 diff --git a/dali-toolkit/public-api/controls/control-impl.cpp b/dali-toolkit/public-api/controls/control-impl.cpp index 49064a8..c469d1c 100755 --- a/dali-toolkit/public-api/controls/control-impl.cpp +++ b/dali-toolkit/public-api/controls/control-impl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 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. @@ -129,46 +129,6 @@ void CreateClippingRenderer( Control& controlImpl ) } } -/** - * @brief Sets Control::Property::BACKGROUND visual - * @param[in] controlImpl The control implementation - * @param[in] visual The control background visual - * @param[in] size The current size - */ -void SetBackgroundVisual( Control::Impl& controlImpl, Toolkit::Visual::Base& visual, const Vector2& size ) -{ - Property::Map transformMap = Property::Map(); - - Vector2 newSize( 0.f, 0.f ); - newSize.width = size.width + ( controlImpl.mPadding.start + controlImpl.mPadding.end ); - newSize.height = size.height + ( controlImpl.mPadding.top + controlImpl.mPadding.bottom ); - - if( ( controlImpl.mMargin.start != 0 ) || - ( controlImpl.mMargin.end != 0 ) || - ( controlImpl.mMargin.top != 0 ) || - ( controlImpl.mMargin.bottom != 0 ) ) - { - transformMap.Add( Toolkit::Visual::Transform::Property::SIZE, newSize ) - .Add( Toolkit::Visual::Transform::Property::SIZE_POLICY, Vector2( Toolkit::Visual::Transform::Policy::ABSOLUTE, Toolkit::Visual::Transform::Policy::ABSOLUTE ) ) - .Add( Toolkit::Visual::Transform::Property::OFFSET, Vector2( controlImpl.mMargin.start, controlImpl.mMargin.top ) ) - .Add( Toolkit::Visual::Transform::Property::OFFSET_POLICY, Vector2( Toolkit::Visual::Transform::Policy::ABSOLUTE, Toolkit::Visual::Transform::Policy::ABSOLUTE ) ) - .Add( Toolkit::Visual::Transform::Property::ORIGIN, Toolkit::Align::TOP_BEGIN ) - .Add( Toolkit::Visual::Transform::Property::ANCHOR_POINT, Toolkit::Align::TOP_BEGIN ); - } - else if( ( controlImpl.mPadding.start != 0 ) || - ( controlImpl.mPadding.end != 0 ) || - ( controlImpl.mPadding.top != 0 ) || - ( controlImpl.mPadding.bottom != 0 ) ) - { - transformMap.Add( Toolkit::Visual::Transform::Property::SIZE, newSize ) - .Add( Toolkit::Visual::Transform::Property::SIZE_POLICY, Vector2( Toolkit::Visual::Transform::Policy::ABSOLUTE, Toolkit::Visual::Transform::Policy::ABSOLUTE ) ) - .Add( Toolkit::Visual::Transform::Property::ORIGIN, Toolkit::Align::TOP_BEGIN ) - .Add( Toolkit::Visual::Transform::Property::ANCHOR_POINT, Toolkit::Align::TOP_BEGIN ); - } - - visual.SetTransformAndSize( transformMap, newSize ); // Send an empty map as we do not want to modify the visual's set transform -} - } // unnamed namespace @@ -225,11 +185,6 @@ void Control::SetBackgroundColor( const Vector4& color ) SetBackground( map ); } -Vector4 Control::GetBackgroundColor() const -{ - return mImpl->mBackgroundColor; -} - void Control::SetBackground( const Property::Map& map ) { Toolkit::Visual::Base visual = Toolkit::VisualFactory::Get().CreateVisual( map ); @@ -243,15 +198,6 @@ void Control::SetBackground( const Property::Map& map ) } } -void Control::SetBackgroundImage( Image image ) -{ - Toolkit::Visual::Base visual = Toolkit::VisualFactory::Get().CreateVisual( image ); - if( visual ) - { - mImpl->RegisterVisual( Toolkit::Control::Property::BACKGROUND, visual, DepthIndex::BACKGROUND ); - } -} - void Control::ClearBackground() { mImpl->UnregisterVisual( Toolkit::Control::Property::BACKGROUND ); @@ -465,13 +411,15 @@ bool Control::EmitKeyEventSignal( const KeyEvent& event ) bool consumed = false; + consumed = mImpl->FilterKeyEvent( event ); + // signals are allocated dynamically when someone connects - if ( !mImpl->mKeyEventSignal.Empty() ) + if ( !consumed && !mImpl->mKeyEventSignal.Empty() ) { consumed = mImpl->mKeyEventSignal.Emit( handle, event ); } - if (!consumed) + if ( !consumed ) { // Notification for derived classes consumed = OnKeyEvent(event); @@ -611,8 +559,12 @@ void Control::OnStageConnection( int depth ) // The clipping renderer is only created if required. CreateClippingRenderer( *this ); + + // Request to be laid out when the control is connected to the Stage. + // Signal that a Relayout may be needed } + void Control::OnStageDisconnection() { mImpl->OnStageDisconnection(); @@ -657,8 +609,7 @@ void Control::OnSizeSet(const Vector3& targetSize) if( visual ) { Vector2 size( targetSize ); - SetBackgroundVisual( *mImpl, visual, size ); - + visual.SetTransformAndSize( Property::Map(), size ); // Send an empty map as we do not want to modify the visual's set transform } } @@ -719,14 +670,13 @@ void Control::OnRelayout( const Vector2& size, RelayoutContainer& container ) child.SetPosition( childOffset.x, childOffset.y ); } - container.Add( child, newChildSize ); } Toolkit::Visual::Base visual = mImpl->GetVisual( Toolkit::Control::Property::BACKGROUND ); if( visual ) { - SetBackgroundVisual( *mImpl, visual, size ); + visual.SetTransformAndSize( Property::Map(), size ); // Send an empty map as we do not want to modify the visual's set transform } } @@ -736,6 +686,7 @@ void Control::OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dime Vector3 Control::GetNaturalSize() { + DALI_LOG_INFO( gLogFilter, Debug::Verbose, "Control::GetNaturalSize for %s\n", Self().GetName().c_str() ); Toolkit::Visual::Base visual = mImpl->GetVisual( Toolkit::Control::Property::BACKGROUND ); if( visual ) {