--- a/emailuis/uicomponents/inc/fstreevisualizerbase.h Mon Jan 18 20:08:26 2010 +0200
+++ b/emailuis/uicomponents/inc/fstreevisualizerbase.h Tue Jan 26 11:45:42 2010 +0200
@@ -73,6 +73,13 @@
* Contains the visual structure of the list.
*
*/
+
+enum TUpdatedByPhysic{
+ ENotUpdatedByPhisic = 0,
+ EUpdatedByPhisic,
+ EUpdatedByPhisicEnd
+ };
+
NONSHARABLE_CLASS( TWorld )
{
@@ -333,7 +340,7 @@
/**
* This method is called when the viewport changes.
*/
- virtual void ViewPortUpdatedL( TViewPort& aViewPort ) = 0;
+ virtual void ViewPortUpdatedL( TViewPort& aViewPort, TUpdatedByPhysic aUpdateByPhysic = ENotUpdatedByPhisic ) = 0;
};
@@ -354,7 +361,7 @@
* Center viewport around position aPosition. If aInformUpdate is set to ETrue, observer
* will be signalled.
*/
- void SetCenterPositionL( const TPoint& aPosition, TBool aInformUpdate = ETrue );
+ void SetCenterPositionL( const TPoint& aPosition, TBool aInformUpdate = ETrue, TUpdatedByPhysic aUpdateByPhysic = ENotUpdatedByPhisic );
/**
* Returns viewport position (i.e. topleft corner).
@@ -382,6 +389,11 @@
void GetVisibleItemsL( RArray<TFsTreeItemId>& aItemsToBeRemoved, RArray<TFsTreeItemId>& aItemsToBeAdded, TInt& aOffset, TBool& aFullUpdate );
/**
+ * Get items visible in viewport's area.
+ */
+ void GetVisibleItemsL(RArray<TFsTreeItemId>& aVisible, TInt& aOffset);
+
+ /**
* Returns ETrue if the world is higher than viewport.
*/
TBool IsScrollBarNeeded() const;
@@ -455,7 +467,9 @@
/**
* Called when viewport is updated.
*/
- void UpdatedL();
+ void UpdatedL(TUpdatedByPhysic aUpdateByPhysic = ENotUpdatedByPhisic);
+
+
private: // from TWorld::MObserver
@@ -1905,7 +1919,7 @@
private: // from TViewPort::MObserver
- virtual void ViewPortUpdatedL( TViewPort& aViewPort );
+ virtual void ViewPortUpdatedL( TViewPort& aViewPort, TUpdatedByPhysic aUpdateByPhysic = ENotUpdatedByPhisic);
// TREE OPTIMIZATIONS