Author: evenisse
Date: Tue Nov  8 23:37:03 2005
New Revision: 331981

URL: http://svn.apache.org/viewcvs?rev=331981&view=rev
Log:
PR: DOXIA-30
Submitted by Juan F. Codagnone

Fix generation when using multiple level enumerations

Modified:
    
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xdoc/XdocSink.java
    
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xhtml/XhtmlSink.java

Modified: 
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xdoc/XdocSink.java
URL: 
http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xdoc/XdocSink.java?rev=331981&r1=331980&r2=331981&view=diff
==============================================================================
--- 
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xdoc/XdocSink.java
 (original)
+++ 
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xdoc/XdocSink.java
 Tue Nov  8 23:37:03 2005
@@ -23,7 +23,7 @@
     private StringBuffer buffer = new StringBuffer();
 
     private boolean headFlag;
-    private boolean itemFlag;
+    private int itemFlag;
     private boolean boxedFlag;
     private boolean verbatimFlag;
     private int[] cellJustif;
@@ -39,7 +39,7 @@
     {
         headFlag = false;
         buffer = new StringBuffer();
-        itemFlag = false;
+        itemFlag = 0;
         boxedFlag = false;
         verbatimFlag = false;
         cellJustif = null;
@@ -188,7 +188,7 @@
     public void listItem()
     {
         markup( "<li>" );
-        itemFlag = true;
+        itemFlag++;
         // What follows is at least a paragraph.
     }
 
@@ -229,7 +229,7 @@
     public void numberedListItem()
     {
         markup( "<li>" );
-        itemFlag = true;
+        itemFlag++;
         // What follows is at least a paragraph.
     }
 
@@ -261,7 +261,7 @@
     public void definition()
     {
         markup( "<dd>" );
-        itemFlag = true;
+        itemFlag++;
         // What follows is at least a paragraph.
     }
 
@@ -272,16 +272,23 @@
 
     public void paragraph()
     {
-        if ( !itemFlag )
+        if ( itemFlag == 0 )
+        {
             markup( "<p>" );
+        }
     }
 
     public void paragraph_()
     {
-        if ( itemFlag )
-            itemFlag = false;
-        else
+        if ( itemFlag == 0 )
+        {
             markup( "</p>" );
+        }
+        else
+        {
+            itemFlag--;
+        }
+            
     }
 
     public void verbatim( boolean boxed )

Modified: 
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xhtml/XhtmlSink.java
URL: 
http://svn.apache.org/viewcvs/maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xhtml/XhtmlSink.java?rev=331981&r1=331980&r2=331981&view=diff
==============================================================================
--- 
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xhtml/XhtmlSink.java
 (original)
+++ 
maven/doxia/trunk/doxia-core/src/main/java/org/codehaus/doxia/module/xhtml/XhtmlSink.java
 Tue Nov  8 23:37:03 2005
@@ -34,7 +34,7 @@
 
     private boolean headFlag;
 
-    private boolean itemFlag;
+    private int itemFlag;
 
     private boolean boxedFlag;
 
@@ -79,7 +79,7 @@
 
         resetBuffer();
 
-        itemFlag = false;
+        itemFlag = 0;
 
         boxedFlag = false;
 
@@ -349,7 +349,7 @@
     {
         write( "<li>" );
 
-        itemFlag = true;
+        itemFlag++;
         // What follows is at least a paragraph.
     }
 
@@ -372,7 +372,7 @@
     {
         write( "<li>" );
 
-        itemFlag = true;
+        itemFlag++;
         // What follows is at least a paragraph.
     }
 
@@ -405,7 +405,7 @@
     {
         write( "<dd>" );
 
-        itemFlag = true;
+        itemFlag++;
         // What follows is at least a paragraph.
     }
 
@@ -416,7 +416,7 @@
 
     public void paragraph()
     {
-        if ( !itemFlag )
+        if ( itemFlag == 0 )
         {
             write( "<p>" );
         }
@@ -424,13 +424,13 @@
 
     public void paragraph_()
     {
-        if ( itemFlag )
+        if ( itemFlag == 0 )
         {
-            itemFlag = false;
+            write( "</p>" );
         }
         else
         {
-            write( "</p>" );
+            itemFlag--;
         }
     }
 


Reply via email to