Control size of JGoEllipse of JBasicNode

Hi;
Following is my code to control the size of Ellipse in the JBasicNode. I use setWidth to control the size of ellipse to be fixed size of ellipse. It is almost perfect to use default font and size 12. I test different size of string such as “New York 12.234.123.20”. The ellipse most time will be 1 or 2 pix different.
If I use “couier new”, the ellipse will be perfect since each char has same size and length of setWidth will make ellipse same width and height. The problem is that “courier new” not not good looking. The default font can not get fond length since it is not fixed char.
So my question is that is any kind method in the JGoBasicNode to control the size of Ellipse?
Thanks
Steven
public class MyNode2 extends JGoBasicNode {
Color cc = Color.red;
Image im = null;
JGoPen pen = null;
public MyNode2(String text) {
super(text);
this.setHeight(80);
this.setLabelSpot(JGoObject.BottomCenter);
int width = text.length()12 + 22;
this.setWidth(width);


}
public void setColor(Color newColor,int style,boolean filledColor) {
cc = newColor;
pen = new JGoPen(style,2,newColor);
this.setPen(pen);
if (filledColor)
this.setBrush(JGoBrush.makeStockBrush(newColor));
}
public void setIcon(Image im) {
this.im = im;
}
public void paint(java.awt.Graphics2D g,JGoView view) {
super.paint(g, view);
Point loc = this.getLocation();
g.drawImage(im,loc.x - 15 ,loc.y - 15,null);

}
}

You probably shouldn’t be trying to set the Height or Width of the whole node, but only of the individual parts.
You should let JGoText figure out the width and/or height of the text. So you probably want to do something like:
getDrawable().setWidth(getLabel().getWidth());

Thanks. It is really fix my problem.
Steven