Hi,

On Tue, 2002-08-20 at 22:20, Thomas E Deweese wrote: 
>     You are the second person to report redraw issues when the
> JSVGCanvas is embedded in other Swing components.  If possible can you
> send me a self contained example that shows this?

I've managed to implement a work around; I now extend JSVGComponent, and
call renderer.repaint (new Rectangle (0, 0, 100, 150)) in my
UpdateThread.

ie,
if (isRenderComplete())
{
   UpdateManager updateMgr = getUpdateManager();
   RunnableQueue svgEventQueue = updateMgr.getUpdateRunnableQueue();
   svgEventQueue.invokeLater(new Runnable()
   {
      public void run ()
      {
         try
         {
            svgElement.setAttribute (strAttribute, strAttrValue);
            renderer.repaint (new Rectangle (0, 0, 100, 150));
         } catch (Exception oE)
         {
            logger.fatal ("***** EXCEPTION ****");
            logger.fatal (oE);
         }
      } // run
   });
} // isRenderComplete

And from closer inspection of the API docs, it would appear that the
JSVGComponent is a lot more helpful then the JSVGCanvas.

If you're interested in seeing the code I had when I was using the
JSVGCanvas, then I'll try and pull out all of the un-necessary code and
email it to you off-list? .. Or I can just wait until it happens again
:)

As well, when using the JSVGCanvas and my own SVG's, I notice that they
tend to always bring up the 'Determinant is 0' popup all of the time.
When using the JSVGComponent, no such exception is thrown..

Very Curious..

James

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to