Update keyboard focus direction enum for Control
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / popup / popup-impl.h
index 6a6fc0e..099e5e6 100755 (executable)
@@ -25,7 +25,9 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/public-api/controls/control-impl.h>
-#include <dali-toolkit/public-api/controls/popup/popup.h>
+#include <dali-toolkit/public-api/controls/table-view/table-view.h>
+#include <dali-toolkit/public-api/controls/text-controls/text-label.h>
+#include <dali-toolkit/devel-api/controls/popup/popup.h>
 #include <dali-toolkit/internal/controls/popup/popup-style-impl.h>
 
 namespace Dali
@@ -85,7 +87,7 @@ public:
   /**
    * @copydoc Toolkit::Popup::GetTitle
    */
-  const std::string& GetTitle() const;
+  std::string GetTitle() const;
 
   /**
    * @copydoc Toolkit::Popup::AddButton
@@ -117,7 +119,6 @@ public:
    */
   void HideTail();
 
-
   /**
    * Sets the style of the popup
    * @param[in] style The style of the popup
@@ -214,12 +215,12 @@ private:
   bool OnBackingTouched(Actor actor, const TouchEvent& event);
 
   /**
-   * Signal occurs when the mouse wheel event is occured on dimmed backing for the Popup.
-   * @param[in] actor The Actor got mouse wheel
-   * @param[in] event The Mouse Wheel Event.
+   * Signal occurs when the wheel event is occured on dimmed backing for the Popup.
+   * @param[in] actor The Actor got wheel
+   * @param[in] event The Wheel Event.
    * @return Whether to consume event or not.
    */
-  bool OnBackingMouseWheelEvent(Actor actor, const MouseWheelEvent& event);
+  bool OnBackingWheelEvent(Actor actor, const WheelEvent& event);
 
   /**
    * Signal occurs when the dialog has been touched.
@@ -246,14 +247,14 @@ private:
   virtual void OnControlChildAdd( Actor& child );
 
   /**
-   * @copydoc Toolkit::Control::OnControlSizeSet( const Vector3& size )
+   * @copydoc Control::OnRelayOut()
    */
-  virtual void OnControlSizeSet( const Vector3& size );
+  virtual void OnRelayout( const Vector2& size, RelayoutContainer& container );
 
   /**
-   * @copydoc Control::OnRelayOut()
+   * @copydoc Control::OnSetResizePolicy()
    */
-  virtual void OnRelayout( const Vector2& size, ActorSizeContainer& container );
+  virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension );
 
   /**
    * @copydoc Control::OnKeyEvent()
@@ -278,7 +279,12 @@ private:
   /**
    * @copydoc Control::GetNextKeyboardFocusableActor()
    */
-  Actor GetNextKeyboardFocusableActor(Actor currentFocusedActor, Toolkit::Control::KeyboardFocusNavigationDirection direction, bool loopEnabled);
+  Actor GetNextKeyboardFocusableActor(Actor currentFocusedActor, Toolkit::Control::KeyboardFocus::Direction direction, bool loopEnabled);
+
+  /**
+   * Create the root actor for the footer
+   */
+  void CreateFooter();
 
 private:
 
@@ -303,18 +309,19 @@ private:
   bool mShowing;                          ///< Popup is showing or not
 
   Layer mLayer;                           ///< Popup Layer (i.e. Dim backing and PopupBg reside in this)
-  Actor mPopupBg;                         ///< Popup Background (i.e. dialog reside in this)
+  Toolkit::TableView mPopupLayout;        ///< Popup layout (i.e. dialog reside in this)
   ImageActor mBacking;                    ///< Backing actor (dim effect)
 
   Actor mPreviousFocusedActor;            ///< Store the previous focused actor to restore the focus when popup hide
 
   Actor mBackgroundImage;                 ///< Stores the background image.
   Actor mButtonAreaImage;                 ///< Stores the button background image.
+  Toolkit::TextLabel mTitle;               ///< Stores the text title.
   Actor mContent;                         ///< Stores popup's content.
   Actor mBottomBg;                        ///< bottom button bar background. ImageActor is replaced with Actor due to hidden image.
   Actor mTailImage;                       ///< Stores the tail image
 
-  ActorContainer mButtons;                ///< Keeps track of the buttons added to this popup.
+  std::vector< Actor > mButtons;          ///< Keeps track of the buttons added to this popup.
   Toolkit::Popup::PopupState mState;      ///< Popup current state.
   Animation mAnimation;                   ///< The animation instance managing state changing.
   bool mAlterAddedChild;                  ///< Flag used to control whether children are reparented or not.