X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftransition-effects%2Fcube-transition-cross-effect-impl.h;h=d9ce90fd56b5a5b903d236975d2cbc624ed36bce;hp=dfe8eca9c067aa95f8894659ea00a79fbd68bcc4;hb=b694e7e2ae624e206e1548b1a863c554eb9cd4d7;hpb=e2eda444afbe82e9591fe198eef339227f90a616 diff --git a/dali-toolkit/internal/transition-effects/cube-transition-cross-effect-impl.h b/dali-toolkit/internal/transition-effects/cube-transition-cross-effect-impl.h index dfe8eca..d9ce90f 100644 --- a/dali-toolkit/internal/transition-effects/cube-transition-cross-effect-impl.h +++ b/dali-toolkit/internal/transition-effects/cube-transition-cross-effect-impl.h @@ -1,26 +1,27 @@ -#ifndef __DALI_TOOLKIT_INTERNAL_CUBE_TRANSITION_CROSS_EFFECT_H__ -#define __DALI_TOOLKIT_INTERNAL_CUBE_TRANSITION_CROSS_EFFECT_H__ - -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Flora License, Version 1.0 (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 DALI_TOOLKIT_INTERNAL_CUBE_TRANSITION_CROSS_EFFECT_H +#define DALI_TOOLKIT_INTERNAL_CUBE_TRANSITION_CROSS_EFFECT_H + +/* + * 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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. + * + */ // EXTERNAL INCLUDES // INTERNAL INCLUDES -#include +#include #include namespace Dali @@ -44,7 +45,7 @@ public: /** * @copydoc Toolkit::CubeTransitionCrossEffect::New */ - static Toolkit::CubeTransitionCrossEffect New(unsigned int numRows, unsigned int numColumns, Size viewAreaSize); + static Toolkit::CubeTransitionCrossEffect New( unsigned int numRows, unsigned int numColumns ); protected: @@ -58,34 +59,36 @@ protected: */ virtual void OnStartTransition( Vector2 panPosition, Vector2 panDisplacement ); - /** - * @copydoc Toolkit::Internal::CubeTransitionEffect::OnStopTransition - */ - virtual void OnStopTransition(); - private: /** - * Construct a new CubeTransitionCrossEffect object + * @brief Construct a new CubeTransitionCrossEffect object + * * @param[in] numRows How many rows of cubes * @param[in] numColumns How many columns of cubes - * @param[in] viewAreaSize The size of view area for this transition effect */ - CubeTransitionCrossEffect( unsigned int numRows, unsigned int numColumns, Size viewAreaSize ); + CubeTransitionCrossEffect( unsigned int numRows, unsigned int numColumns ); /** - * Set up animation to an Actor + * @brief Set up animation to an Actor + * This will also displace the cubes in the z direction by mCubeDisplacement and spread them apart on the xy plane + * given by the closeness of displacementCentre to the XY plane at 0. + * * @param[in] actorIndex The index of the cube in the cube array * @param[in] angle The angle of the rotation animation - * @param[in] axis The axis of the rotation animation - * @param[in] resetTranslation The translation used to reset the actor position before animation + * @param[in] the centre to "explode" the tiles outwards from */ - - void SetupAnimation( unsigned int actorIndex, float angle, const Vector3 axis, Vector3 resetTranslation ); + void SetupAnimation( unsigned int actorIndex, unsigned int x, unsigned int y, float angle, const Vector3 axis, const Vector3& displacementCentre ); private: - float mDisplacementRatio; + /** + * The factor that determines how spread apart from each other the cubes will go + * when they are displaced during the transition animation. + * The larger the value the more the spread apart the cubes will be. + * it should be in the range (0.0, +infinity) + */ + float mDisplacementSpreadFactor; }; //class CubeTransitionCrossEffect @@ -93,26 +96,26 @@ private: // Helpers for public-api forwarding methods -inline Internal::CubeTransitionCrossEffect& GetImpl(Dali::Toolkit::CubeTransitionCrossEffect& obj) +inline Internal::CubeTransitionCrossEffect& GetImpl( Dali::Toolkit::CubeTransitionCrossEffect& obj ) { - DALI_ASSERT_ALWAYS(obj); + DALI_ASSERT_ALWAYS( obj ); - Dali::BaseObject& handle = obj.GetBaseObject(); + Dali::RefObject& handle = obj.GetImplementation(); - return static_cast(handle); + return static_cast< Internal::CubeTransitionCrossEffect& >( handle ); } -inline const Internal::CubeTransitionCrossEffect& GetImpl(const Dali::Toolkit::CubeTransitionCrossEffect& obj) +inline const Internal::CubeTransitionCrossEffect& GetImpl( const Dali::Toolkit::CubeTransitionCrossEffect& obj ) { - DALI_ASSERT_ALWAYS(obj); + DALI_ASSERT_ALWAYS( obj ); - const Dali::BaseObject& handle = obj.GetBaseObject(); + const Dali::RefObject& handle = obj.GetImplementation(); - return static_cast(handle); + return static_cast< const Internal::CubeTransitionCrossEffect& >( handle ); } } // namespace Toolkit } // namespace Dali -#endif /* __DALI_TOOLKIT_INTERNAL_CUBE_TRANSITION_CROSS_EFFECT_H_ */ +#endif // DALI_TOOLKIT_INTERNAL_CUBE_TRANSITION_CROSS_EFFECT_H