]> source.dussan.org Git - poi.git/commitdiff
Fix bug #49508 - Allow the addition of paragraphs to XWPF Table Cells. (Also fixed...
authorNick Burch <nick@apache.org>
Tue, 29 Jun 2010 14:04:11 +0000 (14:04 +0000)
committerNick Burch <nick@apache.org>
Tue, 29 Jun 2010 14:04:11 +0000 (14:04 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@958972 13f79535-47bb-0310-9956-ffa450edef68

src/documentation/content/xdocs/status.xml
src/ooxml/java/org/apache/poi/xwpf/usermodel/IBody.java
src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFFooter.java
src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFHeader.java
src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java

index 89dc67248e0ba14a1279f71f33ae5211f162e6e9..e3cbd0b1a1d3693dbee2be09fdf6e9742200e629 100644 (file)
@@ -34,6 +34,7 @@
 
     <changes>
         <release version="3.7-beta2" date="2010-??-??">
+           <action dev="POI-DEVELOPERS" type="add">49508 - Allow the addition of paragraphs to XWPF Table Cells</action>
            <action dev="POI-DEVELOPERS" type="fix">49446 - Don't consider 17.16.23 field codes as properly part of the paragraph's text</action>
            <action dev="POI-DEVELOPERS" type="fix">XSLFSlideShow shouldn't break on .thmx (theme) files. Support for them is still very limited though</action>
         </release>
index 35ebffd91e0847af8cbf1f47c539861555c092d1..c42fde7d183e62fd606f880651848899732d0536 100644 (file)
@@ -19,14 +19,11 @@ package org.apache.poi.xwpf.usermodel;
 
 import java.util.List;
 
-import org.apache.poi.POIXMLDocumentPart;
 import org.apache.xmlbeans.XmlCursor;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTc;
 
-
-
 /**
  * <p>
  * 8 Jan 2010
@@ -123,9 +120,6 @@ public interface IBody {
         * @return
         */
        XWPFTableCell getTableCell(CTTc cell);
-       
-
-       
        
 }
 
index f6aa6b1ee8b833f21d7fe01e923571f80d856630..1bce85fb47efe3a805e6fa7abd8007cd55064fc5 100644 (file)
@@ -80,7 +80,7 @@ public class XWPFFooter extends XWPFHeaderFooter {
     protected void commit() throws IOException {
         XmlOptions xmlOptions = new XmlOptions(DEFAULT_XML_OPTIONS);
         xmlOptions.setSaveSyntheticDocumentElement(new QName(CTNumbering.type.getName().getNamespaceURI(), "ftr"));
-        Map map = new HashMap();
+        Map<String,String> map = new HashMap<String, String>();
         map.put("http://schemas.openxmlformats.org/markup-compatibility/2006", "ve");
         map.put("urn:schemas-microsoft-com:office:office", "o");
         map.put("http://schemas.openxmlformats.org/officeDocument/2006/relationships", "r");
index 0af3564629e01a151740110712a6d4ec0a88e218..6a5dd37838a4426a4e8c11aef6e00900bfa75fe6 100644 (file)
@@ -84,7 +84,7 @@ public class XWPFHeader extends XWPFHeaderFooter {
     protected void commit() throws IOException {
         XmlOptions xmlOptions = new XmlOptions(DEFAULT_XML_OPTIONS);
         xmlOptions.setSaveSyntheticDocumentElement(new QName(CTNumbering.type.getName().getNamespaceURI(), "hdr"));
-        Map map = new HashMap();
+        Map<String,String> map = new HashMap<String, String>();
         map.put("http://schemas.openxmlformats.org/markup-compatibility/2006", "ve");
         map.put("urn:schemas-microsoft-com:office:office", "o");
         map.put("http://schemas.openxmlformats.org/officeDocument/2006/relationships", "r");
index 3e317cca638ff7f75d06abc138abc7212bd9e14e..33adec49011dd5bf695430febcbf4ce3c6a03575 100644 (file)
@@ -45,7 +45,7 @@ public class XWPFTableCell implements IBody {
         this.part = part;
         this.tableRow = tableRow;
         // NB: If a table cell does not include at least one block-level element, then this document shall be considered corrupt.
-        if(cell.getPArray().length<1)
+        if(cell.getPList().size()<1)
                cell.addNewP();
         bodyElements = new ArrayList<IBodyElement>();
         paragraphs = new ArrayList<XWPFParagraph>();
@@ -89,6 +89,16 @@ public class XWPFTableCell implements IBody {
                return paragraphs;
     }
     
+    /**
+     * Add a Paragraph to this Table Cell
+     * @return The paragraph which was added
+     */
+    public XWPFParagraph addParagraph() {
+       XWPFParagraph p = new XWPFParagraph(ctTc.addNewP(), this);
+       addParagraph(p);
+       return p;
+    }
+    
     /**
      * add a Paragraph to this TableCell
      * @param p the paragaph which has to be added
@@ -296,7 +306,7 @@ public class XWPFTableCell implements IBody {
        public void insertTable(int pos, XWPFTable table) {
                bodyElements.add(pos, table);
                int i;
-       for (i = 0; i < ctTc.getTblArray().length; i++) {
+       for (i = 0; i < ctTc.getTblList().size(); i++) {
                        CTTbl tbl = ctTc.getTblArray(i);
                        if(tbl == table.getCTTbl()){
                                break;