001 /*
002 * Copyright 2007 - 2007 JEuclid, http://jeuclid.sf.net
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package org.w3c.dom.mathml;
017
018 import org.w3c.dom.DOMException;
019
020 /*
021 * Please note: This file was automatically generated from the source of the
022 * MathML specification. Do not edit it. If there are errors or missing
023 * elements, please correct the stylesheet instead.
024 */
025
026 /**
027 * This interface extends the MathMLPresentationElement interface for the
028 * MathML table or matrix row element mtr.
029 *
030 *
031 */
032 public interface MathMLTableRowElement extends MathMLPresentationElement {
033 /**
034 * A string representing an override of the row alignment specified in the
035 * containing mtable. Allowed values are top, bottom, center, baseline,
036 * and axis.
037 *
038 * @return value of the rowalign attribute.
039 */
040 String getRowalign();
041
042 /**
043 * setter for the rowalign attribute.
044 *
045 * @param rowalign
046 * new value for rowalign.
047 * @see #getRowalign()
048 */
049 void setRowalign(String rowalign);
050
051 /**
052 * A string representing an override of the column alignment specified in
053 * the containing mtable. Allowed values are left, center, and right.
054 *
055 * @return value of the columnalign attribute.
056 */
057 String getColumnalign();
058
059 /**
060 * setter for the columnalign attribute.
061 *
062 * @param columnalign
063 * new value for columnalign.
064 * @see #getColumnalign()
065 */
066 void setColumnalign(String columnalign);
067
068 /**
069 * A string specifying how the alignment groups within the cells of each
070 * row are to be aligned with the corresponding items above or below them
071 * in the same column. The string consists of a sequence of braced group
072 * alignment lists. Each group alignment list is a space-separated
073 * sequence, each of which can have the following values: left, right,
074 * center, or decimalpoint.
075 *
076 * @return value of the groupalign attribute.
077 */
078 String getGroupalign();
079
080 /**
081 * setter for the groupalign attribute.
082 *
083 * @param groupalign
084 * new value for groupalign.
085 * @see #getGroupalign()
086 */
087 void setGroupalign(String groupalign);
088
089 /**
090 * A MathMLNodeList consisting of the cells of the row. Note that this
091 * does not include the label if this is a MathMLLabeledRowElement!
092 *
093 * @return value of the cells attribute.
094 */
095 MathMLNodeList getCells();
096
097 /**
098 * A convenience method to insert a new (empty) cell in the row.
099 *
100 * @param index
101 * Index of the cell before which the new cell is to be
102 * inserted, where the first cell is numbered 0. If index is
103 * equal to the current number of cells, the new cell is
104 * appended as the last cell of the row. Note that the index
105 * will differ from the index of the corresponding Node in the
106 * collection returned by Node::childNodes if this is a
107 * MathMLLabeledRowElement!
108 * @return Returns the MathMLTableCellElement representing the mtd element
109 * being inserted.
110 * @throws DOMException
111 * INDEX_SIZE_ERR: Raised if index is greater than the current
112 * number of cells of this mtr element.
113 */
114 MathMLTableCellElement insertEmptyCell(int index) throws DOMException;
115
116 /**
117 * A convenience method to insert a new cell in the row.
118 *
119 * @param newCell
120 * A MathMLTableCellElement representing the new cell (mtd
121 * element) to be inserted.
122 * @param index
123 * Index of the cell before which the new cell is to be
124 * inserted, where the first cell is numbered 0. If index
125 * equals the current number of cells, the new cell is appended
126 * as the last cell of the row. Note that the index will differ
127 * from the index of the corresponding Node in Node::childNodes
128 * if this is a MathMLLabeledRowElement!
129 * @return The MathMLTableCellElement representing the mtd element being
130 * inserted.
131 * @throws DOMException
132 * INDEX_SIZE_ERR: Raised if index is greater than the current
133 * number of cells of this mtr element.
134 */
135 MathMLTableCellElement insertCell(MathMLTableCellElement newCell,
136 int index) throws DOMException;
137
138 /**
139 * A convenience method to set the value of a cell in the row to newCell.
140 * If index is equal to the current number of cells, newCell is appended
141 * as the last cell in the row.
142 *
143 * @param newCell
144 * A MathMLTableCellElement representing the cell (mtd element)
145 * that is to be inserted.
146 * @param index
147 * Index of the cell that is to be replaced by the new cell,
148 * where the first cell is numbered 0. Note that the index will
149 * differ from the index of the corresponding Node in the
150 * collection returned by Node::childNodes if this is a
151 * MathMLLabeledRowElement!
152 * @return The MathMLTableCellElement child of this MathMLTableRowElement
153 * representing the new mtd element.
154 */
155 MathMLTableCellElement setCell(MathMLTableCellElement newCell, int index);
156
157 /**
158 * A convenience method to delete a cell in the row.
159 *
160 * @param index
161 * Index of cell to be deleted. Note that the count will differ
162 * from the index-th child node if this is a
163 * MathMLLabeledRowElement!
164 */
165 void deleteCell(int index);
166 };