pherweg 2004/01/30 02:51:53 Modified: src/java/org/apache/fop/render/rtf TableAttributesConverter.java Log: fixed runtime error while reading PR_BORDER_WIDTH or PR_BORDER_STYLE Revision Changes Path 1.9 +29 -38 xml-fop/src/java/org/apache/fop/render/rtf/TableAttributesConverter.java Index: TableAttributesConverter.java =================================================================== RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/rtf/TableAttributesConverter.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- TableAttributesConverter.java 18 Jan 2004 21:21:41 -0000 1.8 +++ TableAttributesConverter.java 30 Jan 2004 10:51:53 -0000 1.9 @@ -218,17 +218,7 @@ } // Border styles do not inherit from parent - if ((p = props.get(Constants.PR_BORDER_STYLE)) != null) { - log.warn("border-style not implemented. Please use border-style-left, " - + "...-right, ...-top or ...-bottom"); - /* - attrib.set(ITableAttributes.CELL_BORDER_LEFT, "\\"+convertAttributetoRtf(e.getEnum())); - attrib.set(ITableAttributes.CELL_BORDER_RIGHT, "\\"+convertAttributetoRtf(e.getEnum())); - attrib.set(ITableAttributes.CELL_BORDER_BOTTOM,"\\"+convertAttributetoRtf(e.getEnum())); - attrib.set(ITableAttributes.CELL_BORDER_TOP, "\\"+convertAttributetoRtf(e.getEnum())); - isBorderPresent=true; - */ - } + ep = (EnumProperty)props.get(Constants.PR_BORDER_TOP_STYLE); if (ep != null && ep.getEnum() != Constants.NONE) { attrib.set(ITableAttributes.CELL_BORDER_TOP, "\\" @@ -254,9 +244,19 @@ isBorderPresent = true; } - if ((p = props.get(Constants.PR_BORDER_WIDTH)) != null) { - ListProperty listprop = (ListProperty)p; - LengthProperty lengthprop = (LengthProperty)listprop.getList().get(0); + //Currently there is only one border width supported in each cell. + p = props.get(Constants.PR_BORDER_LEFT_WIDTH); + if(p == null) { + p = props.get(Constants.PR_BORDER_RIGHT_WIDTH); + } + if(p == null) { + p = props.get(Constants.PR_BORDER_TOP_WIDTH); + } + if(p == null) { + p = props.get(Constants.PR_BORDER_BOTTOM_WIDTH); + } + if (p != null) { + LengthProperty lengthprop = (LengthProperty)p; Float f = new Float(lengthprop.getLength().getValue() / 1000f); String sValue = f.toString() + "pt"; @@ -351,26 +351,7 @@ * it is implemented that the border type is the value of the border * place. */ - if ((p = props.get(Constants.PR_BORDER_STYLE)) != null) { - log.warn("border-style not implemented. Please use border-style-left, " - + "...-right, ...-top or ...-bottom"); -/* - attrValue = new String(AbstractBuilder.getValue( attrs, "border-style", defAttrs )); - attrib.set(ITableAttributes.ROW_BORDER_LEFT,"\\" - + BorderAttributesConverter.convertAttributetoRtf(attrValue)); - attrib.set(ITableAttributes.ROW_BORDER_RIGHT,"\\" - + BorderAttributesConverter.convertAttributetoRtf(attrValue)); - attrib.set(ITableAttributes.ROW_BORDER_HORIZONTAL,"\\" - + BorderAttributesConverter.convertAttributetoRtf(attrValue)); - attrib.set(ITableAttributes.ROW_BORDER_VERTICAL,"\\" - + BorderAttributesConverter.convertAttributetoRtf(attrValue)); - attrib.set(ITableAttributes.ROW_BORDER_BOTTOM,"\\" - + BorderAttributesConverter.convertAttributetoRtf(attrValue)); - attrib.set(ITableAttributes.ROW_BORDER_TOP,"\\" - + BorderAttributesConverter.convertAttributetoRtf(attrValue)); - isBorderPresent=true; -*/ - } + ep = (EnumProperty)props.get(Constants.PR_BORDER_TOP_STYLE); if (ep != null && ep.getEnum() != Constants.NONE) { attrib.set(ITableAttributes.ROW_BORDER_TOP, "\\" @@ -424,9 +405,19 @@ isBorderPresent = true; } - if ((p = props.get(Constants.PR_BORDER_WIDTH)) != null) { - ListProperty listprop = (ListProperty)p; - LengthProperty lengthprop = (LengthProperty)listprop.getList().get(0); + //Currently there is only one border width supported in each cell. + p = props.get(Constants.PR_BORDER_LEFT_WIDTH); + if(p == null) { + p = props.get(Constants.PR_BORDER_RIGHT_WIDTH); + } + if(p == null) { + p = props.get(Constants.PR_BORDER_TOP_WIDTH); + } + if(p == null) { + p = props.get(Constants.PR_BORDER_BOTTOM_WIDTH); + } + if (p != null) { + LengthProperty lengthprop = (LengthProperty)p; Float f = new Float(lengthprop.getLength().getValue() / 1000f); String sValue = f.toString() + "pt";
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]