oops… bad paste. I meant this: 

recalculateVerticalScrollBar
        | interval delta pageDelta visibleRows numberOfRows |
        
        self hasDataSource ifFalse: [ ^ self ].

        self recalculateVerticalScrollBarVisibilityIfHidden: [ ^ self ].
         
        visibleRows := self container calculateExactVisibleRows.        
        numberOfRows := self dataSource numberOfRows.
        interval := (visibleRows / numberOfRows) asFloat.
        delta := 1/visibleRows.
        pageDelta := visibleRows.
        self verticalScrollBar 
                scrollDelta: delta pageDelta: pageDelta;
                interval: interval



> On 07 Jul 2015, at 16:58, Esteban Lorenzano <[email protected]> wrote:
> 
> no idea :)
> in fact, I was trying to fix that right now (scroll bars are not working well 
> in FT, yet). 
> most of this I took it from older list implementation and I’m not quitte sure 
> how they work. 
> 
> I think a better implementation would be: 
> 
> recalculateVerticalScrollBar
>       | interval delta pageDelta visibleRows numberOfRows |
>       
>       self hasDataSource ifFalse: [ ^ self ].
> 
>       self recalculateVerticalScrollBarVisibilityIfHidden: [ ^ self ].
>        
>       visibleRows := self container calculateExactVisibleRows.        
>       numberOfRows := self dataSource numberOfRows.
>       interval := (visibleRows / numberOfRows) asFloat.
>       delta := 1/visibleRows.
>       pageDelta := (self innerBounds height - 10) / visibleRows.
>       self verticalScrollBar 
>               scrollDelta: delta pageDelta: pageDelta;
>               interval: interval
> 
> 
> but it still does not feels “good”. 
> Any help here is welcome :)
> 
> Esteban
> 
> 
>> On 07 Jul 2015, at 16:41, Stephan Eggermont <[email protected]> wrote:
>> 
>> I don't understand the step size of the fast table scroll bar.
>> What does container bottom have to do with delta & pageDelta?
>> 
>> recalculateVerticalScrollBar
>>      | interval delta pageDelta visibleRows numberOfRows |
>>      
>>      self hasDataSource ifFalse: [ ^ self ].
>> 
>>      self recalculateVerticalScrollBarVisibilityIfHidden: [ ^ self ].
>>      
>>      visibleRows := self container calculateExactVisibleRows.        
>>      numberOfRows := self dataSource numberOfRows.
>>      interval := (visibleRows / numberOfRows) asFloat.
>>      delta := 1/(self container bottom).
>>      pageDelta := (self innerBounds height - 10) / (self container bottom).
>>      self verticalScrollBar
>>              scrollDelta: delta pageDelta: pageDelta;
>>              interval: interval
>> 
>> 
> 


Reply via email to