All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.odftoolkit.odfdom.dom.element.table.TableTableRowElement Maven / Gradle / Ivy

Go to download

ODFDOM is an OpenDocument Format (ODF) framework. Its purpose is to provide an easy common way to create, access and manipulate ODF files, without requiring detailed knowledge of the ODF specification. It is designed to provide the ODF developer community with an easy lightwork programming API portable to any object-oriented language. The current reference implementation is written in Java.

There is a newer version: 1.0.0-BETA1
Show newest version
/**
 * **********************************************************************
 *
 * 

DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER * *

Copyright 2008, 2010 Oracle and/or its affiliates. All rights reserved. * *

Use is subject to license terms. * *

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0. You can also obtain a copy of the License at * http://odftoolkit.org/docs/license.txt * *

Unless required by applicable law or agreed to in writing, software distributed under the * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. * *

See the License for the specific language governing permissions and limitations under the * License. * *

********************************************************************** */ /* * This file is automatically generated. * Don't edit manually. */ package org.odftoolkit.odfdom.dom.element.table; import org.odftoolkit.odfdom.dom.DefaultElementVisitor; import org.odftoolkit.odfdom.dom.OdfDocumentNamespace; import org.odftoolkit.odfdom.dom.attribute.table.TableDefaultCellStyleNameAttribute; import org.odftoolkit.odfdom.dom.attribute.table.TableNumberRowsRepeatedAttribute; import org.odftoolkit.odfdom.dom.attribute.table.TableStyleNameAttribute; import org.odftoolkit.odfdom.dom.attribute.table.TableVisibilityAttribute; import org.odftoolkit.odfdom.dom.attribute.xml.XmlIdAttribute; import org.odftoolkit.odfdom.dom.element.OdfStylableElement; import org.odftoolkit.odfdom.dom.style.OdfStyleFamily; import org.odftoolkit.odfdom.pkg.ElementVisitor; import org.odftoolkit.odfdom.pkg.OdfElement; import org.odftoolkit.odfdom.pkg.OdfFileDom; import org.odftoolkit.odfdom.pkg.OdfName; import org.w3c.dom.Node; /** DOM implementation of OpenDocument element {@odf.element table:table-row}. */ public class TableTableRowElement extends OdfStylableElement { public static final OdfName ELEMENT_NAME = OdfName.newName(OdfDocumentNamespace.TABLE, "table-row"); /** * Create the instance of TableTableRowElement * * @param ownerDoc The type is OdfFileDom */ public TableTableRowElement(OdfFileDom ownerDoc) { super( ownerDoc, ELEMENT_NAME, OdfStyleFamily.TableRow, OdfName.newName(OdfDocumentNamespace.TABLE, "style-name")); } /** * Get the element name * * @return return OdfName the name of element {@odf.element table:table-row}. */ public OdfName getOdfName() { return ELEMENT_NAME; } /** * Receives the value of the ODFDOM attribute representation * TableDefaultCellStyleNameAttribute , See {@odf.attribute table:default-cell-style-name} * * @return - the String , the value or null, if the attribute is not set * and no default value defined. */ public String getTableDefaultCellStyleNameAttribute() { TableDefaultCellStyleNameAttribute attr = (TableDefaultCellStyleNameAttribute) getOdfAttribute(OdfDocumentNamespace.TABLE, "default-cell-style-name"); if (attr != null) { return String.valueOf(attr.getValue()); } return null; } /** * Sets the value of ODFDOM attribute representation TableDefaultCellStyleNameAttribute * , See {@odf.attribute table:default-cell-style-name} * * @param tableDefaultCellStyleNameValue The type is String */ public void setTableDefaultCellStyleNameAttribute(String tableDefaultCellStyleNameValue) { TableDefaultCellStyleNameAttribute attr = new TableDefaultCellStyleNameAttribute((OdfFileDom) this.ownerDocument); setOdfAttribute(attr); attr.setValue(tableDefaultCellStyleNameValue); } /** * Receives the value of the ODFDOM attribute representation * TableNumberRowsRepeatedAttribute , See {@odf.attribute table:number-rows-repeated} * * @return - the Integer , the value or null, if the attribute is not * set and no default value defined. */ public Integer getTableNumberRowsRepeatedAttribute() { TableNumberRowsRepeatedAttribute attr = (TableNumberRowsRepeatedAttribute) getOdfAttribute(OdfDocumentNamespace.TABLE, "number-rows-repeated"); if (attr != null && !attr.getValue().isEmpty()) { return Integer.valueOf(attr.intValue()); } return Integer.valueOf(TableNumberRowsRepeatedAttribute.DEFAULT_VALUE); } /** * Sets the value of ODFDOM attribute representation TableNumberRowsRepeatedAttribute * , See {@odf.attribute table:number-rows-repeated} * * @param tableNumberRowsRepeatedValue The type is Integer */ public void setTableNumberRowsRepeatedAttribute(Integer tableNumberRowsRepeatedValue) { TableNumberRowsRepeatedAttribute attr = new TableNumberRowsRepeatedAttribute((OdfFileDom) this.ownerDocument); setOdfAttribute(attr); attr.setIntValue(tableNumberRowsRepeatedValue.intValue()); } /** * Receives the value of the ODFDOM attribute representation TableStyleNameAttribute * , See {@odf.attribute table:style-name} * * @return - the String , the value or null, if the attribute is not set * and no default value defined. */ public String getTableStyleNameAttribute() { TableStyleNameAttribute attr = (TableStyleNameAttribute) getOdfAttribute(OdfDocumentNamespace.TABLE, "style-name"); if (attr != null) { return String.valueOf(attr.getValue()); } return null; } /** * Sets the value of ODFDOM attribute representation TableStyleNameAttribute , See * {@odf.attribute table:style-name} * * @param tableStyleNameValue The type is String */ public void setTableStyleNameAttribute(String tableStyleNameValue) { TableStyleNameAttribute attr = new TableStyleNameAttribute((OdfFileDom) this.ownerDocument); setOdfAttribute(attr); attr.setValue(tableStyleNameValue); } /** * Receives the value of the ODFDOM attribute representation TableVisibilityAttribute * , See {@odf.attribute table:visibility} * * @return - the String , the value or null, if the attribute is not set * and no default value defined. */ public String getTableVisibilityAttribute() { TableVisibilityAttribute attr = (TableVisibilityAttribute) getOdfAttribute(OdfDocumentNamespace.TABLE, "visibility"); if (attr != null) { return String.valueOf(attr.getValue()); } return TableVisibilityAttribute.DEFAULT_VALUE; } /** * Sets the value of ODFDOM attribute representation TableVisibilityAttribute , See * {@odf.attribute table:visibility} * * @param tableVisibilityValue The type is String */ public void setTableVisibilityAttribute(String tableVisibilityValue) { TableVisibilityAttribute attr = new TableVisibilityAttribute((OdfFileDom) this.ownerDocument); setOdfAttribute(attr); attr.setValue(tableVisibilityValue); } /** * Receives the value of the ODFDOM attribute representation XmlIdAttribute , See * {@odf.attribute xml:id} * * @return - the String , the value or null, if the attribute is not set * and no default value defined. */ public String getXmlIdAttribute() { XmlIdAttribute attr = (XmlIdAttribute) getOdfAttribute(OdfDocumentNamespace.XML, "id"); if (attr != null) { return String.valueOf(attr.getValue()); } return null; } /** * Sets the value of ODFDOM attribute representation XmlIdAttribute , See * {@odf.attribute xml:id} * * @param xmlIdValue The type is String */ public void setXmlIdAttribute(String xmlIdValue) { XmlIdAttribute attr = new XmlIdAttribute((OdfFileDom) this.ownerDocument); setOdfAttribute(attr); attr.setValue(xmlIdValue); } /** * Create child element {@odf.element table:covered-table-cell}. * * @param officeValueValue the Double value of OfficeValueAttribute, see * {@odf.attribute office:value} at specification * @param officeValueTypeValue the String value of OfficeValueTypeAttribute * , see {@odf.attribute office:value-type} at specification * @return the element {@odf.element table:covered-table-cell} */ public TableCoveredTableCellElement newTableCoveredTableCellElement( double officeValueValue, String officeValueTypeValue) { TableCoveredTableCellElement tableCoveredTableCell = ((OdfFileDom) this.ownerDocument).newOdfElement(TableCoveredTableCellElement.class); tableCoveredTableCell.setOfficeValueAttribute(officeValueValue); tableCoveredTableCell.setOfficeValueTypeAttribute(officeValueTypeValue); this.appendChild(tableCoveredTableCell); return tableCoveredTableCell; } /** * Create child element {@odf.element table:table-cell}. * * @param officeValueValue the Double value of OfficeValueAttribute, see * {@odf.attribute office:value} at specification * @param officeValueTypeValue the String value of OfficeValueTypeAttribute * , see {@odf.attribute office:value-type} at specification * @return the element {@odf.element table:table-cell} */ public TableTableCellElement newTableTableCellElement( double officeValueValue, String officeValueTypeValue) { TableTableCellElement tableTableCell = ((OdfFileDom) this.ownerDocument).newOdfElement(TableTableCellElement.class); tableTableCell.setOfficeValueAttribute(officeValueValue); tableTableCell.setOfficeValueTypeAttribute(officeValueTypeValue); this.appendChild(tableTableCell); return tableTableCell; } /** * Accept an visitor instance to allow the visitor to do some operations. Refer to visitor design * pattern to get a better understanding. * * @param visitor an instance of DefaultElementVisitor */ @Override public void accept(ElementVisitor visitor) { if (visitor instanceof DefaultElementVisitor) { DefaultElementVisitor defaultVisitor = (DefaultElementVisitor) visitor; defaultVisitor.visit(this); } else { visitor.visit(this); } } @Override public boolean isComponentRoot() { return true; } @Override /** @return the repeation of this element, the default is in ODF always 1 */ public int getRepetition() { Integer repeated = getTableNumberRowsRepeatedAttribute(); if (repeated == null) { repeated = 1; } return repeated; } @Override /** @return if this element is repeatable, by having a repeatable attribute */ public boolean isRepeatable() { return true; } @Override /** @repetition the repetition number of this attribute */ public void setRepetition(int repetition) { setTableNumberRowsRepeatedAttribute(repetition); } /** * Splitting the element at the given position into two halves * * @param posStart The split position. Counting is starting with zero. The start of the second * half. * @return the new created second element (or if posStart was less than 1 the original element) */ @Override public TableTableRowElement split(int posStart) { TableTableRowElement newElement = this; // 0 would not leave anything left on the left side, would not change anything! if (posStart > 0) { newElement = (TableTableRowElement) this.cloneNode(true); int repeated = getTableNumberRowsRepeatedAttribute(); if (repeated > 1) { if (posStart > 1) { this.setTableNumberRowsRepeatedAttribute(posStart); } else { this.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), "number-rows-repeated"); } // any higher value one for repeated write out. // 1 is the default and has not to be written out if (repeated - posStart > 1) { newElement.setTableNumberRowsRepeatedAttribute(repeated - posStart); } else { newElement.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), "number-rows-repeated"); } } Node nextNodeSibling = this.getNextSibling(); OdfElement parent = (OdfElement) this.getParentNode(); if (nextNodeSibling == null) { parent.appendChild(newElement); } else { parent.insertBefore(newElement, nextNodeSibling); } } return newElement; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy