FileDocCategorySizeDatePackage
HTMLTableRowElementImpl.javaAPI DocApache Xerces 3.0.17432Fri Sep 14 20:33:54 BST 2007org.apache.html.dom

HTMLTableRowElementImpl

public class HTMLTableRowElementImpl extends HTMLElementImpl implements HTMLTableRowElement
xerces.internal
version
$Revision: 449313 $ $Date: 2006-09-23 18:01:43 -0400 (Sat, 23 Sep 2006) $
author
Assaf Arkin
see
org.w3c.dom.html.HTMLTableRowElement
see
org.apache.xerces.dom.ElementImpl

Fields Summary
private static final long
serialVersionUID
HTMLCollection
_cells
Constructors Summary
public HTMLTableRowElementImpl(HTMLDocumentImpl owner, String name)
Constructor requires owner document.

param
owner The owner HTML document

        super( owner, name );
    
Methods Summary
public org.w3c.dom.NodecloneNode(boolean deep)
Explicit implementation of cloneNode() to ensure that cache used for getCells() gets cleared.

        HTMLTableRowElementImpl clonedNode = (HTMLTableRowElementImpl)super.cloneNode( deep );
        clonedNode._cells = null;
        return clonedNode;
    
public voiddeleteCell(int index)

        Node    child;
        
        child = getFirstChild();
        while ( child != null ) {
            if ( child instanceof HTMLTableCellElement ) {
                if ( index == 0 ) {
                    removeChild ( child );
                    return;
                }
                --index;
            }
            child = child.getNextSibling();
        }
    
public java.lang.StringgetAlign()

        return capitalize( getAttribute( "align" ) );
    
public java.lang.StringgetBgColor()

        return getAttribute( "bgcolor" );
    
public org.w3c.dom.html.HTMLCollectiongetCells()

        if ( _cells == null ) {
            _cells = new HTMLCollectionImpl( this, HTMLCollectionImpl.CELL );
        }
        return _cells;
    
public java.lang.StringgetCh()

        String    ch;
        
        // Make sure that the access key is a single character.
        ch = getAttribute( "char" );
        if ( ch != null && ch.length() > 1 ) {
            ch = ch.substring( 0, 1 );
        }
        return ch;
    
public java.lang.StringgetChOff()

        return getAttribute( "charoff" );
    
public intgetRowIndex()


      
    
        Node    parent;
        
        parent = getParentNode();
        if ( parent instanceof HTMLTableSectionElement ) {
            parent = parent.getParentNode();
        }
        if ( parent instanceof HTMLTableElement ) {
            return getRowIndex( parent );
        }
        return -1;
    
intgetRowIndex(org.w3c.dom.Node parent)

        NodeList    rows;
        int            i;
        
        // Use getElementsByTagName() which creates a snapshot of all the
        // TR elements under the TABLE/section. Access to the returned NodeList
        // is very fast and the snapshot solves many synchronization problems.
        rows = ( (HTMLElement) parent ).getElementsByTagName( "TR" );
        for ( i = 0 ; i < rows.getLength() ; ++i ) {
            if ( rows.item( i ) == this ) {
                return i;
            }
        }
        return -1;
    
public intgetSectionRowIndex()

        Node    parent;
        
        parent = getParentNode();
        if ( parent instanceof HTMLTableSectionElement ) {
            return getRowIndex( parent );
        }
        return -1;
    
public java.lang.StringgetVAlign()

        return capitalize( getAttribute( "valign" ) );
    
public org.w3c.dom.html.HTMLElementinsertCell(int index)

        Node        child;
        HTMLElement    newCell;
        
        newCell = new HTMLTableCellElementImpl( (HTMLDocumentImpl) getOwnerDocument(), "TD" );
        child = getFirstChild();
        while ( child != null ) {
            if ( child instanceof HTMLTableCellElement ) {
                if ( index == 0 ) {
                    insertBefore( newCell, child );
                    return newCell;
                }
                --index;
            }
            child = child.getNextSibling();
        }
        appendChild( newCell );
        return newCell;
    
public voidsetAlign(java.lang.String align)

        setAttribute( "align", align );
    
public voidsetBgColor(java.lang.String bgColor)

        setAttribute( "bgcolor", bgColor );
    
public voidsetCells(org.w3c.dom.html.HTMLCollection cells)

        Node    child;
        int        i;
        
        child = getFirstChild();
        while ( child != null ) {
            removeChild( child );
            child = child.getNextSibling();
        }
        i = 0;
        child = cells.item( i );
        while ( child != null ) {
            appendChild ( child );
            ++i;
            child = cells.item( i );
        }
    
public voidsetCh(java.lang.String ch)

        // Make sure that the access key is a single character.
        if ( ch != null && ch.length() > 1 ) {
            ch = ch.substring( 0, 1 );
        }
        setAttribute( "char", ch );
    
public voidsetChOff(java.lang.String chOff)

        setAttribute( "charoff", chOff );
    
public voidsetRowIndex(int rowIndex)

        Node    parent;
        
        parent = getParentNode();
        if ( parent instanceof HTMLTableSectionElement ) {
            parent = parent.getParentNode();
        }
        if ( parent instanceof HTMLTableElement ) {
            ( (HTMLTableElementImpl) parent ).insertRowX( rowIndex, this );
        }
    
public voidsetSectionRowIndex(int sectionRowIndex)

        Node    parent;
        
        parent = getParentNode();
        if ( parent instanceof HTMLTableSectionElement ) {
            ( (HTMLTableSectionElementImpl) parent ).insertRowX( sectionRowIndex, this );
        }
    
public voidsetVAlign(java.lang.String vAlign)

        setAttribute( "valign", vAlign );