*/
// EXTERNAL INCLUDES
-#include <dali/public-api/actors/image-actor.h>
#include <dali/public-api/actors/layer.h>
#include <dali/public-api/adaptor-framework/timer.h>
#include <dali/public-api/animation/animation.h>
/**
* @brief Create Dimmed Backing (covers all content behind the dialog).
*
- * @return The backing actor.
+ * @return The backing control.
*/
- ImageActor CreateBacking();
+ Toolkit::Control CreateBacking();
/**
* @brief Creates the lower area within the popup.
/**
* Called when the popup is directly or indirectly parented to the stage.
*/
- virtual void OnControlStageConnection();
+ virtual void OnStageConnection( int depth );
/**
* From Control; called after a child has been added to the owning actor.
* @param[in] child The child which has been added.
*/
- virtual void OnControlChildAdd( Actor& child );
+ virtual void OnChildAdd( Actor& child );
/**
* @copydoc Control::OnRelayOut()
private:
+ /**
+ * Recursively add any focusable actors or layout containers to the provided vector.
+ * Include the top level actor if it is a layout container.
+ *
+ * @param[in] parent The actor to start from
+ * @param[in/out] focusableActors The vector to add focusable actors to
+ */
+ void AddFocusableChildren( Actor parent, std::vector< Actor >& focusableActors );
+
+ /**
+ * Recursively add any focusable actors or layout containers to the provided vector.
+ *
+ * @param[in] parent The actor to start from
+ * @param[in/out] focusableActors The vector to add focusable actors to
+ */
+ void AddFocusableChildrenRecursive( Actor parent, std::vector< Actor >& focusableActors );
+
+private:
+
// Undefined.
Popup(const Popup&);
Layer mLayer; ///< Popup Layer (i.e. Dim backing and PopupBg reside in this).
Toolkit::TableView mPopupLayout; ///< Popup Background (i.e. dialog reside in this).
- ImageActor mBacking; ///< Backing actor (dim effect).
+ Toolkit::Control mBacking; ///< Backing actor (dim effect).
Actor mPreviousFocusedActor; ///< Store the previous focused actor to restore the focus when popup hide.
Actor mTailImage; ///< Stores the tail image.
Actor mPopupContainer; ///< This actor is used to house the background image and the main popup layout.