Interface IListbox
-
- All Superinterfaces:
IAnyGroup<IListbox>
,IChildable<IListbox,IListitemBase>
,IComponent<IListbox>
,IComposite<IListbox,IMeshComposite>
,IHtmlBasedComponent<IListbox>
,IMeshElement<IListbox>
,IXulElement<IListbox>
public interface IListbox extends IMeshElement<IListbox>, IComposite<IListbox,IMeshComposite>, IChildable<IListbox,IListitemBase>, IAnyGroup<IListbox>
ImmutableListbox
componentNote: unlike
Listbox
, there is no"select"
mold in stateless API, please useISelectbox
instead.Support @Action
Name Action Type onSelect ActionData: SelectData
Notifies one that the user has selected a new item in the listbox.onFocus Denotes when a component gets the focus. Remember event listeners execute at the server, so the focus at the client might be changed when the event listener for onFocus
got executed.onBlur Denotes when a component loses the focus. Remember event listeners execute at the server, so the focus at the client might be changed when the event listener for onBlur
got executed.onPageSize ActionData: PageSizeData
Notifies the paging size has been changed when the autopaging (iListbox.withAutopaging(boolean)
) is enabled and a user changed the size of the content.onCheckSelectAll ActionData: CheckData
Notifies the checkbox on a listheader is checked to select all checkable items.Support Molds
Name Snapshot "default"
"paging"
Support Application Library Properties
-
To turn on the auto-sort facility to sort the model for this component, you have to specify
withAutosort(Autosort)
toIListbox.Autosort.ENABLE
orIListbox.Autosort.IGNORE_CHANGE
.Or configure it from zk.xml by setting library properties. For example,
<library-property/> <name>org.zkoss.zul.listbox.autoSort</name/> <value>true</value/> </library-property/>
-
To set to prefer to deselect all other items and select the item being clicked when
isCheckmark()
is enabled, you have to specifywithCheckmarkDeselectOther(boolean)
totrue
.Or configure it from zk.xml by setting library properties. For example,
<library-property/> <name>org.zkoss.zul.listbox.checkmarkDeselectOthers</name/> <value>true</value/> </library-property/>
-
To set whether to disable select functionality when highlighting text content with mouse dragging or not, you have to specify
withSelectOnHighlightDisabled(boolean)
totrue
.Or configure it from zk.xml by setting library properties. For example,
<library-property/> <name>org.zkoss.zul.listbox.selectOnHighlight.disabled</name/> <value>true</value/> </library-property/>
-
To set whether to disable the selection will be toggled when the user right clicks item, only if
isCheckmark()
is enabled. You have to specifywithRightSelect(boolean)
tofalse
.Or configure it from zk.xml by setting library properties. For example,
<library-property/> <name>org.zkoss.zul.listbox.rightSelect</name/> <value>false</value/> </library-property/>
-
To set whether to enable the selection will be toggled when the user clicks listgroup item, only if
IListgroupChild
in used. You have to specifywithListgroupSelectable(boolean)
totrue
.Or configure it from zk.xml by setting library properties. For example,
<library-property/> <name>org.zkoss.zul.listbox.groupSelect</name/> <value>true</value/> </library-property/>
- Author:
- katherine
- See Also:
Listbox
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
IListbox.Autosort
Specifies whether to sort the model when the following cases: WithListModel
case andIListheader.withSortDirection(String)
is set.IListheader.withSortDirection(String)
is called. Model receivesListDataEvent
andIListheader.withSortDirection(String)
is set. If you want to ignore sorting when receiving ListDataEvent, you can specify the value asIListbox.Autosort.IGNORE_CHANGE
.static class
IListbox.Builder
Builds instances of typeIListbox
.static class
IListbox.Updater
Builds an updater of typeIListbox
forUiAgent.smartUpdate(Locator, SmartUpdater)
.-
Nested classes/interfaces inherited from interface org.zkoss.stateless.sul.IMeshElement
IMeshElement.PagingPosition
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default java.lang.String
getAutosort()
Returns whether to sort all items when model or sort direction be changed.default java.util.List<IAuxhead>
getAuxhead()
Returns the auxhead child.IFrozen
getFrozen()
Returns the frozen child.default java.lang.String
getInnerWidth()
Returns the inner width of this component.IListfoot
getListfoot()
Returns the foot.IListhead
getListhead()
Returns the listhead.java.lang.String
getNonselectableTags()
Returns a list of HTML tag names that shall not cause the tree item being selected if they are clicked.java.lang.String
getOddRowSclass()
Returns the style class for the odd rows.default int
getRows()
Returns the number of the rows to display at screen.default java.lang.String
getWidgetClass()
Returns the client widget class.default boolean
isCheckmark()
Returns whether the check mark shall be displayed in front of each item.default boolean
isCheckmarkDeselectOther()
Returns whether to toggle the selection if clicking on a tree item with a checkmark.default boolean
isListgroupSelectable()
Returns whether Listgroup is selectable.default boolean
isMultiple()
Returns whether multiple selections are allowed.default boolean
isRightSelect()
Returns whether to toggle a list item selection on right click, only ifisCheckmark()
is enabled.default boolean
isSelectOnHighlightDisabled()
Returns whether to disable select functionality when highlighting text content with mouse dragging or not.static IListbox
of(java.lang.Iterable<? extends IListitemBase> children)
Returns the instance with the givenIListitemBase
children.static IListbox
of(IListitemBase... children)
Returns the instance with the givenIListitemBase
children.static IListbox
ofId(java.lang.String id)
Returns the instance with the given id.static IListbox
ofListfoot(IListfoot foot)
Returns the instance with the givenIListfoot
foot child.static IListbox
ofListfooters(java.lang.Iterable<? extends IListfooter<IAnyGroup>> children)
Returns the instance with the givenIListfooter
footer children.static IListbox
ofListfooters(IListfooter<IAnyGroup>... children)
Returns the instance with the givenIListfooter
footer children.static IListbox
ofListhead(IListhead listhead)
Returns the instance with the givenIListhead
child.static IListbox
ofListheaders(java.lang.Iterable<? extends IListheader<IAnyGroup>> children)
Returns the instance with the givenIListheader
column children.static IListbox
ofListheaders(IListheader<IAnyGroup>... children)
Returns the instance with the givenIListheader
column children.default IListbox
withAllComponents(java.lang.Iterable<? extends IMeshComposite> elements)
Copy the current immutable object with elements that replace the content ofchildren
.IListbox
withAutosort(java.lang.String autosort)
Returns a copy ofthis
immutable component with the specifiedautosort
.default IListbox
withAutosort(IListbox.Autosort autosort)
Returns a copy ofthis
immutable component with the specifiedautosort
.IListbox
withAuxhead(java.lang.Iterable<? extends IAuxhead> auxhead)
Returns a copy ofthis
immutable component with the specifiedauxhead
.default IListbox
withAuxhead(IAuxhead... auxhead)
Returns a copy ofthis
immutable component with the specifiedauxhead
.IListbox
withCheckmark(boolean checkmark)
Returns a copy ofthis
immutable component with the specifiedcheckmark
.IListbox
withCheckmarkDeselectOther(boolean checkmarkDeselectOther)
Returns a copy ofthis
immutable component with the specifiedcheckmarkDeselectOther
.IListbox
withFrozen(IFrozen frozen)
Returns a copy ofthis
immutable component with the specifiedfrozen
.IListbox
withInnerWidth(java.lang.String innerWidth)
Returns a copy ofthis
immutable component with the specifiedinnerWidth
.IListbox
withListfoot(IListfoot listfoot)
Returns a copy ofthis
immutable component with the specifiedlistfoot
.IListbox
withListgroupSelectable(boolean listgroupSelectable)
Returns a copy ofthis
immutable component with the specifiedlistgroupSelectable
.IListbox
withListhead(IListhead listhead)
Returns a copy ofthis
immutable component with the specifiedlisthead
.IListbox
withMultiple(boolean multiple)
Returns a copy ofthis
immutable component with the specifiedmultiple
.IListbox
withNonselectableTags(java.lang.String nonselectableTags)
Returns a copy ofthis
immutable component with the specifiedname
.IListbox
withOddRowSclass(java.lang.String oddRowSclass)
Returns a copy ofthis
immutable component with the specifiedoddRowSclass
.IListbox
withRightSelect(boolean rightSelect)
Returns a copy ofthis
immutable component with the specifiedrightSelect
.IListbox
withRows(int rows)
Returns a copy ofthis
immutable component with the specifiedrows
.IListbox
withSelectOnHighlightDisabled(boolean selectOnHighlightDisabled)
Returns a copy ofthis
immutable component with the specifiedselectOnHighlightDisabled
.-
Methods inherited from interface org.zkoss.stateless.sul.IChildable
getChildren, withChildren, withChildren
-
Methods inherited from interface org.zkoss.stateless.sul.IComponent
getAction, getActions, getClientAttributes, getId, getMold, getWidgetListeners, getWidgetOverrides, isVisible, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withActions, withActions, withClientAttribute, withClientAttributes, withId, withMold, withVisible, withWidgetClass, withWidgetListener, withWidgetListeners, withWidgetOverride, withWidgetOverrides
-
Methods inherited from interface org.zkoss.stateless.sul.IHtmlBasedComponent
getClientAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTooltiptext, getTop, getVflex, getWidth, getZclass, getZIndex, isFocus, withClientAction, withDraggable, withDroppable, withFocus, withHeight, withHflex, withLeft, withRenderdefer, withSclass, withStyle, withTabindex, withTabindex, withTooltiptext, withTop, withVflex, withWidth, withZclass, withZIndex
-
Methods inherited from interface org.zkoss.stateless.sul.IMeshElement
getPagingChild, getPagingPosition, getSpan, isAutopaging, isNativeScrollbar, isSizedByContent, withAutopaging, withNativeScrollbar, withPagingChild, withPagingPosition, withPagingPosition, withSizedByContent, withSpan, withSpan
-
Methods inherited from interface org.zkoss.stateless.sul.IXulElement
getContext, getCtrlKeys, getPopup, getTooltip, withContext, withCtrlKeys, withPopup, withTooltip
-
-
-
-
Method Detail
-
getWidgetClass
default java.lang.String getWidgetClass()
Returns the client widget class.Default:
"zul.sel.Listbox"
- Specified by:
getWidgetClass
in interfaceIComponent<IListbox>
-
getListhead
@Nullable IListhead getListhead()
Returns the listhead.Default:
null
-
withListhead
IListbox withListhead(@Nullable IListhead listhead)
Returns a copy ofthis
immutable component with the specifiedlisthead
.Sets the listhead as a child to this component
- Parameters:
listhead
- The listhead child.Default:
null
.- Returns:
- A modified copy of the
this
object
-
getListfoot
@Nullable IListfoot getListfoot()
Returns the foot.Default:
null
-
withListfoot
IListbox withListfoot(@Nullable IListfoot listfoot)
Returns a copy ofthis
immutable component with the specifiedlistfoot
.Sets the listfoot as a child to this component
- Parameters:
listfoot
- The listfoot child.Default:
null
.- Returns:
- A modified copy of the
this
object
-
getFrozen
@Nullable IFrozen getFrozen()
Returns the frozen child.Default:
null
.
-
withFrozen
IListbox withFrozen(@Nullable IFrozen frozen)
Returns a copy ofthis
immutable component with the specifiedfrozen
.Sets the frozen as a child to this component
- Parameters:
frozen
- The foot child.Default:
null
.- Returns:
- A modified copy of the
this
object
-
getAuxhead
default java.util.List<IAuxhead> getAuxhead()
Returns the auxhead child.
-
withAuxhead
IListbox withAuxhead(java.lang.Iterable<? extends IAuxhead> auxhead)
Returns a copy ofthis
immutable component with the specifiedauxhead
.Sets the list of auxhead as children to this component
- Parameters:
auxhead
- The auxhead children.Default:
null
.- Returns:
- A modified copy of the
this
object
-
withAuxhead
default IListbox withAuxhead(IAuxhead... auxhead)
Returns a copy ofthis
immutable component with the specifiedauxhead
.Sets the list of auxhead as children to this component
- Parameters:
auxhead
- The auxhead child.Default:
null
.- Returns:
- A modified copy of the
this
object
-
withAllComponents
default IListbox withAllComponents(java.lang.Iterable<? extends IMeshComposite> elements)
Description copied from interface:IComposite
Copy the current immutable object with elements that replace the content ofchildren
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Specified by:
withAllComponents
in interfaceIComposite<IListbox,IMeshComposite>
- Parameters:
elements
- An iterable of children elements to set- Returns:
- A modified copy of
this
object
-
getRows
default int getRows()
Returns the number of the rows to display at screen. Zero means no limitation.Default:
0
-
withRows
IListbox withRows(int rows)
Returns a copy ofthis
immutable component with the specifiedrows
.Sets the number of the rows of the listbox to display at a screen, which means the height of the listbox is based on the calculation of the number of the rows by multiplying with each row height.
Note: Not allowed to setrows
andheight/vflex
at the same time.- Parameters:
rows
- The number of rows to display.Default:
0
. (Meaning no limitation)- Returns:
- A modified copy of the
this
object
-
getAutosort
@Nullable default java.lang.String getAutosort()
Returns whether to sort all items when model or sort direction be changed.Default:
false
, if the"org.zkoss.zul.listbox.autoSort"
library property is not set in zk.xml.Note: it's meaningless if
ListModel
is not set.
-
withAutosort
IListbox withAutosort(@Nullable java.lang.String autosort)
Returns a copy ofthis
immutable component with the specifiedautosort
.Sets to enable the auto-sort facility to sort the model for this component. Meaningless if
ListModel
is not set.- Parameters:
autosort
- The allowed values arenull
,"false"
,"true"
, and"ignore.change"
.Default:
null
.- Returns:
- A modified copy of the
this
object
-
withAutosort
default IListbox withAutosort(@Nullable IListbox.Autosort autosort)
Returns a copy ofthis
immutable component with the specifiedautosort
.Sets to enable the auto-sort facility to sort the model for this component. Meaningless if
ListModel
is not set.- Parameters:
autosort
- The allowed values arenull
,"false"
,"true"
, and"ignore.change"
.Default:
null
.- Returns:
- A modified copy of the
this
object
-
isMultiple
default boolean isMultiple()
Returns whether multiple selections are allowed.Default:
false
.
-
withMultiple
IListbox withMultiple(boolean multiple)
Returns a copy ofthis
immutable component with the specifiedmultiple
.Sets whether multiple selections are allowed.
Notice that, if a model is assigned, it will change the model's state (by
Selectable.setMultiple(boolean)
).- Parameters:
multiple
- True to allow multiple selections.Default:
false
.- Returns:
- A modified copy of the
this
object
-
isCheckmark
default boolean isCheckmark()
Returns whether the check mark shall be displayed in front of each item.Default:
false
.
-
withCheckmark
IListbox withCheckmark(boolean checkmark)
Returns a copy ofthis
immutable component with the specifiedcheckmark
.Sets whether the check mark shall be displayed in front of each item.
The check mark is a checkbox if
isMultiple()
returns true. It is a radio button ifisMultiple()
returns false.- Parameters:
checkmark
- True to enable the check mark in front of each item.Default:
false
.- Returns:
- A modified copy of the
this
object
-
getNonselectableTags
@Nullable java.lang.String getNonselectableTags()
Returns a list of HTML tag names that shall not cause the tree item being selected if they are clicked.Default:
null
(it meansbutton
,input
,textarea
anda
HTML elements). If you want to select no matter which tag is clicked, please specify an empty string. Specifynull
to use the default and""
to indicate none.
-
withNonselectableTags
IListbox withNonselectableTags(@Nullable java.lang.String nonselectableTags)
Returns a copy ofthis
immutable component with the specifiedname
.Sets a list of HTML tag names that shall not cause the tree item being selected if they are clicked.
Default:
null
(it meansbutton
,input
,textarea
anda
HTML elements). If you want to select no matter which tag is clicked, please specify an empty string.- Parameters:
nonselectableTags
- A list of HTML tag names that will not cause the tree item being selected if clicked. Specifynull
to use the default and""
to indicate none.- Returns:
- A modified copy of the
this
object
-
isCheckmarkDeselectOther
default boolean isCheckmarkDeselectOther()
Returns whether to toggle the selection if clicking on a tree item with a checkmark. Meaningless ifisCheckmark()
is falseDefault:
false
, if the"org.zkoss.zul.listbox.checkmarkDeselectOthers"
library property is not set in zk.xml.
-
withCheckmarkDeselectOther
IListbox withCheckmarkDeselectOther(boolean checkmarkDeselectOther)
Returns a copy ofthis
immutable component with the specifiedcheckmarkDeselectOther
.Sets
true
to prefer to deselect all other items and select the item being clicked. IfisCheckmark()
is enabled.Default:
false
(not to deselect other items).- Parameters:
checkmarkDeselectOther
- True to deselect other items and select the item being clicked.Default:
false
- Returns:
- A modified copy of the
this
object
-
isSelectOnHighlightDisabled
default boolean isSelectOnHighlightDisabled()
Returns whether to disable select functionality when highlighting text content with mouse dragging or not.Default:
false
, if the"org.zkoss.zul.listbox.selectOnHighlight.disabled"
library property is not set in zk.xml.
-
withSelectOnHighlightDisabled
IListbox withSelectOnHighlightDisabled(boolean selectOnHighlightDisabled)
Returns a copy ofthis
immutable component with the specifiedselectOnHighlightDisabled
.Sets whether to disable select functionality when highlighting text content with mouse dragging or not.
- Parameters:
selectOnHighlightDisabled
- True to disable select functionality when highlighting text content with mouse dragging or not.Default:
false
- Returns:
- A modified copy of the
this
object
-
isRightSelect
default boolean isRightSelect()
Returns whether to toggle a list item selection on right click, only ifisCheckmark()
is enabled.Default:
true
, if the"org.zkoss.zul.listbox.rightSelect"
library property is not set in zk.xml.
-
withRightSelect
IListbox withRightSelect(boolean rightSelect)
Returns a copy ofthis
immutable component with the specifiedrightSelect
.Sets whether to enable the selection will be toggled when the user right clicks item, only if
isCheckmark()
is enabled.- Parameters:
rightSelect
- False not to select/deselect item on right clickDefault:
true
- Returns:
- A modified copy of the
this
object
-
isListgroupSelectable
default boolean isListgroupSelectable()
Returns whether Listgroup is selectable.Default:
false
-
withListgroupSelectable
IListbox withListgroupSelectable(boolean listgroupSelectable)
Returns a copy ofthis
immutable component with the specifiedlistgroupSelectable
.Sets whether to enable or disable the selection will be toggled when the user clicks item on
IListgroupChild
.- Parameters:
listgroupSelectable
- False not to select/deselect item on clickDefault:
false
- Returns:
- A modified copy of the
this
object
-
getInnerWidth
default java.lang.String getInnerWidth()
Returns the inner width of this component. The inner width is the width of the inner table.Default: "100%"
-
withInnerWidth
IListbox withInnerWidth(java.lang.String innerWidth)
Returns a copy ofthis
immutable component with the specifiedinnerWidth
.Sets the inner width of this component. The inner width is the width of the inner table. By default, it is 100%. That is, it is the same as the width of this component. However, it is changed when the user is sizing the column's width.
Application developers rarely call this method, unless they want to preserve the widths of sizable columns changed by the user. To preserve the widths, the developer have to store the widths of all columns and the inner width (
getInnerWidth()
), and then restore them when re-creating this component.- Parameters:
innerWidth
- The inner width of this component.Default:
"100%"
.- Returns:
- A modified copy of the
this
object
-
getOddRowSclass
@Nullable java.lang.String getOddRowSclass()
Returns the style class for the odd rows.Default:
null
-
withOddRowSclass
IListbox withOddRowSclass(@Nullable java.lang.String oddRowSclass)
Returns a copy ofthis
immutable component with the specifiedoddRowSclass
.Sets the style class for the odd rows. If the style class doesn't exist, the striping effect disappears. You can provide different effects by providing the proper style classes.
- Parameters:
oddRowSclass
- The style class for the odd rowsDefault:
null
- Returns:
- A modified copy of the
this
object
-
of
static IListbox of(java.lang.Iterable<? extends IListitemBase> children)
Returns the instance with the givenIListitemBase
children.- Parameters:
children
- The children ofIListitemBase
-
of
static IListbox of(IListitemBase... children)
Returns the instance with the givenIListitemBase
children.- Parameters:
children
- The children ofIListitemBase
-
ofListhead
static IListbox ofListhead(IListhead listhead)
Returns the instance with the givenIListhead
child.- Parameters:
listhead
- TheIListhead
child
-
ofListheaders
static IListbox ofListheaders(java.lang.Iterable<? extends IListheader<IAnyGroup>> children)
Returns the instance with the givenIListheader
column children.a shortcut of
IChildable.withChildren(java.lang.Iterable<? extends I>)
- Parameters:
children
- TheIListheader
children
-
ofListheaders
static IListbox ofListheaders(IListheader<IAnyGroup>... children)
Returns the instance with the givenIListheader
column children.a shortcut of
IChildable.withChildren(java.lang.Iterable<? extends I>)
- Parameters:
children
- TheIListheader
children
-
ofListfoot
static IListbox ofListfoot(IListfoot foot)
Returns the instance with the givenIListfoot
foot child.- Parameters:
foot
- TheIListfoot
child
-
ofListfooters
static IListbox ofListfooters(java.lang.Iterable<? extends IListfooter<IAnyGroup>> children)
Returns the instance with the givenIListfooter
footer children.a shortcut of
IChildable.withChildren(java.lang.Iterable<? extends I>)
- Parameters:
children
- TheIListfooter
children
-
ofListfooters
static IListbox ofListfooters(IListfooter<IAnyGroup>... children)
Returns the instance with the givenIListfooter
footer children.a shortcut of
IChildable.withChildren(java.lang.Iterable<? extends I>)
- Parameters:
children
- TheIListfooter
children
-
ofId
static IListbox ofId(java.lang.String id)
Returns the instance with the given id.- Parameters:
id
- The id to identify this component
-
-