Class GridDataLoader
- java.lang.Object
-
- org.zkoss.zul.impl.GridDataLoader
-
- All Implemented Interfaces:
Cropper,DataLoader
- Direct Known Subclasses:
LiveGridDataLoader
public class GridDataLoader extends java.lang.Object implements DataLoader, Cropper
GenericGriddata loader.- Since:
- 5.0.0
- Author:
- henrichen
-
-
Constructor Summary
Constructors Constructor Description GridDataLoader()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddoGroupsDataChange(GroupsDataEvent event)Handle event when GroupsDataEvent is fired from owner component.voiddoListDataChange(ListDataEvent event)Handle event when ListDataEvent is fired from owner component.java.util.Set<? extends Component>getAvailableAtClient()Returns a set of child components that are available at the client, or null if ALL available.protected java.util.Set<? extends Component>getAvailableAtClient(int offset, int limit)ComponentgetCropOwner()Returns the owner of the cropping scope.intgetLimit()Returns the required visible limit size of the current loaded data chunk to be shown on the screen.intgetOffset()Returns the requested visible offset of the current loaded data chunk.ComponentgetOwner()Returns the associated owner component of this DataLoader.java.lang.ObjectgetRealRenderer()Return the renderer to do rendering.intgetTotalSize()Returns the total size of the data.voidinit(Component owner, int offset, int limit)Callback from the owner component and give a chance to initialize things.protected booleaninPagingMold()booleanisCropper()Returns whether it is a cropper, i.e., cropping is applied.protected ComponentnewUnloadedItem(java.lang.Object renderer, int index)Creates a new and unloaded row.voidreset()Callback from the owner component and give a chance to reset things.voidsetLoadAll(boolean b)Sets whether to always load all items from ListModel.voidsyncModel(int offset, int limit)Synchronizes the owner component to be consistent with the specified model.voidupdateModelInfo()Used to update some extra control information to the client.
-
-
-
Method Detail
-
init
public void init(Component owner, int offset, int limit)
Description copied from interface:DataLoaderCallback from the owner component and give a chance to initialize things.- Specified by:
initin interfaceDataLoader- Parameters:
owner- the owner component of this DataLoader.
-
reset
public void reset()
Description copied from interface:DataLoaderCallback from the owner component and give a chance to reset things.- Specified by:
resetin interfaceDataLoader
-
getOwner
public final Component getOwner()
Description copied from interface:DataLoaderReturns the associated owner component of this DataLoader.- Specified by:
getOwnerin interfaceDataLoader
-
getOffset
public int getOffset()
Description copied from interface:DataLoaderReturns the requested visible offset of the current loaded data chunk.- Specified by:
getOffsetin interfaceDataLoader- Returns:
- the requested visible offset of the current loaded data chunk.
-
getLimit
public int getLimit()
Description copied from interface:DataLoaderReturns the required visible limit size of the current loaded data chunk to be shown on the screen.- Specified by:
getLimitin interfaceDataLoader- Returns:
- the required visible limit size of the current loaded data chunk to be shown on the screen.
-
getTotalSize
public int getTotalSize()
Description copied from interface:DataLoaderReturns the total size of the data.- Specified by:
getTotalSizein interfaceDataLoader- Returns:
- the total size of the data.
-
doGroupsDataChange
public void doGroupsDataChange(GroupsDataEvent event)
Description copied from interface:DataLoaderHandle event when GroupsDataEvent is fired from owner component.- Specified by:
doGroupsDataChangein interfaceDataLoader- Parameters:
event- the corresponding GroupsDataEvent
-
doListDataChange
public void doListDataChange(ListDataEvent event)
Description copied from interface:DataLoaderHandle event when ListDataEvent is fired from owner component.- Specified by:
doListDataChangein interfaceDataLoader
-
newUnloadedItem
protected Component newUnloadedItem(java.lang.Object renderer, int index)
Creates a new and unloaded row.
-
getRealRenderer
public java.lang.Object getRealRenderer()
Description copied from interface:DataLoaderReturn the renderer to do rendering.- Specified by:
getRealRendererin interfaceDataLoader
-
syncModel
public void syncModel(int offset, int limit)Description copied from interface:DataLoaderSynchronizes the owner component to be consistent with the specified model.- Specified by:
syncModelin interfaceDataLoader- Parameters:
offset- the starting index of the range to do data synchronize.limit- the size of the range to do data synchronize. -1 means the current range.
-
inPagingMold
protected boolean inPagingMold()
-
updateModelInfo
public void updateModelInfo()
Description copied from interface:DataLoaderUsed to update some extra control information to the client.- Specified by:
updateModelInfoin interfaceDataLoader
-
setLoadAll
public void setLoadAll(boolean b)
Description copied from interface:DataLoaderSets whether to always load all items from ListModel.- Specified by:
setLoadAllin interfaceDataLoader
-
isCropper
public boolean isCropper()
Description copied from interface:CropperReturns whether it is a cropper, i.e., cropping is applied.Note: this method is called when an child is detached, so you have to count one more for the total number of children. Example <= must be used, not <:
getChildCount() <= getPageSize()The result of returning false is the same as not declaring with
Cropper.
-
getAvailableAtClient
public java.util.Set<? extends Component> getAvailableAtClient()
Description copied from interface:CropperReturns a set of child components that are available at the client, or null if ALL available. The child components in the returned set must be in the same order ofComponent.getChildren(). In order words, you must use LinkedHashSet or similar to ensure the order in the returned set.Note: for better performance, it is better to return null if all children are available at the client.
Note: the components in the returned set can have different parents. It is useful if you want to implement multi-level cropping, such as tree. Refer to
Cropper.getCropOwner().- Specified by:
getAvailableAtClientin interfaceCropper
-
getAvailableAtClient
protected java.util.Set<? extends Component> getAvailableAtClient(int offset, int limit)
-
getCropOwner
public Component getCropOwner()
Description copied from interface:CropperReturns the owner of the cropping scope. In most cases,Cropper.getAvailableAtClient()returns only the available direct children of this component, and this method returns this component. It is so-called a single-level cropping, such as listbox and tree.If you want to implement multi-level cropping, such as tree, you can consider the whole tree as a cropping scope. And,
Cropper.getAvailableAtClient()returns all available items, not just the child of this component. In additions, this method returns the tree.- Specified by:
getCropOwnerin interfaceCropper
-
-