Package com.anylogic.engine.presentation
- Nested Class Summary
- Nested classes/interfaces inherited from class com.anylogic.engine.presentation.ShapeControl
- Field Summary
- Constructor Summary
- Method Summary
- Methods inherited from class com.anylogic.engine.presentation.ShapeInputControl
- Methods inherited from class com.anylogic.engine.presentation.ShapeControl
- Methods inherited from class com.anylogic.engine.presentation.Shape
- Methods inherited from class java.lang.Object
- Methods inherited from interface com.anylogic.engine.markup.AggregatableAnimationElement
- Field Details
- Constructor Details
- Method Details
- java.lang.Object
- com.anylogic.engine.presentation.Shape
- com.anylogic.engine.presentation.ShapeControl
- com.anylogic.engine.presentation.ShapeInputControl
- com.anylogic.engine.presentation.ShapeListBox
- All Implemented Interfaces:
com.anylogic.engine.internal.Child
,Locatable2D
,AggregatableAnimationElement
,HasLevel
,LevelElement
,SVGElement
,UsdElement
,Serializable
,Cloneable
public class ShapeListBox extends ShapeInputControl
List box control. Embeds a JList component in a JScrollPane.
- Author:
- AnyLogic North America, LLC https://anylogic.com
- See Also:
- Serialized Form
Modifier and Type | Field | Description |
---|---|---|
String | value |
The currently selected item of the list box (or first item of
multiselection) that can be accessed in the overridden action() method.
Use getValue() to obtain the currently selected item from
other places |
String[] | values |
The currently selected items of the list box (in the multiple-selection
mode) that can be accessed in the overridden action() method.
Use getValues() to obtain the currently selected items from
other places |
Constructor | Description |
---|---|
ShapeListBox |
Creates a persistent list box control.
|
ShapeListBox |
Deprecated.
may be removed in future releases
|
Modifier and Type | Method | Description |
---|---|---|
void | executeUserAction |
This method is internal and shouldn't be called by user.
it may be removed/renamed in future. |
String[] | getItems() |
Returns array of String items currently in this list box.
|
String | getValue() |
Returns the currently selected text item if in single-selection mode
or the first selected text item if in multiple-selection mode
Returns
null if there is no selection. |
int | getValueIndex() |
Returns the index of the currently selected text item or
-1 when there is no selection. |
String[] | getValues() |
Returns an array of selected text items (for use in multiple-selection
mode)
Returns empty array if there is no selection |
int[] | getValuesIndices() |
Returns an array of selected items' indices (for use in multiple-selection
mode).
|
void | setItems |
Sets new items for this list box
This method preserves current list box values if current values are contained in new items .This method doesn't execute user action code (even if current selection changes). Note that provided array is used internally and shouldn't be changed by user after this method is called. |
void | setItems |
Sets new items for this list box.
|
void | setValue |
Sets the selected text item of the list box.
Clears list box selection if text is null Doesn't execute user action code |
void | setValue |
Sets the selected text item of the list box.
|
void | setValueIndex |
Selects the item with the given index.
Clears list box selection if valueIndex is negative .Doesn't execute user action code |
void | setValueIndex |
Selects the item with the given index.
|
void | setValues |
Sets the selected text items of the list box (in the multiple-selection
mode)
Clears list box selection if texts is null
or emptyDoesn't execute user action code |
void | setValues |
Sets the selected text items of the list box (in multiple-selection mode)
Clears list box selection if
texts is null or empty
Executes user action code (if any exists) if callAction
parameter is true |
void | setValuesIndices |
Selects items with the given indices (in the multiple-selection mode)
Clears list box selection if valuesIndices is null or empty.Doesn't execute user action code |
void | setValuesIndices |
Selects items with the given indices (in multiple-selection mode)
Clears list box selection if
valuesIndices is null or empty. |
action, clone, contains, executeAction, getHeight, getPresentable, getWidth, isEnabled, randomPointInside, restoreOwner, setEnabled, setHeight, setValueToDefault, setWidth
canHandleClick, findSVGElement, getDrawMode, getGroup, getLevel, getName, getOrGenerateUSDId, getRotation, getScaleX, getScaleY, getSVGId, getUsdVersion, getX, getY, isJava2DSwingPresentation, isPublic_xjal, isSVGPresentation, isVisible, isVisibleCurrently, onAggregatorVisibilityChanged, onClick, randomPointInside, removeSVGFromOwner, removeSVGImage, resetSVGState, setChangedUsdVersion, setLevel, setNextChangedUsdVersion, setPos, setPos, setPublic_xjal, setRotation, setScale, setScale, setScaleX, setScaleY, setVisible, setX, setY, updateDynamicProperties, updateDynamicPropertiesStructural, updateSVGProperties
@AnyLogicInternalAPI public String value
The currently selected item of the list box (or first item of
multiselection) that can be accessed in the overridden action() method.
Use
Use
getValue()
to obtain the currently selected item from
other places@AnyLogicInternalAPI public String[] values
The currently selected items of the list box (in the multiple-selection
mode) that can be accessed in the overridden action() method.
Use
Use
getValues()
to obtain the currently selected items from
other placespublic ShapeListBox(Presentable p, boolean ispublic, double x, double y, double width, double height, Color backgroundColor, Color textColor, Font font, String[] items, boolean multipleSelectionMode)
Deprecated.
may be removed in future releases
public ShapeListBox(Presentable p, boolean ispublic, double x, double y, double width, double height, Color backgroundColor, Color textColor, boolean enabled, Font font, String[] items, boolean multipleSelectionMode)
Creates a persistent list box control. You should override the action()
method, in which you can access the current selection of list box as
"values".
- Parameters:
p
- the presentable object owning this controlispublic
- iftrue
, the control is visible on container's presentationx
- the x coordinatey
- the y coordinatewidth
- the widthheight
- the heightbackgroundColor
- the background color colortextColor
- the text colorenabled
- the initial enabled statefont
- the text fontitems
- the array of text items of the list boxmultipleSelectionMode
- iftrue
this list box will support multiple intervals selection, otherwise - only single item selection
public void setValue(String text)
Sets the selected text item of the list box.
Clears list box selection if text is
Doesn't execute user action code
Clears list box selection if text is
null
Doesn't execute user action code
- Parameters:
text
- the new selected text item ornull
public void setValue(String text, boolean callAction)
Sets the selected text item of the list box.
Clears list box selection if text is
null
Executes user action code (if any exists) if callAction
parameter is true
- Parameters:
text
- the new selected text item ornull
callAction
- iftrue
user action code (if any exists) will be executed
public void setValueIndex(int valueIndex)
Selects the item with the given index.
Clears list box selection if valueIndex is
Doesn't execute user action code
Clears list box selection if valueIndex is
negative
.Doesn't execute user action code
- Parameters:
valueIndex
- the item index
public void setValueIndex(int valueIndex, boolean callAction)
Selects the item with the given index.
Clears list box selection if valueIndex is
negative
.
Executes user action code (if any exists) if callAction
parameter is true
.- Parameters:
valueIndex
- the item indexcallAction
- iftrue
user action code (if any) will be executed
public void setValues(String[] texts)
Sets the selected text items of the list box (in the multiple-selection
mode)
Clears list box selection if
Doesn't execute user action code
Clears list box selection if
texts
is null
or emptyDoesn't execute user action code
- Parameters:
texts
- the new selected text items ornull
public void setValues(String[] selectedTexts, boolean callAction)
Sets the selected text items of the list box (in multiple-selection mode)
Clears list box selection if
texts
is null
or empty
Executes user action code (if any exists) if callAction
parameter is true
- Parameters:
selectedTexts
- the new selected text items ornull
callAction
- iftrue
user action code (if any exists) will be executed
public void setValuesIndices(int[] valuesIndices)
Selects items with the given indices (in the multiple-selection mode)
Clears list box selection if
Doesn't execute user action code
Clears list box selection if
valuesIndices
is null
or empty.Doesn't execute user action code
- Parameters:
valuesIndices
- the item index
public void setValuesIndices(int[] valuesIndices, boolean callAction)
Selects items with the given indices (in multiple-selection mode)
Clears list box selection if
valuesIndices
is null
or empty.
Executes user action code (if any exists) if callAction
parameter is true
.- Parameters:
valuesIndices
- the item indexcallAction
- iftrue
user action code (if any exists) will be executed
public String getValue()
Returns the currently selected text item if in single-selection mode
or the first selected text item if in multiple-selection mode
Returns
null
if there is no selection.- Returns:
- the currently selected text item (or first one in multiselection)
public int getValueIndex()
Returns the index of the currently selected text item or
-1
when there is no selection.
Returns the first selected item if in multiple-selection mode.- Returns:
- the index of the currently selected text item or
-1
public String[] getValues()
Returns an array of selected text items (for use in multiple-selection
mode)
Returns empty array if there is no selection
Returns empty array if there is no selection
- Returns:
- the currently selected text items
public int[] getValuesIndices()
Returns an array of selected items' indices (for use in multiple-selection
mode). Returns empty array if there is no selection
- Returns:
- the currently selected items' indices
public String[] getItems()
Returns array of String items currently in this list box.
Array of length 0 is returned if there are no items.
The returned array should not be changed by user
- Returns:
- array of String items currently used in this list box
public void setItems(String[] items)
Sets new items for this list box
This method preserves current list box values if current values are contained in new
This method doesn't execute user action code (even if current selection changes).
Note that provided array is used internally and shouldn't be changed by user after this method is called.
This method preserves current list box values if current values are contained in new
items
.This method doesn't execute user action code (even if current selection changes).
Note that provided array is used internally and shouldn't be changed by user after this method is called.
- Parameters:
items
- the array of String items to be placed in this list box
public void setItems(String[] items, boolean callAction)
Sets new items for this list box.
This method preserves current list box values if current values are
contained in new
items
.
Note that provided array is used internally and shouldn't be changed
by user after this method is called.- Parameters:
items
- the array of String items to be placed in the list boxcallAction
- iftrue
and selection changes, user action code (if any) will be executed
@AnyLogicInternalAPI public void executeUserAction(String value)
Description copied from interface:
SVGElement
This method is internal and shouldn't be called by user.
it may be removed/renamed in future.
it may be removed/renamed in future.
- Specified by:
executeUserAction
in interfaceSVGElement
- Overrides:
executeUserAction
in classShape