+ if ( getFontStyle() != FontType.PLAIN ) {\r
+ String font_style = "";\r
+ if ( getFontStyle() == FontType.ITALIC ) {\r
+ font_style = FONT_STYLE_ITALIC;\r
+ }\r
+ else if ( getFontStyle() == FontType.BOLD ) {\r
+ font_style = FONT_STYLE_BOLD;\r
+ }\r
+ else if ( getFontStyle() == FontType.BOLD_ITALIC ) {\r
+ font_style = FONT_STYLE_BOLD_ITALIC;\r
+ }\r
+ else {\r
+ throw new RuntimeException( "unknown font style" + getShape() );\r
+ }\r
+ properties.add( new Property( FONT_STYLE_REF, font_style, "", FONT_STYLE_TYPE, AppliesTo.NODE ) );\r
+ }\r
+ if ( getFontColor() != null ) {\r
+ properties.add( new Property( FONT_COLOR_REF,\r
+ colorToHex( getFontColor() ),\r
+ "",\r
+ FONT_COLOR_TYPE,\r
+ AppliesTo.NODE ) );\r
+ }\r
+ if ( getShape() != NodeShape.DEFAULT ) {\r
+ String shape = null;\r
+ if ( getShape() == NodeShape.RECTANGLE ) {\r
+ shape = NODE_SHAPE_RECTANGLE;\r
+ }\r
+ else if ( getShape() == NodeShape.CIRCLE ) {\r
+ shape = NODE_SHAPE_CIRCLE;\r
+ }\r
+ else {\r
+ throw new RuntimeException( "unknown node shape" + getShape() );\r
+ }\r
+ properties.add( new Property( NODE_SHAPE_REF, shape, "", NODE_SHAPE_TYPE, AppliesTo.NODE ) );\r
+ }\r
+ if ( getSize() != DEFAULT_SIZE ) {\r
+ properties.add( new Property( NODE_SIZE_REF,\r
+ String.valueOf( getSize() ),\r
+ "",\r
+ NODE_SIZE_TYPE,\r
+ AppliesTo.NODE ) );\r
+ }\r
+ if ( getNodeColor() != null ) {\r
+ properties.add( new Property( NODE_COLOR_REF,\r
+ colorToHex( getNodeColor() ),\r
+ "",\r
+ NODE_COLOR_TYPE,\r
+ AppliesTo.NODE ) );\r
+ }\r
+ if ( getFillType() != NodeFill.DEFAULT ) {\r
+ String fill = null;\r
+ if ( getFillType() == NodeFill.GRADIENT ) {\r
+ fill = NODE_FILL_GRADIENT;\r
+ }\r
+ else if ( getFillType() == NodeFill.NONE ) {\r
+ fill = NODE_FILL_NONE;\r
+ }\r
+ else if ( getFillType() == NodeFill.SOLID ) {\r
+ fill = NODE_FILL_SOLID;\r
+ }\r
+ else {\r
+ throw new RuntimeException( "unknown fill type " + getFillType() );\r
+ }\r
+ properties.add( new Property( NODE_FILL_TYPE_REF, fill, "", NODE_FILL_TYPE_TYPE, AppliesTo.NODE ) );\r
+ }\r
+ if ( getTransparency() != DEFAULT_TRANSPARENCY ) {\r
+ properties.add( new Property( NODE_TRANSPARENCY_REF,\r
+ String.valueOf( getTransparency() ),\r
+ "",\r
+ NODE_TRANSPARENCY_TYPE,\r
+ AppliesTo.NODE ) );\r
+ }\r
+ return properties;\r