Emit a signal when layout is activated in ItemView
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / scrollable / item-view / item-view-impl.h
index 16f0b0a..b6a2d96 100644 (file)
@@ -53,6 +53,11 @@ class ItemView : public Scrollable
 {
 public:
 
+  // Signals
+  typedef Toolkit::ItemView::LayoutActivatedSignalType LayoutActivatedSignalType;
+
+public:
+
   /**
    * Create a new ItemView.
    * @param[in] factory The factory which provides ItemView with items.
@@ -284,6 +289,25 @@ public:
    */
   void GetItemsRange(ItemRange& range);
 
+  /**
+   * @copydoc Toolkit::ItemView::LayoutActivatedSignal()
+   */
+  LayoutActivatedSignalType& LayoutActivatedSignal()
+  {
+    return mLayoutActivatedSignal;
+  }
+
+  /**
+   * Connects a callback function with the object's signals.
+   * @param[in] object The object providing the signal.
+   * @param[in] tracker Used to disconnect the signal.
+   * @param[in] signalName The signal to connect to.
+   * @param[in] functor A newly allocated FunctorDelegate.
+   * @return True if the signal was connected.
+   * @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor.
+   */
+  static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor );
+
 private:
 
   /**
@@ -593,6 +617,8 @@ private:
 
   Vector3 mItemsParentOrigin;
   Vector3 mItemsAnchorPoint;
+
+  LayoutActivatedSignalType mLayoutActivatedSignal;
 };
 
 } // namespace Internal