private int getPosOfBodyElement(IBodyElement needle) { BodyElementType type = needle.getElementType(); IBodyElement current; for (int i = 0; i < bodyElements.size(); i++) { current = bodyElements.get(i); if (current.getElementType() == type) { if (current.equals(needle)) { return i; } } } return -1; }
/** * Finds that for example the 2nd entry in the body list is the 1st paragraph */ private int getBodyElementSpecificPos(int pos, List<? extends IBodyElement> list) { // If there's nothing to find, skip it if (list.size() == 0) { return -1; } if (pos >= 0 && pos < bodyElements.size()) { // Ensure the type is correct IBodyElement needle = bodyElements.get(pos); if (needle.getElementType() != list.get(0).getElementType()) { // Wrong type return -1; } // Work back until we find it int startPos = Math.min(pos, list.size() - 1); for (int i = startPos; i >= 0; i--) { if (list.get(i) == needle) { return i; } } } // Couldn't be found return -1; }
/** * remove a BodyElement from bodyElements array list * * @param pos * @return true if removing was successfully, else return false */ public boolean removeBodyElement(int pos) { if (pos >= 0 && pos < bodyElements.size()) { BodyElementType type = bodyElements.get(pos).getElementType(); if (type == BodyElementType.TABLE) { int tablePos = getTablePos(pos); tables.remove(tablePos); ctDocument.getBody().removeTbl(tablePos); } if (type == BodyElementType.PARAGRAPH) { int paraPos = getParagraphPos(pos); paragraphs.remove(paraPos); ctDocument.getBody().removeP(paraPos); } bodyElements.remove(pos); return true; } return false; }
private int getPosOfBodyElement(IBodyElement needle) { BodyElementType type = needle.getElementType(); IBodyElement current; for (int i = 0; i < bodyElements.size(); i++) { current = bodyElements.get(i); if (current.getElementType() == type) { if (current.equals(needle)) { return i; } } } return -1; }
private int getPosOfBodyElement(IBodyElement needle) { BodyElementType type = needle.getElementType(); IBodyElement current; for(int i=0; i<bodyElements.size(); i++) { current = bodyElements.get(i); if(current.getElementType() == type) { if(current.equals(needle)) { return i; } } } return -1; }
/** * Finds that for example the 2nd entry in the body list is the 1st paragraph */ private int getBodyElementSpecificPos(int pos, List<? extends IBodyElement> list) { // If there's nothing to find, skip it if (list.size() == 0) { return -1; } if (pos >= 0 && pos < bodyElements.size()) { // Ensure the type is correct IBodyElement needle = bodyElements.get(pos); if (needle.getElementType() != list.get(0).getElementType()) { // Wrong type return -1; } // Work back until we find it int startPos = Math.min(pos, list.size() - 1); for (int i = startPos; i >= 0; i--) { if (list.get(i) == needle) { return i; } } } // Couldn't be found return -1; }
/** * Finds that for example the 2nd entry in the body list is the 1st paragraph */ private int getBodyElementSpecificPos(int pos, List<? extends IBodyElement> list) { // If there's nothing to find, skip it if(list.size() == 0) { return -1; } if(pos >= 0 && pos < bodyElements.size()) { // Ensure the type is correct IBodyElement needle = bodyElements.get(pos); if(needle.getElementType() != list.get(0).getElementType()) { // Wrong type return -1; } // Work back until we find it int startPos = Math.min(pos, list.size()-1); for(int i=startPos; i>=0; i--) { if(list.get(i) == needle) { return i; } } } // Couldn't be found return -1; }
protected void visitBodyElement( IBodyElement bodyElement, T container ) throws Exception { switch ( bodyElement.getElementType() ) { case PARAGRAPH: visitParagraph( (XWPFParagraph) bodyElement, container ); break; case TABLE: visitTable( (XWPFTable) bodyElement, container ); break; } }
/** * remove a BodyElement from bodyElements array list * * @param pos * @return true if removing was successfully, else return false */ public boolean removeBodyElement(int pos) { if (pos >= 0 && pos < bodyElements.size()) { BodyElementType type = bodyElements.get(pos).getElementType(); if (type == BodyElementType.TABLE) { int tablePos = getTablePos(pos); tables.remove(tablePos); ctDocument.getBody().removeTbl(tablePos); } if (type == BodyElementType.PARAGRAPH) { int paraPos = getParagraphPos(pos); paragraphs.remove(paraPos); ctDocument.getBody().removeP(paraPos); } bodyElements.remove(pos); return true; } return false; }
/** * remove a BodyElement from bodyElements array list * @param pos * @return true if removing was successfully, else return false */ public boolean removeBodyElement(int pos){ if(pos >= 0 && pos < bodyElements.size()) { BodyElementType type = bodyElements.get(pos).getElementType(); if(type == BodyElementType.TABLE){ int tablePos = getTablePos(pos); tables.remove(tablePos); ctDocument.getBody().removeTbl(tablePos); } if(type == BodyElementType.PARAGRAPH){ int paraPos = getParagraphPos(pos); paragraphs.remove(paraPos); ctDocument.getBody().removeP(paraPos); } bodyElements.remove(pos); return true; } return false; }
private Stack<CTSectPr> getSectPrStack() { if ( sectPrStack != null ) { return sectPrStack; } sectPrStack = new Stack<CTSectPr>(); for ( IBodyElement bodyElement : document.getBodyElements() ) { if ( bodyElement.getElementType() == BodyElementType.PARAGRAPH ) { CTPPr ppr = ( (XWPFParagraph) bodyElement ).getCTP().getPPr(); if ( ppr != null ) { CTSectPr sectPr = ppr.getSectPr(); if ( sectPr != null ) { sectPrStack.push( sectPr ); } } } } return sectPrStack; }
switch ( bodyElement.getElementType() )
switch ( bodyElement.getElementType() )
switch ( bodyElement.getElementType() )
if ( element.getElementType() != BodyElementType.PARAGRAPH )
if ( element.getElementType() != BodyElementType.PARAGRAPH )
if ( element.getElementType() != BodyElementType.PARAGRAPH )
BodyElementType elementType = bodyElement.getElementType();