             layout.verticalScrollPosition = value;
     }
     
-    
+    //----------------------------------
+    //  horizontal,verticalScrollPositionDelta
+    //----------------------------------
+
+    public function horizontalScrollPositionDelta(unit:uint):Number
+    {
+        return (layout) ? layout.horizontalScrollPositionDelta(unit) : 0;     
+    }
+    
+    public function verticalScrollPositionDelta(unit:uint):Number
+    {
+        return (layout) ? layout.verticalScrollPositionDelta(unit) : 0;     
+    }
+    
+    //--------------------------------------------------------------------------
+    //
+    //  IViewport properties
+    //
+    //--------------------------------------------------------------------------        
+
     //----------------------------------
     //  contentWidth
     //---------------------------------- 

    //  layout
    //----------------------------------    
        
    private var _layout:ILayout;  // initialized in the ctor
        
    public function get layout():ILayout
    {
        return _layout;
    }

    /**
     * @private
     */
    public function set layout(value:LayoutBase):void
    {
        if (_layout == value)
            return;
        
        _layout = value;  
        if (_layout)
            _layout.target = this;
        invalidateSize();
        invalidateDisplayList();
    }
