com.extjs.gxt.ui.client.binder
Class StoreBinder<S extends Store<M>,C extends Component,M extends ModelData>

java.lang.Object
  extended by com.extjs.gxt.ui.client.event.BaseObservable
      extended by com.extjs.gxt.ui.client.binder.StoreBinder<S,C,M>
Type Parameters:
S - the store type
C - the component being bound
M - the model type
All Implemented Interfaces:
Observable, SelectionProvider<M>
Direct Known Subclasses:
DataListBinder, DataViewBinder, TableBinder, TreeBinder

public abstract class StoreBinder<S extends Store<M>,C extends Component,M extends ModelData>
extends BaseObservable
implements SelectionProvider<M>

Abstract base class for all Store Binders. Binders provide model support to data widgets by binding a Store to a component.


Constructor Summary
StoreBinder(S store, C container)
          Creates a new binder instance.
 
Method Summary
 void addSelectionChangedListener(SelectionChangedListener<M> listener)
          Add a selection changed listener.
abstract  Component findItem(M model)
          Returns the matching component for the given model.
 java.util.List<M> getSelection()
          Returns the current selection.
 Store<M> getStore()
          Returns the binder's store.
 void init()
          Must be called after the binder had been configured.
 boolean isAutoSelect()
          Returns true if select on load is enabled.
 boolean isFiltered(M parent, M child)
          Returns whether the given model is filtered.
 boolean isMask()
          Returns true if masking is enabled.
 void removeSelectionListener(SelectionChangedListener<M> listener)
          Removes a selection changed listener.
 void setAutoSelect(boolean autoSelect)
          True to select the first model after the store's data changes.
 void setIconProvider(ModelStringProvider<M> iconProvider)
          Sets the binder's icon provider.
 void setMask(boolean mask)
          Sets whether a mask should be displayed during a load operation.
 void setSelection(java.util.List<M> selection)
          Sets the current selection for this selection provider.
 void setSelection(M selection)
          Sets the current selection for this selection provider.
 void setStringProvider(ModelStringProvider<M> stringProvider)
          Sets the binder's string provider.
 void setStyleProvider(ModelStringProvider<M> styleProvider)
          Sets the binder's style provider.
 
Methods inherited from class com.extjs.gxt.ui.client.event.BaseObservable
addListener, fireEvent, fireEvent, getFiresEvents, getListeners, hasActiveEvent, hasListeners, hasListeners, removeAllListeners, removeListener, setFiresEvents
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StoreBinder

public StoreBinder(S store,
                   C container)
Creates a new binder instance.

Parameters:
store - the store
container - the container
Method Detail

addSelectionChangedListener

public void addSelectionChangedListener(SelectionChangedListener<M> listener)
Description copied from interface: SelectionProvider
Add a selection changed listener.

Specified by:
addSelectionChangedListener in interface SelectionProvider<M extends ModelData>
Parameters:
listener - a selection changed listener

findItem

public abstract Component findItem(M model)
Returns the matching component for the given model.

Parameters:
model - the model
Returns:
the component

getSelection

public java.util.List<M> getSelection()
Description copied from interface: SelectionProvider
Returns the current selection.

Specified by:
getSelection in interface SelectionProvider<M extends ModelData>
Returns:
the current selection

getStore

public Store<M> getStore()
Returns the binder's store.

Returns:
the store

init

public void init()
Must be called after the binder had been configured.


isAutoSelect

public boolean isAutoSelect()
Returns true if select on load is enabled.

Returns:
the auto select state

isFiltered

public boolean isFiltered(M parent,
                          M child)
Returns whether the given model is filtered.

Parameters:
parent - the model parent
child - the child model
Returns:
true if the child is filtered

isMask

public boolean isMask()
Returns true if masking is enabled.

Returns:
the mask state

removeSelectionListener

public void removeSelectionListener(SelectionChangedListener<M> listener)
Description copied from interface: SelectionProvider
Removes a selection changed listener.

Specified by:
removeSelectionListener in interface SelectionProvider<M extends ModelData>
Parameters:
listener - a selection changed listener

setAutoSelect

public void setAutoSelect(boolean autoSelect)
True to select the first model after the store's data changes.

Parameters:
autoSelect - true to auto select

setIconProvider

public void setIconProvider(ModelStringProvider<M> iconProvider)
Sets the binder's icon provider.

Parameters:
iconProvider - the icon provider

setMask

public void setMask(boolean mask)
Sets whether a mask should be displayed during a load operation.

Parameters:
mask - true for mask

setSelection

public void setSelection(java.util.List<M> selection)
Description copied from interface: SelectionProvider
Sets the current selection for this selection provider.

Specified by:
setSelection in interface SelectionProvider<M extends ModelData>
Parameters:
selection - the new selection

setSelection

public void setSelection(M selection)
Sets the current selection for this selection provider.

Parameters:
selection - the selection

setStringProvider

public void setStringProvider(ModelStringProvider<M> stringProvider)
Sets the binder's string provider.

Parameters:
stringProvider - the string provider

setStyleProvider

public void setStyleProvider(ModelStringProvider<M> styleProvider)
Sets the binder's style provider.

Parameters:
styleProvider - the style provider