|
GWT 2.4.0 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
C
- the type that this Cell representspublic interface Cell<C>
A light weight representation of a renderable object.
public class CellExample implements EntryPoint { /** * A custom {@link Cell} used to render a string that contains the name of a * color. */ private static class ColorCell extends AbstractCell<String> { @Override public void render(Context context, String value, SafeHtmlBuilder sb) { /* * Always do a null check on the value. Cell widgets can pass null to * cells if the underlying data contains a null, or if the data arrives * out of order. */ if (value == null) { return; } // If the value comes from the user, we escape it to avoid XSS attacks. SafeHtml safeValue = SafeHtmlUtils.fromString(value); // Append some HTML that sets the text color. sb.appendHtmlConstant("<div style=\"color:" + safeValue.asString() + "\">"); sb.append(safeValue); sb.appendHtmlConstant("</div>"); } } /** * The list of data to display. */ private static final List<String> COLORS = Arrays.asList("red", "green", "blue", "violet", "black", "gray"); public void onModuleLoad() { // Create a cell to render each value. ColorCell cell = new ColorCell(); // Use the cell in a CellList. CellList<String> cellList = new CellList<String>(cell); // Push the data into the widget. cellList.setRowData(0, COLORS); // Add it to the root panel. RootPanel.get().add(cellList); } }
Nested Class Summary | |
---|---|
static class |
Cell.Context
Contains information about the context of the Cell. |
Method Summary | |
---|---|
boolean |
dependsOnSelection()
Check if this cell depends on the selection state. |
java.util.Set<java.lang.String> |
getConsumedEvents()
Get the set of events that this cell consumes. |
boolean |
handlesSelection()
Check if this cell handles selection. |
boolean |
isEditing(Cell.Context context,
Element parent,
C value)
Returns true if the cell is currently editing the data identified by the given element and key. |
void |
onBrowserEvent(Cell.Context context,
Element parent,
C value,
NativeEvent event,
ValueUpdater<C> valueUpdater)
Handle a browser event that took place within the cell. |
void |
render(Cell.Context context,
C value,
SafeHtmlBuilder sb)
Render a cell as HTML into a SafeHtmlBuilder , suitable for passing
to Element.setInnerHTML(String) on a container element. |
boolean |
resetFocus(Cell.Context context,
Element parent,
C value)
Reset focus on the Cell. |
void |
setValue(Cell.Context context,
Element parent,
C value)
This method may be used by cell containers to set the value on a single cell directly, rather than using Element.setInnerHTML(String) . |
Method Detail |
---|
boolean dependsOnSelection()
java.util.Set<java.lang.String> getConsumedEvents()
onBrowserEvent(Context, Element, Object, NativeEvent, ValueUpdater)
when the event occurs.
The returned value should not be modified, and may be an unmodifiable set. Changes to the return value may not be reflected in the cell.
boolean handlesSelection()
boolean isEditing(Cell.Context context, Element parent, C value)
context
- the Cell.Context
of the cellparent
- the parent Elementvalue
- the value associated with the cell
void onBrowserEvent(Cell.Context context, Element parent, C value, NativeEvent event, ValueUpdater<C> valueUpdater)
context
- the Cell.Context
of the cellparent
- the parent Elementvalue
- the value associated with the cellevent
- the native browser eventvalueUpdater
- a ValueUpdater
, or null if not specifiedvoid render(Cell.Context context, C value, SafeHtmlBuilder sb)
SafeHtmlBuilder
, suitable for passing
to Element.setInnerHTML(String)
on a container element.
Note: If your cell contains natively focusable elements, such as buttons or input elements, be sure to set the tabIndex to -1 so that they do not steal focus away from the containing widget.
context
- the Cell.Context
of the cellvalue
- the cell value to be renderedsb
- the SafeHtmlBuilder
to be written toboolean resetFocus(Cell.Context context, Element parent, C value)
context
- the Cell.Context
of the cellparent
- the parent Elementvalue
- the value associated with the cell
void setValue(Cell.Context context, Element parent, C value)
Element.setInnerHTML(String)
. See
setValue(Context, Element, Object)
for a default
implementation that uses render(Context, Object, SafeHtmlBuilder)
.
context
- the Cell.Context
of the cellparent
- the parent Elementvalue
- the value associated with the cell
|
GWT 2.4.0 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |