1 package de.java2html.properties; 2 3 import java.util.Properties ; 4 5 import de.java2html.javasource.JavaSourceType; 6 import de.java2html.options.IConversionOptionsConstants; 7 import de.java2html.options.JavaSourceConversionOptions; 8 import de.java2html.options.JavaSourceStyleEntry; 9 import de.java2html.options.JavaSourceStyleTable; 10 import de.java2html.util.LinkedProperties; 11 import de.java2html.util.RGB; 12 13 16 public class ConversionOptionsPropertiesWriter { 17 18 public Properties write(JavaSourceConversionOptions options) { 19 Properties properties = new LinkedProperties(); 20 properties.setProperty(IConversionOptionsConstants.DEFAULT_STYLE_NAME, options.getStyleTable().getName()); 21 properties.setProperty(IConversionOptionsConstants.SHOW_FILE_NAME, String.valueOf(options.isShowFileName())); 22 properties.setProperty( 23 IConversionOptionsConstants.SHOW_TABLE_BORDER, 24 String.valueOf(options.isShowTableBorder())); 25 properties.setProperty( 26 IConversionOptionsConstants.SHOW_LINE_NUMBERS, 27 String.valueOf(options.isShowLineNumbers())); 28 properties.setProperty( 29 IConversionOptionsConstants.SHOW_JAVA2HTML_LINK, 30 String.valueOf(options.isShowJava2HtmlLink())); 31 properties.setProperty( 32 IConversionOptionsConstants.HORIZONTAL_ALIGNMENT, 33 options.getHorizontalAlignment().getName()); 34 properties.setProperty(IConversionOptionsConstants.TAB_SIZE, String.valueOf(options.getTabSize())); 35 36 addStyleEntries(properties, options.getStyleTable()); 37 return properties; 38 } 39 40 private void addStyleEntries(Properties properties, JavaSourceStyleTable table) { 41 JavaSourceType[] sourceTypes = JavaSourceType.getAll(); 42 for (int i = 0; i < sourceTypes.length; i++) { 43 JavaSourceType type = sourceTypes[i]; 44 JavaSourceStyleEntry entry = table.get(type); 45 properties.setProperty( 46 type.getName() + IConversionOptionsConstants.POSTFIX_COLOR, 47 getRgbString(entry.getColor())); 48 properties.setProperty( 49 type.getName() + IConversionOptionsConstants.POSTFIX_BOLD, 50 String.valueOf(entry.isBold())); 51 properties.setProperty( 52 type.getName() + IConversionOptionsConstants.POSTFIX_ITALIC, 53 String.valueOf(entry.isItalic())); 54 } 55 } 56 57 private String getRgbString(RGB color) { 58 return color.getRed() + "," + color.getGreen() + "," + color.getBlue(); 59 } 60 } | Popular Tags |