X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Fevent%2Factors%2Factor-impl.h;h=d601a2011a137ce5a1c773beecd8d34e1290d2b3;hb=cf6aefb867c26e7544b4dbdcb09488d28d1e17c9;hp=d4dd6e847782986dc36e158173ea71429510ec37;hpb=d6a209d6a02b0d8cc81a52f48de0947bb2dda40e;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/event/actors/actor-impl.h b/dali/internal/event/actors/actor-impl.h index d4dd6e8..d601a20 100644 --- a/dali/internal/event/actors/actor-impl.h +++ b/dali/internal/event/actors/actor-impl.h @@ -36,10 +36,6 @@ #include #include -#ifdef DYNAMICS_SUPPORT -#include -#endif - namespace Dali { @@ -56,10 +52,8 @@ class ActorGestureData; class Animation; class RenderTask; class Renderer; -struct DynamicsData; -typedef IntrusivePtr< Actor > ActorPtr; -typedef std::vector< Dali::Actor > ActorContainer; // Store handles to return via public-api +typedef std::vector< ActorPtr > ActorContainer; typedef ActorContainer::iterator ActorIter; typedef ActorContainer::const_iterator ActorConstIter; @@ -233,7 +227,7 @@ public: /** * @copydoc Dali::Actor::GetChildAt */ - Dali::Actor GetChildAt( unsigned int index ) const; + ActorPtr GetChildAt( unsigned int index ) const; /** * Retrieve a reference to Actor's children. @@ -762,6 +756,19 @@ public: */ const Vector4& GetCurrentWorldColor() const; + /** + * @copydoc Dali::Actor::GetHierarchyDepth() + */ + int GetHierarchyDepth() const + { + if( mIsOnStage ) + { + return static_cast(mDepth); + } + + return -1; + } + public: // Size negotiation virtual functions @@ -1225,93 +1232,8 @@ public: */ void RemoveRenderer( unsigned int index ); -#ifdef DYNAMICS_SUPPORT - - // Dynamics - - /// @copydoc Dali::Actor::DisableDynamics - void DisableDynamics(); - - /// @copydoc Dali::Actor::EnableDynamics(Dali::DynamicsBodyConfig) - DynamicsBodyPtr EnableDynamics(DynamicsBodyConfigPtr bodyConfig); - - /// @copydoc Dali::Actor::GetDynamicsBody - DynamicsBodyPtr GetDynamicsBody() const; - - /// @copydoc Dali::Actor::AddDynamicsJoint(Dali::Actor,const Vector3&) - DynamicsJointPtr AddDynamicsJoint( ActorPtr attachedActor, const Vector3& offset ); - - /// @copydoc Dali::Actor::AddDynamicsJoint(Dali::Actor,const Vector3&,const Vector3&) - DynamicsJointPtr AddDynamicsJoint( ActorPtr attachedActor, const Vector3& offsetA, const Vector3& offsetB ); - - /// @copydoc Dali::Actor::GetNumberOfJoints - const int GetNumberOfJoints() const; - - /// @copydoc Dali::Actor::GetDynamicsJointByIndex - DynamicsJointPtr GetDynamicsJointByIndex( const int index ) const; - - /// @copydoc Dali::Actor::GetDynamicsJoint - DynamicsJointPtr GetDynamicsJoint( ActorPtr attachedActor ) const; - - /// @copydoc Dali::Actor::RemoveDynamicsJoint - void RemoveDynamicsJoint( DynamicsJointPtr joint ); - - /** - * Hold a reference to a DynamicsJoint - * @param[in] joint The joint - */ - void ReferenceJoint( DynamicsJointPtr joint ); - - /** - * Release a reference to a DynamicsJoint - * @param[in] joint The joint - */ - void ReleaseJoint( DynamicsJointPtr joint ); - - /** - * Set this actor to be the root actor in the dynamics simulation - * All children of the actor are added/removed from the simulation. - * @param[in] flag When true sets this actor to be the simulation world root actor and - * if OnStage() all dynamics enabled child actors are added to the simulation, - * when false stops this actor being the simulation root and if OnStage() all - * dynamics enabled child actors are removed from the simulation. - */ - void SetDynamicsRoot(bool flag); - -private: - /** - * Check if this actor is the root actor in the dynamics simulation - * @return true if this is the dynamics root actor. - */ - bool IsDynamicsRoot() const; - - /** - * Add actor to the dynamics simulation - * Invoked when the actor is staged, or it's parent becomes the simulation root - */ - void ConnectDynamics(); - - /** - * Remove actor from the dynamics simulation - * Invoked when the actor is unstaged, or it's parent stops being the the simulation root - */ - void DisconnectDynamics(); - - /** - * An actor in a DynamicsJoint relationship has been staged - * @param[in] actor The actor passed into AddDynamicsJoint() - */ - void AttachedActorOnStage( Dali::Actor actor ); - - /** - * An actor in a DynamicsJoint relationship has been unstaged - * @param[in] actor The actor passed into AddDynamicsJoint() - */ - void AttachedActorOffStage( Dali::Actor actor ); - -#endif // DYNAMICS_SUPPORT - public: + /** * Converts screen coordinates into the actor's coordinate system. * @note The actor coordinates are relative to the top-left (0.0, 0.0, 0.5) @@ -1643,17 +1565,6 @@ protected: */ float CalculateSizeZ( const Vector2& size ) const; - /** - * Return the depth in the hierarchy of the actor. - * The value returned is only valid if the actor is on the stage. - * - * @return Depth of the actor in the hierarchy - */ - unsigned int GetDepth() const - { - return mDepth; - } - public: // Default property extensions from Object @@ -1791,7 +1702,7 @@ private: * For use in external (CustomActor) derived classes. * This is called after the atomic ConnectToStage() traversal has been completed. */ - virtual void OnStageConnectionExternal( unsigned int depth ) + virtual void OnStageConnectionExternal( int depth ) { } @@ -1863,7 +1774,7 @@ private: /** * @brief Ensure the relayout data is allocated */ - void EnsureRelayoutData() const; + void EnsureRelayoutData(); /** * @brief Apply the size set policy to the input size @@ -1882,11 +1793,7 @@ protected: Vector3* mAnchorPoint; ///< NULL means AnchorPoint::DEFAULT. AnchorPoint is non-animatable struct RelayoutData; - mutable RelayoutData* mRelayoutData; ///< Struct to hold optional collection of relayout variables - -#ifdef DYNAMICS_SUPPORT - DynamicsData* mDynamicsData; ///< optional physics data -#endif + RelayoutData* mRelayoutData; ///< Struct to hold optional collection of relayout variables ActorGestureData* mGestureData; ///< Optional Gesture data. Only created when actor requires gestures @@ -1906,12 +1813,11 @@ protected: std::string mName; ///< Name of the actor unsigned int mId; ///< A unique ID to identify the actor starting from 1, and 0 is reserved - unsigned int mDepth :12; ///< The depth in the hierarchy of the actor. Only 4096 levels of depth are supported + unsigned short mDepth :12; ///< The depth in the hierarchy of the actor. Only 4096 levels of depth are supported const bool mIsRoot : 1; ///< Flag to identify the root actor const bool mIsRenderable : 1; ///< Flag to identify that this is a renderable actor const bool mIsLayer : 1; ///< Flag to identify that this is a layer bool mIsOnStage : 1; ///< Flag to identify whether the actor is on-stage - bool mIsDynamicsRoot : 1; ///< Flag to identify if this is the dynamics world root bool mSensitive : 1; ///< Whether the actor emits touch event signals bool mLeaveRequired : 1; ///< Whether a touch event signal is emitted when the a touch leaves the actor's bounds bool mKeyboardFocusable : 1; ///< Whether the actor should be focusable by keyboard navigation