package nota.oxygen.common.table; import java.util.List; import ro.sync.ecss.extensions.api.node.AuthorElement; import ro.sync.ecss.extensions.api.node.AuthorNode; import ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase; import ro.sync.ecss.extensions.commons.table.operations.xhtml.XHTMLDocumentTypeHelper; /** * @author OHA * */ public class InsertColumnOperation extends InsertColumnOperationBase { /** * Default constructor */ public InsertColumnOperation() { super( new XHTMLDocumentTypeHelper()); } @Override protected String getCellElementName(AuthorElement rowElement, int newColumnIndex) { List<AuthorNode> rowNodes = rowElement.getContentNodes(); if (0<=newColumnIndex && newColumnIndex<rowNodes.size()) { return getLocalName(rowNodes.get(newColumnIndex).getName()); } else if (rowNodes.size()>0) { return rowNodes.get(0).getName(); } else { return "td"; } } private String getLocalName(String qname) { if (qname==null) return null; int lastIndex = qname.lastIndexOf(":"); if (0<=lastIndex && lastIndex+1<qname.length()) { return qname.substring(lastIndex+1); } return qname; } }