X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=adaptors%2Fecore%2Fcommon%2Fecore-indicator-impl.h;h=544e92b2ab71d32e0d441d20a194e0cdb4b7cb49;hb=e83b0793131adcfc5b9a92239ba8403db5febb47;hp=47a2ac54c382e2db093462f9a74678990a4b256d;hpb=b46cd79dd6c74a453f5bcb852d51fbdc626eba85;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/adaptors/ecore/common/ecore-indicator-impl.h b/adaptors/ecore/common/ecore-indicator-impl.h index 47a2ac5..544e92b 100644 --- a/adaptors/ecore/common/ecore-indicator-impl.h +++ b/adaptors/ecore/common/ecore-indicator-impl.h @@ -23,9 +23,12 @@ #include #include #include +#include +#include // INTERNAL INCLUDES #include +#include #include #include #include @@ -193,6 +196,12 @@ public: // Dali::Internal::Adaptor::IndicicatorInterface */ virtual bool SendMessage( int messageDomain, int messageId, const void *data, int size ); + /** + * Update native indicator image + * @param[in] source Native indicator image source + */ + void UpdateIndicatorImage( Dali::Any source ); + private: /** * Initialize the indicator actors @@ -211,13 +220,19 @@ private: void SetForegroundImage( Dali::Texture texture ); /** + * Set the texture to be rendered as indicator foreground + * @param[in] image The foreground image. + */ + void SetForegroundNativeImage( Dali::Image image ); + + /** * Touch event callback. - * It should pass the valid touch event to indicator server + * It should pass the valid touch data to indicator server * * @param[in] indicator The indicator actor that was touched - * @param[in] touchEvent The touch event + * @param[in] touchData The touch data */ - bool OnTouched(Dali::Actor indicator, const TouchEvent& touchEvent); + bool OnTouched(Dali::Actor indicator, const TouchData& touchData); /** * Pan gesture callback. @@ -232,9 +247,9 @@ private: * Touch event callback on stage. * If stage is touched, hide showing indicator image * - * @param[in] touchEvent The touch event + * @param[in] touchEvent The touch data */ - void OnStageTouched(const Dali::TouchEvent& touchEvent); + void OnStageTouched(const Dali::TouchData& touchData); /** * Connect to the indicator service @@ -289,6 +304,17 @@ private: void LoadPixmapImage( Ecore_Ipc_Event_Server_Data *epcEvent ); /** + * Update top margin of the stage as much as indicator height + */ + void UpdateTopMargin(); + + /** + * Setup native indicator image + * @param[in] epcEvent The event containing the image data information + */ + void SetupNativeIndicatorImage( Ecore_Ipc_Event_Server_Data *epcEvent ); + + /** * Update the visibility and position of the actors */ void UpdateVisibility(); @@ -350,6 +376,11 @@ private: */ void OnAnimationFinished( Dali::Animation& animation ); + /** + * Set up native indicator image + */ + void SetupNativeIndicatorImage(); + private: // Implementation of ServerConnection::Observer /** * @copydoc Dali::Internal::Adaptor::ServerConnection::Observer::DataReceived() @@ -404,6 +435,7 @@ private: IndicatorBufferPtr mIndicatorBuffer; ///< class which handles indicator rendering PixmapId mPixmap; ///< Pixmap including indicator content + Dali::NativeImageSourcePtr mNativeImageSource; Dali::Renderer mForegroundRenderer; ///< Renderer renders the indicator foreground Dali::Renderer mBackgroundRenderer; ///< Renderer renders the indicator background @@ -444,6 +476,7 @@ private: Impl* mImpl; ///< Created on construction and destroyed on destruction. bool mBackgroundVisible; ///< Indicate whether background is visible + int mTopMargin; ///< Top margin of the stage for indicator }; } // Adaptor