Page 1 of 1

TeeChart 2010 wishlist 2 (Zoom / Pan)

Posted: Thu Apr 01, 2010 7:41 am
by 9334475
Hi,
this is my wishlist on some basic stuff: Zooming and Scrolling:

Zoom

1. Current Zoom rectangle painted using pmNotXor method, looks quite unpleasant on a grainy background. Frame Color is unpredictable on complex bitmap
background. Can we have selection rectangle, similar to standard Windows Explorer? It should have regular frame with pmCopy method, blended background
and a standard Windows selection color (clHighlight)?

2. Other problem is that Zoom Rectangle shows considerable flicker when zooming, especially on large screens, and when Pen.Width is large, and Brush.Style=bsSolid.

3. ZoomRectangle->Pen.Width limited only to 6 pixels max (probably due to considerable flicker discussed above). Can we increase this number to 10-20?

4. Default Zoom Frame PenMode is 'round', can we have default setting as 'flat' (especially for pen.Width>1)?

5. Default Zoom Buton is mbLeft, which is odd. It is custom in most packages nowadays to use left button for scrolling instead (e.g. Google maps).

6. Possibility of having custom ZoomingCursor

Scroll

1. Default Scroll with Right mouse is defective, scrolling stops when mouse leaves ChartRect. This is odd and unnecessary feature. For example Google
Maps can be dragged outside of the panel boundaries.

2. Standard behavior of the Left and Right mouse buttons in Windows is slightly different (Right mouse is slightly deficient, so that MouseUp event is not
fired outside of the Application Form). As a result, simple swapping Left and Right mouse buttons in TChart brakes functionality of the Chart Zoom and
Pan. For example, trying to Zoom with Right mouse outside the ChartRect freezes Zoom event. Wishlist: make Left and Right buttons equivalent, so that
one could swap Zooming/Panning buttons without penalty.

3. Chart onScrolled (end of Scroll) event does not exist. It is very important to have this event to be able synchronize/update chart when amount of
data points is large (so that updating onScrolling is not an option).

4. Possibility of having custom ScrollingCursor


Regards,
odissey1

Re: TeeChart 2010 wishlist 2 (Zoom / Pan)

Posted: Thu Apr 01, 2010 1:40 pm
by narcis
Hi odissey1,
1. Current Zoom rectangle painted using pmNotXor method, looks quite unpleasant on a grainy background. Frame Color is unpredictable on complex bitmap
background. Can we have selection rectangle, similar to standard Windows Explorer? It should have regular frame with pmCopy method, blended background
and a standard Windows selection color (clHighlight)?
Ok, I have added this to the wish-list to be considered for inclusion in future releases with id. number TV52014773.
2. Other problem is that Zoom Rectangle shows considerable flicker when zooming, especially on large screens, and when Pen.Width is large, and Brush.Style=bsSolid.

3. ZoomRectangle->Pen.Width limited only to 6 pixels max (probably due to considerable flicker discussed above). Can we increase this number to 10-20?
Ok, added those issue to the same item in the wish-list: TV52014774.
4. Default Zoom Frame PenMode is 'round', can we have default setting as 'flat' (especially for pen.Width>1)?

5. Default Zoom Buton is mbLeft, which is odd. It is custom in most packages nowadays to use left button for scrolling instead (e.g. Google maps).
Both settings can be easily changed to fit your needs using TeeChart native template files, for example. Also, if you are a sourcecode customer you can modify TeeChart sources to fit your exact needs.
6. Possibility of having custom ZoomingCursor
Could you please give us some more details of what you would expect from this feature?
1. Default Scroll with Right mouse is defective, scrolling stops when mouse leaves ChartRect. This is odd and unnecessary feature. For example Google
Maps can be dragged outside of the panel boundaries.
Ok, added your suggestion to the list to be enhanced with ticket number TV52014775.
2. Standard behavior of the Left and Right mouse buttons in Windows is slightly different (Right mouse is slightly deficient, so that MouseUp event is not
fired outside of the Application Form). As a result, simple swapping Left and Right mouse buttons in TChart brakes functionality of the Chart Zoom and
Pan. For example, trying to Zoom with Right mouse outside the ChartRect freezes Zoom event. Wishlist: make Left and Right buttons equivalent, so that
one could swap Zooming/Panning buttons without penalty.
I'm not able to reproduce this one here. Can you please attach a simple example project we can run "as-is" to reproduce the problem here, describing the exact steps we should follow and let us know the TeeChart version you are using?
3. Chart onScrolled (end of Scroll) event does not exist. It is very important to have this event to be able synchronize/update chart when amount of
data points is large (so that updating onScrolling is not an option).
Have you tried doing this with OnZoom event? Also you could enable a flag in OnZoom which enabled some code in the OnAfterDraw event. Does this help?
4. Possibility of having custom ScrollingCursor
Could you also give us some more details of what you would expect from this feature?

Re: TeeChart 2010 wishlist 2 (Zoom / Pan)

Posted: Thu Apr 01, 2010 2:38 pm
by 9334475
Hi Narcis,

Please find attached demo with new class TAlphaBlendZoom, which I drafted for myself some time ago. It covers all wishlist items I mentioned above.
Included class TAlphaBlendZoom replaces original Zoom procedure in TeeChart, and slightly patches Pan.

Demo shows:
1. make Zoom alpha-blended
2. add onScrolled event
3. make Left mouse and Right mouse buttons interchangeable.
4. shows patch to Chart.pas 'MouseMove' procedure to allow unlimited mouse dragging
5. Introduces properties ZoomingCursor and PanningCursor (cursors to show while Zooming/panning)

Regards,
odissey1
(due to 500kB upload limit, EXE file uploaded separately below)




AlphaBlendedZoom_Ex.png
screenshot of the alpha blended zoom demo
AlphaBlendedZoom_Ex.png (33.22 KiB) Viewed 69902 times

AlphaBlendedZoom (full demo)

Posted: Thu Apr 01, 2010 2:41 pm
by 9334475
Full demo project

AlphaBlendZoom (full demo)

Posted: Thu Apr 01, 2010 2:43 pm
by 9334475
Full demo project

Re: TeeChart 2010 wishlist 2 (Zoom / Pan)

Posted: Thu Apr 01, 2010 2:56 pm
by narcis
Hi odissey1,

Thank you very much for your feedback. Steema office's will be closed from tomorrow until next Monday, both included, due to Easter holidays. We will check out your project and get back to you next week.

Have a nice weekend :!:

Re: TeeChart 2010 wishlist 2 (Zoom / Pan)

Posted: Thu Apr 01, 2010 3:21 pm
by 9334475
Hi Narcis,
Have a happy holiday!
odissey1

Re: TeeChart 2010 wishlist 2 (Zoom / Pan)

Posted: Tue Apr 06, 2010 9:40 am
by narcis
Hi odissey1,

Thanks, I did! Hope you had a good time too.

Thanks for the example project too. I've added it to the wish-list to be reviewed and investigated for future releases.