scrollbar position range

scrollbar position range

Hi -
I am using XFT (and LOVE IT) with CVF I would like to plot a small portion of a large data set and use a scroll bar. this is working OK till I get into a very large data set 72000 points... then I can' use the mouse to move the scroll box past about half way, but I can if I click in the high end of the scroll window or the up arrow. what are the work arounds??

Thanks
Bill

9 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hello Bill,
Support for XFT is on my e-mail address, not on the Forum :-). You can drop me a compilable workspace and I'll take a look. Sounds like a 16-bit limitation somewhere.

Jugoslav

Jugoslav
www.xeffort.com

Jugoslav,

The WM_HSCROLL, WM_VSCROLL message use only the high-order word of wParam to pass in the scroll position, so the position is limited to 65,535. To get a higher resolution position call GetScrollInfo().

John

Yeah John, that was it. Btw, I drop an eye on the latest DFLOGM and it looks to me (didn't pass through the debugger) that the limit there will actually be 32768, since INTEGER(2) intermediate variable is used. A fix will be welcome :-).

Jugoslav

Jugoslav
www.xeffort.com

Jugoslav, what are you looking at? I don't see any INTEGER(2) variables being used...

Steve

Steve - Intel Developer Support

...because it isn't INTEGER(2), but an INTEGER*2 ;-)

	! WM_?SCROLL: 
	else if (msg .eq. WM_HSCROLL .or. msg .eq. WM_VSCROLL) then
        !will overflow when hiword(wparam>=32768):
	  int_2 = iand(ishft(wparam,-16), 16#ffff)
	  call DlgWmScroll( dlg, lparam, iand(wparam, 16#ffff), int(int_2) )

Jugoslav

Jugoslav
www.xeffort.com

...and if someone's at it, here's another bug in DFLOGM.f90 (it would be exposed in exotic situations, but...):

  subroutine DlgSetTitle( dlg, title )
!DEC$ ATTRIBUTES DEFAULT :: DlgSetChar

Jugoslav

Jugoslav
www.xeffort.com

I see I was looking in the wrong routine. That does look a bit suspicious - probably should be ZEXT rather than INT. Thanks.

Steve

Steve - Intel Developer Support

Hi all -

Jugoslav is just amazing!! Sent sample code and with in an hour he had it fixed - and it was a "limitation" (BUG) from CVF in the DFLOGM.F90 code.

Bill

Leave a Comment

Please sign in to add a comment. Not a member? Join today