sboag 00/07/05 19:21:35
Modified: java/src/org/apache/xalan/templates
OutputFormatExtended.java StylesheetRoot.java
java/src/org/apache/xalan/transformer TransformerImpl.java
Log:
Fixed <xsl:output indent="yes"/>.
Revision Changes Path
1.3 +7 -5
xml-xalan/java/src/org/apache/xalan/templates/OutputFormatExtended.java
Index: OutputFormatExtended.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/templates/OutputFormatExtended.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- OutputFormatExtended.java 2000/07/05 14:40:27 1.2
+++ OutputFormatExtended.java 2000/07/06 02:21:27 1.3
@@ -73,7 +73,7 @@
{
// Flag to tell us when to record that an attribute
// has been set.
- private boolean m_shouldRecordHasBeenSet = false;
+ private boolean m_shouldRecordHasBeenSet;
private boolean m_methodHasBeenSet = false;
public boolean methodHasBeenSet() { return m_methodHasBeenSet; }
@@ -99,7 +99,7 @@
public boolean cdataElementsHasBeenSet() { return
m_cdataElementsHasBeenSet; }
private boolean m_nonEscapingElementsHasBeenSet = false;
public boolean nonEscapingElementsHasBeenSet() { return
m_nonEscapingElementsHasBeenSet; }
-
+
/**
* Constructs a new output format with the default values.
*/
@@ -269,8 +269,9 @@
*/
public void setIndent( boolean indent )
{
- System.out.println("setIndent( "+indent+" )");
- super.setIndenting(indent);
+ // System.out.println("setIndent( "+indent+" )");
+ setPreserveSpace(false);
+ setIndenting(indent);
}
/**
@@ -283,7 +284,7 @@
*/
public void setIndent( int indent )
{
- System.out.println("setIndent( int indent )");
+ // System.out.println("setIndent( int indent )");
if(m_shouldRecordHasBeenSet)
m_indentHasBeenSet = true;
super.setIndent(indent);
@@ -300,6 +301,7 @@
*/
public void setIndenting( boolean on )
{
+ // System.out.println("setIndenting( "+on+" ), m_shouldRecordHasBeenSet:
"+m_shouldRecordHasBeenSet);
if(m_shouldRecordHasBeenSet)
m_indentingHasBeenSet = true;
super.setIndenting(on);
1.4 +11 -3
xml-xalan/java/src/org/apache/xalan/templates/StylesheetRoot.java
Index: StylesheetRoot.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/templates/StylesheetRoot.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- StylesheetRoot.java 2000/07/05 14:40:31 1.3
+++ StylesheetRoot.java 2000/07/06 02:21:28 1.4
@@ -217,8 +217,8 @@
*/
public OutputFormat getOutputComposed()
{
- System.out.println("getOutputComposed.getIndent:
"+m_outputFormatComposed.getIndent());
- System.out.println("getOutputComposed.getIndenting:
"+m_outputFormatComposed.getIndenting());
+ // System.out.println("getOutputComposed.getIndent:
"+m_outputFormatComposed.getIndent());
+ // System.out.println("getOutputComposed.getIndenting:
"+m_outputFormatComposed.getIndenting());
return m_outputFormatComposed;
}
@@ -227,6 +227,7 @@
*/
public void recomposeOutput()
{
+ // System.out.println("Recomposing output...");
m_outputFormatComposed = new OutputFormat();
m_outputFormatComposed.setPreserveSpace(true);
recomposeOutput(this);
@@ -262,6 +263,9 @@
OutputFormatExtended of = getOutput();
if(null != of)
{
+ // System.out.println("Composing output - of.indentHasBeenSet(): "
+ // + of.indentHasBeenSet()+",
of.indentingHasBeenSet(): "
+ // + of.indentingHasBeenSet());
if(of.cdataElementsHasBeenSet())
m_outputFormatComposed.setCDataElements(of.getCDataElements());
if(of.doctypePublicHasBeenSet())
@@ -275,7 +279,11 @@
if(of.indentHasBeenSet())
m_outputFormatComposed.setIndent(of.getIndent());
if(of.indentingHasBeenSet())
- m_outputFormatComposed.setIndenting(of.getIndenting());
+ {
+ boolean indent = of.getIndenting();
+ m_outputFormatComposed.setIndenting(indent);
+ m_outputFormatComposed.setPreserveSpace(!indent);
+ }
if(of.mediaTypeHasBeenSet())
m_outputFormatComposed.setMediaType(of.getMediaType());
if(of.methodHasBeenSet())
1.4 +2 -0
xml-xalan/java/src/org/apache/xalan/transformer/TransformerImpl.java
Index: TransformerImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/transformer/TransformerImpl.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TransformerImpl.java 2000/07/05 14:42:56 1.3
+++ TransformerImpl.java 2000/07/06 02:21:32 1.4
@@ -450,6 +450,8 @@
try
{
+ // System.out.println("createResultContentHandler --
format.getIndenting: "
+ // +format.getIndenting());
Serializer serializer
= (null != outputTarget.getCharacterStream()) ?
sfactory.makeSerializer(outputTarget.getCharacterStream(),
format) :