Thomas,

I came up with a solution in the end (perhaps not the best one but at
least it works).

The problem appeared to be in the AbstractXXXInteractor classes provided
in the org.apache.batik.swing.gvt package. The mouseExited() methods
they contained terminated the interactor. In our case this was
terminating the interactor when the mouse went over one of our objects
which were placed on top of the JSVGCanvas object.

I provided an overridden class for each Interactor that I wanted to use.
These overridden classes have mouseExited() methods which do nothing,
thus preventing the one in the base class from being executed and
terminating the interaction.

This all works quite well although it does have the slight side effect
in that the interaction does not terminate if the mouse really does
leave the JSVGCanvas object.

Thanks for your help,

Rob

-----Original Message-----
From: Thomas DeWeese [mailto:[EMAIL PROTECTED] 
Sent: 08 March 2004 13:33
To: [EMAIL PROTECTED]
Subject: Re: JSVGCanvas interactors

Hi Rob,

Wilkins, Rob wrote:

> Thanks for the tip. I tried adding the following methods to our
derived
> class but they don't seem to be getting called:
> 
> Any ideas why they wouldn't be called? Or any other ideas that would
> solve our strange problem?

    Unfortunately not.  As I said I believe this is a AWT/Swing Issue,
and I don't know enough about event dispatch to know how a
component can change it.  Just a thought, but I suppose scrollbars
must do what you want you might take a look at them.  There
might be a "focus grab" function or something.

> 
> Thanks in advance,
> 
> Rob
> 
> -----Original Message-----
> From: Thomas DeWeese [mailto:[EMAIL PROTECTED] 
> Sent: 05 March 2004 14:35
> To: [EMAIL PROTECTED]
> Subject: Re: JSVGCanvas interactors
> 
> Hi Rob,
> 
>     I suspect that this is a awt/swing issue.  So you need to change
> the default swing event dispatching in the JSVGCanvas so that when
> an interactor is active it doesn't dispatch events to child
> components.  To be honest I don't know exactly how this would be done,
> it might be that you could override getComponentAt(...) to always
> return this when interactor!= null.
> 
> Wilkins, Rob wrote:
> 
> 
>>
>>Hello,
>>
>> 
>>
>>We've written an application that allows the user to place objects on 
>>top of an object derived from a JSVGCanvas object (using the 
>>JSVGCanvas.add()). The derived object is placed within a
> 
> JSVGScrollPane. 
> 
>>This all works really well.
>>
>> 
>>
>>However, we've noticed that should the user trigger the use of one of 
>>the Interactors (for example the rubber band zoom interactor) when the
> 
> 
>>mouse moves over one of our overlayed objects the interaction via the 
>>Interactor is terminated.
>>
>> 
>>
>>What do we need to do to allow the mouse to move over our overlayed 
>>objects but maintain the interaction that is already in progress (if 
>>there is one)?
>>
>> 
>>
>>Thanks,
>>
>> 
>>
>>Rob
>>
>> 
>>
>>-------------------------------------------------------------------
>>
>>Rob Wilkins,
>>
>>Tandberg Television,  Control & Management Software,
>>
>>Strategic Park, Comines Way , Hedge End, Southampton ,
>>
>>Hampshire , SO30 4DA .
>>
>> 
>>
>>Tel: (023) 8057 3116 (Int. Ex 3116) Fax: (023)  8057 3341
>>
>>E-Mail:  [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>>
>> 
>>
>>
>>
>>
> 
>
************************************************************************
> ***********
> 
>>This email, its content and any attachments is PRIVATE AND
>>CONFIDENTIAL to TANDBERG Television. If received in error please
>>notify the sender and destroy the original message and attachments.
>>
>>www.tandbergtv.com
>>
> 
>
************************************************************************
> ***********
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



***********************************************************************************
This email, its content and any attachments is PRIVATE AND
CONFIDENTIAL to TANDBERG Television. If received in error please
notify the sender and destroy the original message and attachments.

www.tandbergtv.com
***********************************************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to