Hi,

I have the following structure:

<flowText xml:space="preserve" xmlns="http://xml.apache.org/batik/ext";>
      <flowRegion>
       <rect x="109" width="365" y="172" height="100"/>
      </flowRegion>
      <flowDiv>
       <flowPara>My first flow text</flowPara>
      </flowDiv>
     </flowText>

This starts fine. But I then want to change the X,Y co-ordinates so I I have this bit of code, where element points to the 'rect' object in flowRegion tag:

        UpdateManager um = this.getCanvas().getUpdateManager();
if (um != null && um.isRunning() && um.getUpdateRunnableQueue().getThread() != Thread.currentThread()) {
            um.getUpdateRunnableQueue().invokeLater(new Runnable() {

                public void run() {
System.out.println("SVGFlowText::propertyChange : update manager available"); element.setAttributeNS(getNamespace(), SVGConstants.SVG_X_ATTRIBUTE, val)
                }
            });
        } else {
System.out.println("SVGFlowText::propertyChange : no update manager available"); element.setAttributeNS(getNamespace(), SVGConstants.SVG_X_ATTRIBUTE, val)
        }

The actual values which show up in the SVG print out have changed but the canvas has not updated. I know I could use a group element and transform that but I don't see why this way does not work either.

Is there anything in the way the canvas updates which means that it would not see the 'rect' attribute change to get it to redraw the flowPara object?

Any clues and help gratefully received.

Tom

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

Reply via email to