This function returns a compound widget for creating lists, and it returns the base ID of the widget. An interactive ENVI Classic session is required to run this function.


Result = WIDGET_SLIST(Base [, AUTO_MANAGE={0 | 1}] [, DEFAULT=value] [, /FORCE] [, /FRAME], LIST=string array [, /NO_SELECT] [, PROMPT=string] [, SELECT_PROMPT=string], UVALUE=value [, XSIZE=value] [, YSIZE=value])



This is the ID of the base widget.


AUTO_MANAGE (optional)

Use this keyword to specify how ENVI Classic auto-manages the widget with AUTO_WID_MNG. The keyword value specifies if the widget must have a defined value. Setting this keyword to a value of 1 requires that the widget has either a default value or a value that you enter. Setting this keyword to 0 does not require a value. Do not use this keyword for user-managed widgets.

DEFAULT (optional)

Use this keyword to specify the list item that is selected by default.

FORCE (optional)

Set this keyword to maintain the width specified by the keyword XSIZE when you set NO_SELECT. If you do not set FORCE when you set both XSIZE and NO_SELECT, the list widget size is then based on the width of the widest item in the list.

FRAME (optional)

Set this keyword to create a frame around the compound widget.


Use this keyword to specify a string array of items in the selection list.

NO_SELECT (optional)

Normally, the item selected from the list is displayed in a separate text box. Set this keyword to prevent the selected item from being displayed outside the list.

PROMPT (optional)

Use this keyword to specify the prompt string to be used for the widget.

SELECT_PROMPT (optional)

Use this keyword to specify a string to use as the prompt appearing in the selection widget.


Use this keyword to assign a “user value” to the widget. This value may be of any data type and organization. The user value exists entirely for your convenience. For widgets managed by the ENVI Classic function AUTO_WID_MNG, UVALUE is a tag name in the returned anonymous structure. For user-managed widgets, you can set and use UVALUE however you wish. You must set UVALUE for all compound widgets.

XSIZE (optional)

Use this keyword to specify the width of the widget, in characters.

YSIZE (optional)

Use this keyword to specify the height of the widget, in characters.

Widget Event

When the widget is not auto-managed, widget events set event.result to the index of the selected item.

API Version