Thank you Thomas for your quick answer.
I got it working except for one thing which is major for me. Let me explain.
All transformations such as zoom and pan are working fine with the history
now.
My only problem is views. Whenever I set a new view via
canvas.setFragmentIdentifier("MyView");
It will be stored into the history but when I hit back it brings me back but
not at the same zoom level I was prior to calling setFragmentIdentifier.
If I can nail this one I will be a happy camper :)
I suspect I need in this case to store the ViewBoxTransform in history
instead of the RederingTransform
But if so how can I distinguish between a regular interaction(zoom, pan)
and a setFragmentIdentifier call?
Thanks again,
Luc
thomas.deweese wrote:
>
> Hi Luc,
>
> Luc_B <[email protected]> wrote on 06/29/2009 04:03:39 PM:
>
>> So I did my test by choosing the "Transform..." menu item. I did a bunch
> of
>> transforms and the next and previous menu item would never become
> enabled...
>>
>> This did not work until I clicked on the Stop button that I noticed was
>> enabled. Then all my transformations would trigger the
> gvtRenderingCompleted
>> event and therefor update the transformHistory object...
>
> Ok, I see the problem. It used to be that all rendering transform
> changes caused a gvtRenderingComplete, that is no longer the case for
> 'interactive' documents - i.e. ones with script and/or animation. So
> the right thing to do now is to register a JGVTComponentListener with
> the canvas to catch componentTransformChanged events instead.
>
>> thomas.deweese wrote:
>> >
>> > Hi Luc,
>> >
>> >> Luc_B wrote:
>> >> >
>> >> > I am trying to implement a back / forward history in the svg
> whenever
>> > a
>> >> > user has panned or zoomed.
>> >> >
>> >> > I have tried to reuse the TransformHistory class from the
> SVGBrowser
>> > but
>> >> > they seem to only store the RenderingTransform at load. I need more
>
>> > than
>> >> > that.
>> >
>> > In my tests it records all my pan and zoom actions. Are you
> including
>> > the code from the JSVGViewerFrame that notifies the history class of
>> > transform changes?
>> >
>> >> > I want to know what AffineTransform should I store so when the user
>
>> > hits
>> >> > back in order to show him where he was before.
>> >
>> > 'canvas.getRenderingTransform()'.
>> >
>> >> > I am also wondering how to restore the svg view to that specific
>> > point...
>> >
>> > 'canvas.setRenderingTransform( affine );'
>> >
>> > This is all in the JSVGViewerFrame class already. Just look for
> all
>> > the lines with 'transformHistory'.
>> >
>> >
>>
>> --
>> View this message in context: http://www.nabble.com/Pan-and-zoom-
>> navigation-history-tp24074338p24260583.html
>> Sent from the Batik - Users mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>
>
--
View this message in context:
http://www.nabble.com/Pan-and-zoom-navigation-history-tp24074338p24277832.html
Sent from the Batik - Users mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]