public interface GroupsSortableModel<D> extends Sortable<D>
GroupsModel
to control the sorting and grouping of the data model.
D: the type of the data.
Modifier and Type | Method and Description |
---|---|
default java.lang.String |
getSortDirection(java.util.Comparator<D> cmpr)
Returns the sort direction of this model for the given comparator.
|
void |
group(java.util.Comparator<D> cmpr,
boolean ascending,
int colIndex)
Groups and sorts the data by the specified column.
|
default void |
sort(java.util.Comparator<D> cmpr,
boolean ascending)
It called when the associated component
(such as
Listbox ) has to sort the content. |
void |
sort(java.util.Comparator<D> cmpr,
boolean ascending,
int colIndex)
|
void sort(java.util.Comparator<D> cmpr, boolean ascending, int colIndex)
Listbox
or Grid
has to sort
the content.
After sorting, this model shall notify the instances of
ListDataListener
(registered thru
ListModel.addListDataListener(org.zkoss.zul.event.ListDataListener)
) to update the content.
Typically you have to notify with
new ListDataEvent(this, ListDataEvent.CONTENTS_CHANGED, -1, -1)
to denote all data are changed (and reloading is required).
The comparator assigned to, say, Listheader.setSortAscending(java.util.Comparator)
is passed to method as the cmpr argument.
Thus, developers could use it as a tag to know which column
or what kind of order to sort.
Notice that the comparator is capable to sort under the order specified
in the ascending parameter. In other words, you could ignore the
ascending parameter (which is used only for providing additional information)
cmpr
- the comparator assigned to Listheader.setSortAscending(java.util.Comparator)
and other relative methods. If developers didn't assign any one,
the default comparator is used.
Notice that it is capable to sort the data in the correct order,
you could ignore the ascending parameter.ascending
- whether to sort in the ascending order (or in
the descending order, if false). Notice that it is used only to
provide additional information. To sort the data correctly, you could
count on the cmpr parameter only.colIndex
- the index of the columndefault void sort(java.util.Comparator<D> cmpr, boolean ascending)
Sortable
Listbox
) has to sort the content.
After sorting, this model shall notify the component abort the result.
For example, if this interface is used with ListModel
,
then it might do the following to notify all registered listeners
ListDataListener
(registered by ListModel.addListDataListener(org.zkoss.zul.event.ListDataListener)
)
to update the content:
new ListDataEvent(this, ListDataEvent.CONTENTS_CHANGED, -1, -1)
The comparator assigned to, say, Listheader.setSortAscending(java.util.Comparator)
is passed to method as the cmpr argument.
Thus, developers could use it as a tag to know which column
or what kind of order to sort.
Notice that the comparator is capable to sort under the order specified
in the ascending parameter. In other words, you could ignore the
ascending parameter (which is used only for providing additional information)
sort
in interface Sortable<D>
cmpr
- the comparator assigned to Listheader.setSortAscending(java.util.Comparator)
and other relative methods. If developers didn't assign any one,
the default comparator is used.
Notice that it is capable to sort the data in the correct order,
you could ignore the ascending parameter.ascending
- whether to sort in the ascending order (or in
the descending order, if false). Notice that it is used only to
provide additional information. To sort the data correctly, you could
count on the cmpr parameter only.default java.lang.String getSortDirection(java.util.Comparator<D> cmpr)
Sortable
Default: "natural".
getSortDirection
in interface Sortable<D>
void group(java.util.Comparator<D> cmpr, boolean ascending, int colIndex)
Listbox
or Grid
has the sort function.cmpr
- the comparator assigned to Column.setSortAscending(java.util.Comparator<?>)
and other relative methods. If developers didn't assign any one,
the method is returned directly.ascending
- whether to sort in the ascending order (or in
the descending order)colIndex
- the index of the columnCopyright © 2005-2023 Potix Corporation. All Rights Reserved.