Class GridConnector
- java.lang.Object
-
- com.vaadin.client.ui.AbstractConnector
-
- com.vaadin.client.ui.AbstractComponentConnector
-
- com.vaadin.client.ui.AbstractHasComponentsConnector
-
- com.vaadin.client.connectors.GridConnector
-
- All Implemented Interfaces:
com.google.gwt.event.shared.EventHandler
,StateChangeEvent.StateChangeHandler
,ComponentConnector
,ConnectorHierarchyChangeEvent.ConnectorHierarchyChangeHandler
,DeferredWorker
,HasComponentsConnector
,ServerConnector
,ManagedLayout
,SimpleManagedLayout
,Connector
,Serializable
public class GridConnector extends AbstractHasComponentsConnector implements SimpleManagedLayout, DeferredWorker
Connects the client sideGrid
widget with the server sideGrid
component.The Grid is typed to JSONObject. The structure of the JSONObject is described at
DataProviderRpc.setRowData(int, List)
.- Since:
- 7.4
- Author:
- Vaadin Ltd
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.vaadin.client.ui.AbstractComponentConnector
SIGNIFICANT_MOVE_THRESHOLD
-
-
Constructor Summary
Constructors Constructor Description GridConnector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getColumnId(Grid.Column<?,?> column)
com.vaadin.client.connectors.RpcDataSourceConnector.DetailsListener
getDetailsListener()
Gets the listener used by this connector for tracking when row detail visibility changes.String
getRowKey(JsonObject row)
Gets the row key for a row object.GridState
getState()
Returns the shared state object for this connector.TooltipInfo
getTooltipInfo(com.google.gwt.dom.client.Element element)
Gets the tooltip info for the given element.Grid<JsonObject>
getWidget()
Returns the widget associated with this paintable.boolean
hasTooltip()
Check whether there might be a tooltip for this component.protected void
init()
Called when the connector has been initialized.boolean
isWorkPending()
Checks whether there are operations pending for this widget or connector that must be executed before reaching a steady state.void
layout()
void
onConnectorHierarchyChange(ConnectorHierarchyChangeEvent connectorHierarchyChangeEvent)
Called by the framework when the list of child components of the connector implementing this interface has changed.void
onStateChanged(StateChangeEvent stateChangeEvent)
Notifies the event handler that the state has changed.protected void
sendContextClickEvent(MouseEventDetails details, com.google.gwt.dom.client.EventTarget eventTarget)
This method sends the context menu event to the server-side.void
setDataSource(RpcDataSourceConnector.RpcDataSource dataSource)
void
updateCaption(ComponentConnector connector)
Update child components caption, description and error message.-
Methods inherited from class com.vaadin.client.ui.AbstractHasComponentsConnector
addConnectorHierarchyChangeHandler, getChildComponents, setChildComponents
-
Methods inherited from class com.vaadin.client.ui.AbstractComponentConnector
createWidget, delegateCaptionHandling, flush, getIcon, getIconUri, getLayoutManager, isReadOnly, isRealUpdate, isRelativeHeight, isRelativeWidth, isUndefinedHeight, isUndefinedWidth, onUnregister, registerTouchHandlers, setWidgetEnabled, setWidgetStyleName, setWidgetStyleNameWithPrefix, shouldHandleLongTap, unregisterTouchHandlers, updateComponentSize, updateComponentSize, updateEnabledState, updateWidgetSize, updateWidgetStyleNames
-
Methods inherited from class com.vaadin.client.ui.AbstractConnector
addStateChangeHandler, addStateChangeHandler, createState, doInit, ensureHandlerManager, fireEvent, forceStateChange, getChildren, getConnection, getConnectorId, getParent, getResourceUrl, getRpcImplementations, getRpcProxy, getStateType, hasEventListener, isEnabled, registerRpc, removeStateChangeHandler, removeStateChangeHandler, setChildren, setParent, unregisterRpc
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.vaadin.client.ComponentConnector
delegateCaptionHandling, flush, getLayoutManager, isReadOnly, isRelativeHeight, isRelativeWidth, isUndefinedHeight, isUndefinedWidth, setWidgetEnabled
-
Methods inherited from interface com.vaadin.shared.Connector
getConnectorId
-
Methods inherited from interface com.vaadin.client.ServerConnector
addStateChangeHandler, addStateChangeHandler, doInit, fireEvent, getChildren, getConnection, getParent, getRpcImplementations, hasEventListener, isEnabled, onUnregister, removeStateChangeHandler, removeStateChangeHandler, setChildren, setParent, updateEnabledState
-
-
-
-
Method Detail
-
getWidget
public Grid<JsonObject> getWidget()
Description copied from class:AbstractComponentConnector
Returns the widget associated with this paintable. The widget returned by this method must not changed during the life time of the paintable.- Specified by:
getWidget
in interfaceComponentConnector
- Overrides:
getWidget
in classAbstractComponentConnector
- Returns:
- The widget associated with this paintable
-
getState
public GridState getState()
Description copied from class:AbstractConnector
Returns the shared state object for this connector. Override this method to define the shared state type for your connector.- Specified by:
getState
in interfaceComponentConnector
- Specified by:
getState
in interfaceServerConnector
- Overrides:
getState
in classAbstractComponentConnector
- Returns:
- the current shared state (never null)
-
init
protected void init()
Description copied from class:AbstractConnector
Called when the connector has been initialized. Override this method to perform initialization of the connector.- Overrides:
init
in classAbstractConnector
-
onStateChanged
public void onStateChanged(StateChangeEvent stateChangeEvent)
Description copied from interface:StateChangeEvent.StateChangeHandler
Notifies the event handler that the state has changed.- Specified by:
onStateChanged
in interfaceStateChangeEvent.StateChangeHandler
- Overrides:
onStateChanged
in classAbstractComponentConnector
- Parameters:
stateChangeEvent
- the state change event with details about the change
-
setDataSource
public void setDataSource(RpcDataSourceConnector.RpcDataSource dataSource)
-
getRowKey
public String getRowKey(JsonObject row)
Gets the row key for a row object.- Parameters:
row
- the row object- Returns:
- the key for the given row
-
updateCaption
public void updateCaption(ComponentConnector connector)
Description copied from interface:HasComponentsConnector
Update child components caption, description and error message.Each component is responsible for maintaining its caption, description and error message. In most cases components doesn't want to do that and those elements reside outside of the component. Because of this layouts must provide service for it's childen to show those elements for them.
- Specified by:
updateCaption
in interfaceHasComponentsConnector
- Parameters:
connector
- Child component for which service is requested.
-
onConnectorHierarchyChange
public void onConnectorHierarchyChange(ConnectorHierarchyChangeEvent connectorHierarchyChangeEvent)
Description copied from interface:ConnectorHierarchyChangeEvent.ConnectorHierarchyChangeHandler
Called by the framework when the list of child components of the connector implementing this interface has changed. The implementation is responsible for attaching the widgets of any new children and detaching the widgets of any removed children. Implementations should typically also make sure that the child widgets are attached according to the ordering of the child components.This method is called after the shared state and hierarchy data (i.e.
AbstractHasComponentsConnector.setChildComponents(List)
) been updated for all affected connectors, but before updating captions, firing state change events, invoking updateFromUIDL for legacy connectors, invoking RPC and starting the layout phase.Please note that hierarchy change events are fired in a non-deterministic order when a message from the server causes multiple parts of the hierarchy to change. This means that the old parent connector might not yet have detached a child widget and that the widget of a removed child might already have been attached by its new parent.
- Specified by:
onConnectorHierarchyChange
in interfaceConnectorHierarchyChangeEvent.ConnectorHierarchyChangeHandler
- Parameters:
connectorHierarchyChangeEvent
- the event with information about the hierarchy change
-
getColumnId
public String getColumnId(Grid.Column<?,?> column)
-
layout
public void layout()
- Specified by:
layout
in interfaceSimpleManagedLayout
-
isWorkPending
public boolean isWorkPending()
Description copied from interface:DeferredWorker
Checks whether there are operations pending for this widget or connector that must be executed before reaching a steady state.- Specified by:
isWorkPending
in interfaceDeferredWorker
-
getDetailsListener
public com.vaadin.client.connectors.RpcDataSourceConnector.DetailsListener getDetailsListener()
Gets the listener used by this connector for tracking when row detail visibility changes.- Returns:
- the used details listener
- Since:
- 7.5.0
-
hasTooltip
public boolean hasTooltip()
Description copied from interface:ComponentConnector
Check whether there might be a tooltip for this component. The framework will only add event listeners for automatically handling tooltips (usingComponentConnector.getTooltipInfo(Element)
) if this method returns true.This is only done to optimize performance, so in cases where the status is not known, it's safer to return
true
so that there will be a tooltip handler even though it might not be needed in all cases.- Specified by:
hasTooltip
in interfaceComponentConnector
- Overrides:
hasTooltip
in classAbstractComponentConnector
- Returns:
true
if some part of the component might have a tooltip, otherwisefalse
-
getTooltipInfo
public TooltipInfo getTooltipInfo(com.google.gwt.dom.client.Element element)
Description copied from interface:ComponentConnector
Gets the tooltip info for the given element.When overriding this method,
ComponentConnector.hasTooltip()
should also be overridden to returntrue
in all situations where this method might return a non-empty result.- Specified by:
getTooltipInfo
in interfaceComponentConnector
- Overrides:
getTooltipInfo
in classAbstractComponentConnector
- Parameters:
element
- The element to lookup a tooltip for- Returns:
- The tooltip for the element or null if no tooltip is defined for this element.
-
sendContextClickEvent
protected void sendContextClickEvent(MouseEventDetails details, com.google.gwt.dom.client.EventTarget eventTarget)
Description copied from class:AbstractComponentConnector
This method sends the context menu event to the server-side. Can be overridden to provide extra information through an alternative RPC interface.- Overrides:
sendContextClickEvent
in classAbstractComponentConnector
-
-