GWT 2.7.0

com.google.gwt.user.client.ui
Class FlexTable

java.lang.Object
  extended by com.google.gwt.user.client.ui.UIObject
      extended by com.google.gwt.user.client.ui.Widget
          extended by com.google.gwt.user.client.ui.Panel
              extended by com.google.gwt.user.client.ui.HTMLTable
                  extended by com.google.gwt.user.client.ui.FlexTable
All Implemented Interfaces:
HasAllDragAndDropHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragEndHandlers, HasDragEnterHandlers, HasDragHandlers, HasDragLeaveHandlers, HasDragOverHandlers, HasDragStartHandlers, HasDropHandlers, HasAttachHandlers, HasHandlers, EventListener, HasVisibility, HasWidgets, HasWidgets.ForIsWidget, IsWidget, SourcesTableEvents, java.lang.Iterable<Widget>

public class FlexTable
extends HTMLTable

A flexible table that creates cells on demand. It can be jagged (that is, each row can contain a different number of cells) and individual cells can be set to span multiple rows or columns.

Example

public class FlexTableExample implements EntryPoint {

  public void onModuleLoad() {
    // Tables have no explicit size -- they resize automatically on demand.
    FlexTable t = new FlexTable();

    // Put some text at the table's extremes.  This forces the table to be
    // 3 by 3.
    t.setText(0, 0, "upper-left corner");
    t.setText(2, 2, "bottom-right corner");

    // Let's put a button in the middle...
    t.setWidget(1, 0, new Button("Wide Button"));

    // ...and set it's column span so that it takes up the whole row.
    t.getFlexCellFormatter().setColSpan(1, 0, 3);

    RootPanel.get().add(t);
  }
}


Nested Class Summary
 class FlexTable.FlexCellFormatter
          FlexTable-specific implementation of HTMLTable.CellFormatter.
 
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.HTMLTable
HTMLTable.Cell, HTMLTable.CellFormatter, HTMLTable.ColumnFormatter, HTMLTable.RowFormatter
 
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
 
Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.HasWidgets
HasWidgets.ForIsWidget
 
Field Summary
 
Fields inherited from class com.google.gwt.user.client.ui.Widget
eventsToSink
 
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR
 
Constructor Summary
FlexTable()
           
 
Method Summary
 void addCell(int row)
          Appends a cell to the specified row.
 int getCellCount(int row)
          Gets the number of cells on a given row.
 FlexTable.FlexCellFormatter getFlexCellFormatter()
          Explicitly gets the FlexTable.FlexCellFormatter.
 int getRowCount()
          Gets the number of rows.
 void insertCell(int beforeRow, int beforeColumn)
          Inserts a cell into the FlexTable.
 int insertRow(int beforeRow)
          Inserts a row into the FlexTable.
protected  void prepareCell(int row, int column)
          Ensure that the cell exists.
protected  void prepareRow(int row)
          Ensure that the row exists.
 void removeAllRows()
          Remove all rows in this table.
 void removeCell(int row, int col)
          Removes the specified cell from the table.
 void removeCells(int row, int column, int num)
          Removes a number of cells from a row in the table.
 void removeRow(int row)
          Removes the specified row from the table.
 
Methods inherited from class com.google.gwt.user.client.ui.HTMLTable
addCells, addClickHandler, addDoubleClickHandler, addDragEndHandler, addDragEnterHandler, addDragHandler, addDragLeaveHandler, addDragOverHandler, addDragStartHandler, addDropHandler, addTableListener, checkCellBounds, checkRowBounds, clear, clear, clearCell, createCell, getBodyElement, getCellForEvent, getCellFormatter, getCellPadding, getCellSpacing, getColumnFormatter, getDOMCellCount, getDOMCellCount, getDOMCellCount, getDOMRowCount, getDOMRowCount, getDOMRowCount, getEventTargetCell, getHTML, getRowFormatter, getText, getWidget, insertCells, internalClearCell, internalClearCell, isCellPresent, iterator, onEnsureDebugId, prepareColumn, remove, removeTableListener, setBorderWidth, setCellFormatter, setCellPadding, setCellSpacing, setColumnFormatter, setHTML, setHTML, setRowFormatter, setText, setWidget, setWidget
 
Methods inherited from class com.google.gwt.user.client.ui.Panel
add, add, adopt, doAttachChildren, doDetachChildren, orphan, remove
 
Methods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onAttach, onBrowserEvent, onDetach, onLoad, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents, unsinkEvents
 
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
 

Constructor Detail

FlexTable

public FlexTable()
Method Detail

addCell

public void addCell(int row)
Appends a cell to the specified row.

Parameters:
row - the row to which the new cell will be added
Throws:
java.lang.IndexOutOfBoundsException

getCellCount

public int getCellCount(int row)
Gets the number of cells on a given row.

Specified by:
getCellCount in class HTMLTable
Parameters:
row - the row whose cells are to be counted
Returns:
the number of cells present
Throws:
java.lang.IndexOutOfBoundsException

getFlexCellFormatter

public FlexTable.FlexCellFormatter getFlexCellFormatter()
Explicitly gets the FlexTable.FlexCellFormatter. The results of HTMLTable.getCellFormatter() may also be downcast to a FlexTable.FlexCellFormatter.

Returns:
the FlexTable's cell formatter

getRowCount

public int getRowCount()
Gets the number of rows.

Specified by:
getRowCount in class HTMLTable
Returns:
number of rows

insertCell

public void insertCell(int beforeRow,
                       int beforeColumn)
Inserts a cell into the FlexTable.

Overrides:
insertCell in class HTMLTable
Parameters:
beforeRow - the cell's row
beforeColumn - the cell's column

insertRow

public int insertRow(int beforeRow)
Inserts a row into the FlexTable.

Overrides:
insertRow in class HTMLTable
Parameters:
beforeRow - the row to insert
Returns:
the index of the newly-created row

removeAllRows

public void removeAllRows()
Remove all rows in this table.


removeCell

public void removeCell(int row,
                       int col)
Description copied from class: HTMLTable
Removes the specified cell from the table.

Overrides:
removeCell in class HTMLTable
Parameters:
row - the row of the cell to remove
col - the column of cell to remove

removeCells

public void removeCells(int row,
                        int column,
                        int num)
Removes a number of cells from a row in the table.

Parameters:
row - the row of the cells to be removed
column - the column of the first cell to be removed
num - the number of cells to be removed
Throws:
java.lang.IndexOutOfBoundsException

removeRow

public void removeRow(int row)
Description copied from class: HTMLTable
Removes the specified row from the table.

Overrides:
removeRow in class HTMLTable
Parameters:
row - the index of the row to be removed

prepareCell

protected void prepareCell(int row,
                           int column)
Ensure that the cell exists.

Specified by:
prepareCell in class HTMLTable
Parameters:
row - the row to prepare.
column - the column to prepare.
Throws:
java.lang.IndexOutOfBoundsException - if the row is negative

prepareRow

protected void prepareRow(int row)
Ensure that the row exists.

Specified by:
prepareRow in class HTMLTable
Parameters:
row - The row to prepare.
Throws:
java.lang.IndexOutOfBoundsException - if the row is negative

GWT 2.7.0