01: /*
02: ItsNat Java Web Application Framework
03: Copyright (C) 2007 Innowhere Software Services S.L., Spanish Company
04: Author: Jose Maria Arranz Santamaria
05:
06: This program is free software: you can redistribute it and/or modify
07: it under the terms of the GNU Affero General Public License as published by
08: the Free Software Foundation, either version 3 of the License, or
09: (at your option) any later version. See the GNU Affero General Public
10: License for more details. See the copy of the GNU Affero General Public License
11: included in this program. If not, see <http://www.gnu.org/licenses/>.
12: */
13:
14: package org.itsnat.comp.html.ui;
15:
16: import org.itsnat.comp.html.ItsNatHTMLTable;
17: import org.itsnat.comp.ui.ItsNatTableUI;
18: import org.w3c.dom.html.HTMLTableCellElement;
19: import org.w3c.dom.html.HTMLTableElement;
20: import org.w3c.dom.html.HTMLTableRowElement;
21: import org.w3c.dom.html.HTMLTableSectionElement;
22:
23: /**
24: * Is the base interface of the User Interface of an HTML table body component.
25: *
26: * <p>This interface basically provides casts of the base methods.</p>
27: *
28: * @author Jose Maria Arranz Santamaria
29: */
30: public interface ItsNatHTMLTableUI extends
31: ItsNatHTMLElementComponentUI, ItsNatTableUI {
32: /**
33: * Returns the associated component object.
34: *
35: * @return the component object.
36: */
37: public ItsNatHTMLTable getItsNatHTMLTable();
38:
39: /**
40: * Returns the header user interface manager of this component.
41: *
42: * @return the header user interface manager. Null if this table has not a header.
43: */
44: public ItsNatHTMLTableHeaderUI getItsNatHTMLTableHeaderUI();
45:
46: /**
47: * Returns the <tbody> element.
48: *
49: * @return the <tbody> element.
50: * @see ItsNatTableUI#getBodyElement()
51: */
52: public HTMLTableSectionElement getHTMLTableSectionElement();
53:
54: /**
55: * Returns the <row> element at the specified index.
56: *
57: * @param row index of the row element to search.
58: * @return the row element in this position or null if index is out of range.
59: * @see ItsNatTableUI#getRowElementAt(int)
60: */
61: public HTMLTableRowElement getHTMLTableRowElementAt(int row);
62:
63: /**
64: * Returns the <td> elements of the specified row as an array.
65: *
66: * @param row the row index.
67: * @return the cell element array or null if index is out of range.
68: * @see ItsNatTableUI#getCellElementsOfRow(int)
69: */
70: public HTMLTableCellElement[] getHTMLTableCellElementsOfRow(int row);
71:
72: /**
73: * Returns the <td> elements of the specified column as an array.
74: *
75: * @param column the column index.
76: * @return the cell element array or null if index is out of range.
77: * @see ItsNatTableUI#getCellElementsOfColumn(int)
78: */
79: public HTMLTableCellElement[] getHTMLTableCellElementsOfColumn(
80: int column);
81:
82: /**
83: * Returns the <td> element at the specified row and column.
84: *
85: * @param row the row index of the cell element to search.
86: * @param column the column index of the cell element to search.
87: * @return the element in this position or null if some index is out of range.
88: * @see ItsNatTableUI#getCellElementAt(int,int)
89: */
90: public HTMLTableCellElement getHTMLTableCellElementAt(int row,
91: int column);
92: }
|