Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2009-02

StringGrid.Options: goSmoothScroll vs goThumbTracking

5 messages · 3 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Graeme Geldenhuys

Hi,

Could anybody explain to me what the difference is?

I noticed that if I enabled both options I get the desired effect. Smooth scrolling and seeing all content scroll by as I move the scrollbar.

But what do they do on there own?
goSmoothScroll - I first thought this is what I wanted as described above, but on it's own it don't do that.
goThumbTracking - isn't this supposed to be the same as goSmoothScroll, compared to jumping columns or rows at a time.

There is no LCL reference help describing the available settings in TStringGrid.Options property.
http://lazarus-ccr.sourceforge.net/docs/lcl/grids/tgridoptions.html

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Graeme Geldenhuys
to Graeme Geldenhuys
Graeme Geldenhuys wrote 6 lines
But what do they do on there own? goSmoothScroll - I first thought this is what I wanted as described above, but on it's own it don't do that. goThumbTracking - isn't this supposed to be the same as goSmoothScroll, compared to jumping columns or rows at a time.

OK, I think I figured it out.

goSmoothScrolling - scrolls pixels at a time, not columns/rows. goThumbTracking - gives you a like preview of the contents as you move the scrollbar.

Now isn't it a bit pointless having goSmoothScrolling enabled, but goThumbTracking disabled by default? The content might scroll per pixel, but you don't see any content updating until _after_ you release the scrollbar thumb button.

I would think the more logical default would be to have both there options enabled by default. I'm using 0.9.26 and they are not both enabled by default.

PS:
If my description of these options are correct, I'll update the Grid docs and send a patch.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Hans-Peter Diettrich
to Graeme Geldenhuys
goSmoothScrolling - scrolls pixels at a time, not columns/rows. goThumbTracking - gives you a like preview of the contents as you move the scrollbar.

Right.

I would think the more logical default would be to have both there options enabled by default. I'm using 0.9.26 and they are not both enabled by default.

AFAIR that's the Delphi default, suitable for slow systems.

Thumb tracking was available for the original Windows controls. Smooth scrolling came later, when the typical systems had more processing power. Smooth scrolling IMO should be disregarded when the scroll distance becomes larger than one page, or when it's known that the user dragged the slider.

DoDi

Reply by email

Mattias Gaertner
to Graeme Geldenhuys: On Thu, Feb 19, 2009 at 10:18 AM, Graeme Geldenhuys OK, I think I figured it out.…
Show quoted text 29 lines
On Thu, Feb 19, 2009 at 10:18 AM, Graeme Geldenhuys wrote: > > But what do they do on there own? > goSmoothScroll - I first thought this is what I wanted as > described above, but on it's own it don't do that. > goThumbTracking - isn't this supposed to be the same as > goSmoothScroll, compared to jumping columns or rows at a time. OK, I think I figured it out. goSmoothScrolling - scrolls pixels at a time, not columns/rows. goThumbTracking - gives you a like preview of the contents as you move the scrollbar. Now isn't it a bit pointless having goSmoothScrolling enabled, but goThumbTracking disabled by default? The content might scroll per pixel, but you don't see any content updating until _after_ you release the scrollbar thumb button. I would think the more logical default would be to have both there options enabled by default. I'm using 0.9.26 and they are not both enabled by default. PS: If my description of these options are correct, I'll update the Grid docs and send a patch.

Has Delphi goThumbTracking and what is it the default value there?

Mattias

Reply by email

Graeme Geldenhuys
to Mattias Gaertner
Mattias Gaertner wrote 7 lines
> > goSmoothScrolling - scrolls pixels at a time, not columns/rows. > goThumbTracking - gives you a like preview of the contents as you move > the scrollbar. > Has Delphi goThumbTracking and what is it the default value there?

Yes, and it's not a default option in .Options property. Saying that, Delphi doesn't have goSmoothScrolling option. I only have Delphi 7.

Either way, with the available options in Lazarus (and some not being available in Delphi), I still think it's more logical to enable both options as I suggested. With the current default values, goSmoothScrolling makes no sense and has no affect.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email