X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fintegration-api%2Fscene.h;h=0d8d0445a9714b7d92f25819351c64e010efd2df;hb=b76d87cae033e99312cbe5d3cb860fd58dcca315;hp=cf3d71b18feed0bd48a3e912027be3100d32202d;hpb=6705d5406c29a85df3cf63523b8613d58824b4a3;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/integration-api/scene.h b/dali/integration-api/scene.h index cf3d71b..0d8d044 100755 --- a/dali/integration-api/scene.h +++ b/dali/integration-api/scene.h @@ -55,17 +55,18 @@ class DALI_CORE_API Scene : public BaseHandle public: typedef Signal< void () > EventProcessingFinishedSignalType; ///< Event Processing finished signal type typedef Signal< void (const Dali::KeyEvent&) > KeyEventSignalType; ///< Key event signal type + typedef Signal< bool (const Dali::KeyEvent&) > KeyEventGeneratedSignalType; ///< key event generated signal type typedef Signal< void (const Dali::TouchData&) > TouchSignalType; ///< Touch signal type typedef Signal< void (const Dali::WheelEvent&) > WheelEventSignalType; ///< Touched signal type /** * @brief Create an initialized Scene handle. * - * @param[in] size The size of the scene in pixels as a Vector + * @param[in] surface Binds this rendering surface to this scene * * @return a handle to a newly allocated Dali resource. */ - static Scene New( const Size& size ); + static Scene New( Integration::RenderSurface& surface ); /** * @brief Downcast an Object handle to Scene handle. @@ -202,6 +203,11 @@ public: void SetSurface( Integration::RenderSurface& surface ); /** + * @brief Informs the scene that the set surface has been resized. + */ + void SurfaceResized( bool forceUpdate ); + + /** * @brief Gets the rendering surface bound to the scene * * @return The render surface @@ -209,6 +215,11 @@ public: Integration::RenderSurface* GetSurface() const; /** + * @brief Discards this Scene from the Core. + */ + void Discard(); + + /** * @brief Retrieve the Scene that the given actor belongs to. * @return The Scene. */ @@ -244,6 +255,22 @@ public: KeyEventSignalType& KeyEventSignal(); /** + * @brief The user would connect to this signal to get a KeyEvent when KeyEvent is generated. + * + * If the control already consumed key event, KeyEventProcessor do not need to Emit keyEvent. + * Therefore, KeyinputManager first checks whether KeyEvent is generated as KeyEventGeneratedSignal. + * After that keyEventProcessor must invoke KeyEvent only if KeyEventGeneratedSignal () is not consumed. + * + * A callback of the following type may be connected: + * @code + * bool YourCallbackName(const KeyEvent& event); + * @endcode + * + * @return The return is true if KeyEvent is consumed, otherwise false. + */ + KeyEventGeneratedSignalType& KeyEventGeneratedSignal(); + + /** * @brief This signal is emitted when the screen is touched and when the touch ends * (i.e. the down & up touch events only). *