void SetWrapMode(bool enable);
/**
+ * @deprecated
* @copydoc Toolkit::ScrollView::GetRefreshInterval
*/
int GetRefreshInterval() const;
/**
+ * @deprecated
* @copydoc Toolkit::ScrollView::SetRefreshInterval
*/
void SetRefreshInterval(int milliseconds);
/**
+ * @copydoc Toolkit::ScrollView::GetScrollupdateDistance
+ */
+ int GetScrollUpdateDistance() const;
+
+ /**
+ * @copydoc Toolkit::ScrollView::SetScrollUpdateDistance
+ */
+ void SetScrollUpdateDistance(int distance);
+
+ /**
* @copydoc Toolkit::ScrollView::GetAxisAutoLock
*/
bool GetAxisAutoLock() const;
*/
void RemoveOverlay(Actor actor);
+ /**
+ * @copydoc Toolkit::Internal::Scrollable::SetOvershootEffectColor
+ */
+ void SetOvershootEffectColor( const Vector4& color );
+
public: //Signals
/**
void HandleSnapAnimationFinished();
/**
- * Helper to start the refresh timer.
- */
- void StartRefreshTimer();
-
- /**
- * Helper to cancel the refresh timer.
+ * Checks if the property notifications are active and adds them if not
*/
- void CancelRefreshTimer();
+ void SetScrollUpdateNotification( bool enabled );
/**
* Refresh the ScrollView (used when animating to update application developer of changes)
* @return True if the refresh timer should be kept running.
*/
- bool OnRefreshTick();
+ void OnScrollUpdateNotification(Dali::PropertyNotification& source);
private:
LockAxis mLockAxis;
Timer mTouchDownTimer; ///< Used to interrupt snap-animation. This cannot be done in OnTouchEvent without breaking fast flick behavior.
- Timer mOvershootRefreshTimer;
- Timer mRefreshTimer; ///< Refresh timer is used to provide the Application developer with updates as animations run.
- int mRefreshIntervalMilliseconds; ///< Refresh timer interval.
+
+ float mScrollUpdateDistance; ///< Distance for scrolling to travel for the scroll update notifications
+ Dali::PropertyNotification mScrollXUpdateNotification; ///< scroll x position update notification
+ Dali::PropertyNotification mScrollYUpdateNotification; ///< scroll y position update notification
Actor mInternalActor; ///< Internal actor (we keep internal actors in here e.g. scrollbars, so we can ignore it in searches)
bool mAlterChild:1; ///< Internal flag to control behavior of OnChildAdd/OnChildRemove when Adding internal Actors.
bool mDefaultMaxOvershoot:1; ///< Whether to use default max overshoot or application defined one
bool mUserSetPosition:1; ///< SetScrollPosition has been called, return this position until internals get control of scroll position again
+ bool mCanScrollHorizontal:1; ///< Local value of our property to check against
+ bool mCanScrollVertical:1; ///< Local value of our property to check against
};
} // namespace Internal