hello, 

I don't understand a behaviour of my batik canvas:

I put my batik canvas in a panel, that I put in a frame.
I have 2 modes. the frame is visible or not (because it is a server which can display locally or remotely. In this last case, I don't want to draw the frame)

at the beginning of the process (ie after the treebuild complete) I want to append a child to a node of the document.

If I have a local frame (setVisible(true)), I do this and it works fine: the element

getMaskLayer().appendChild(mask);

        canvas.getUpdateManager().getUpdateRunnableQueue().invokeLater(new Runnable() {

public void run() {

mask.setAttribute("style", "display:none");

}

});;

but when I put if I run the program with frame.setVisible(false), and I dump the document, I do not have the style attribute set.

So, why the setVisible influences the behavior?

FYI
Then, I decided to do this:

        canvas.getUpdateManager().getUpdateRunnableQueue().invokeLater(new Runnable() {

public void run() {

                getMaskLayer().appendChild(mask);

mask.setAttribute("style""display:none");

}

});;

In this case, the element is not appended. I dump the document doing this several seconds after the call is performed


StringWriter stringWriter = new StringWriter();

org.apache.batik.dom.util.DOMUtilities.writeDocument(canvas.getSVGDocument(), stringWriter);

stringWriter.flush();

stringWriter.close();

return stringWriter.toString();



--
Dao Hodac