CT LISTBOX
Topic · Markdown · JSON · original wiki page
Introduction
The listbox displays a list of items. With ST_MULTI it is possible to select multiple entries. For listBoxes, the usage of 'ST_' style constants (ST_MULTI & ST_TITLE_BAR) behave differently than expected for other controls, so use the corresponding 'LB_' (LB_TEXTURES & LB_MULTI) list box style variants instead.
style = LB_TEXTURES; // solid scrollbar
style = LB_MULTI; // multiple item selection
Related commands & functions
Related User Interface Eventhandlers
Alphabetical Order
Note
TokenNames common to most controls, such as x, y, w, h, text, idc... can be found here.
Warning
Not all of the listed attributes might have an effect nor might the list be complete. All attributes were gathered with this config crawler.
#define CT_LISTBOX 5
A
active
Type: String
Description: n/a
active = "a3\ui_f\data\gui\rsc\rscdisplaysinglemission\done_ca.paa";
addons
Type: String
Description: n/a
addons = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_addons_ca.paa";
allowedFilePatching
Type: String
Description: n/a
allowedFilePatching = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_version_ca.paa";
arrowEmpty
Type: String
Description: n/a
arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
arrowFull
Type: String
Description: n/a
arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
autoScrollDelay
Type: Number
Description: n/a
autoScrollDelay = 5;
autoScrollRewind
Type: Number
Description: n/a
autoScrollRewind = 0;
autoScrollSpeed
Type: Number
Description: n/a
autoScrollSpeed = -1;
C
canDrag
Type: Number
Description: Allow dragging and dropping listbox items similar to how the inventory works.
canDrag = 0;
collisionColor
Type: Array
Description: Color of the collision key binding; default {1,0,0,1} - Only relevant to config keys dialog (type = 5; idc = 102)
collisionColor[] = {"(profilenamespace getvariable ['IGUI_ERROR_RGB_R',0.8])","(profilenamespace getvariable ['IGUI_ERROR_RGB_G',0.0])","(profilenamespace getvariable ['IGUI_ERROR_RGB_B',0.0])",1};
collisionColorFirstKey
Type: Array
Description: n/a
collisionColorFirstKey[] = {"(profilenamespace getvariable ['IGUI_WARNING_RGB_R',0.8])","(profilenamespace getvariable ['IGUI_WARNING_RGB_G',0.5])","(profilenamespace getvariable ['IGUI_WARNING_RGB_B',0.0])",1};
color
Type: Array
Description: n/a
color[] = {0.95,0.95,0.95,1};
colorAI
Type: Array
Description: n/a
colorAI[] = {1,0,0,1};
colorNobody
Type: Array
Description: n/a
colorNobody[] = {1,1,1,0.25};
colorPicture
Type: Array
Description: n/a
colorPicture[] = {1,1,1,1};
colorPictureDisabled
Type: Array
Description: n/a
colorPictureDisabled[] = {1,1,1,0.25};
colorPictureRight
Type: Array
Description: n/a
colorPictureRight[] = {1,1,1,1};
colorPictureRightDisabled
Type: Array
Description: n/a
colorPictureRightDisabled[] = {1,1,1,0.25};
colorPictureRightSelected
Type: Array
Description: n/a
colorPictureRightSelected[] = {1,1,1,1};
colorPictureSelected
Type: Array
Description: n/a
colorPictureSelected[] = {1,1,1,1};
colorPingBad
Type: Array
Description: n/a
colorPingBad[] = {1,0,0,1};
colorPingGood
Type: Array
Description: n/a
colorPingGood[] = {0,1,0,1};
colorPingPoor
Type: Array
Description: n/a
colorPingPoor[] = {1,0.6,0,1};
colorPingUnknown
Type: Array
Description: n/a
colorPingUnknown[] = {0.4,0.4,0.4,1};
colorPlayer
Type: Array
Description: n/a
colorPlayer[] = {1,1,0,1};
colorScrollbar
Type: Array
Description: n/a
colorScrollbar[] = {1,0,0,0};
colorSelect
Type: Array
Description: Text color of a selected item.
colorSelect[] = {1,1,1,1};
colorSelect2
Type: Array
Description: Text color to pulsate to from colorSelect.
colorSelect2[] = {0,0,0,1};
colorSelect2Right
Type: Array
Description: n/a
colorSelect2Right[] = {0,0,0,1};
colorSelectBackground
Type: Array
Description: Background color of a selected entry.
colorSelectBackground[] = {0.95,0.95,0.95,1};
colorSelectBackground2
Type: Array
Description: Background color to pulsate to from colorSelectBackground of a selected entry.
colorSelectBackground2[] = {1,1,1,0.5};
colorSelectRight
Type: Array
Description: n/a
colorSelectRight[] = {0,0,0,1};
colorShadow
Type: Array
Description: n/a
colorShadow[] = {0,0,0,0.5};
colorTextRight
Type: Array
Description: n/a
colorTextRight[] = {1,1,1,1};
columns
Description: n/a
Number example:
columns = 1;
Class example:
class Columns
{
class ColumnFavorite
{
x = "1.2 * (((safezoneW / safezoneH) min 1.2) / 40) + (SafezoneX)";
w = "(2 * (((safezoneW / safezoneH) min 1.2) / 40))";
};
class ColumnServer
{
x = "2.7 * (((safezoneW / safezoneH) min 1.2) / 40) + (SafezoneX)";
w = "(11 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.45*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
};
class ColumnType
{
x = "safezoneX + (15 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.45*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
w = "3 * (((safezoneW / safezoneH) min 1.2) / 40)";
};
class ColumnMission
{
x = "safezoneX + (18.3 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.45*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
w = "(10.5 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.45*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
};
class ColumnState
{
x = "safezoneX + (29.1 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.9*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
w = "3 * (((safezoneW / safezoneH) min 1.2) / 40)";
};
class ColumnPlayers
{
x = "safezoneX + (32.4 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.9*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
w = "3 * (((safezoneW / safezoneH) min 1.2) / 40)";
};
class ColumnPing
{
x = "safezoneX + (35.7 * (((safezoneW / safezoneH) min 1.2) / 40)) + 0.9*(safezoneW - ((safezoneW / safezoneH) min 1.2))";
w = "3 * (((safezoneW / safezoneH) min 1.2) / 40)";
};
};
D
disabled
Type: String
Description: n/a
disabled = "a3\ui_f\data\gui\rsc\rscdisplaysinglemission\none_ca.paa";
disabledAI
Type: String
Description: n/a
disabledAI = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayersetup\disabledai_ca.paa";
disabledCtrlColor
Type: Array
Description: n/a
disabledCtrlColor[] = {1,1,1,0.5};
disabledKeyColor
Type: Array
Description: Color of the disabled key binding; default {0.3,0.3,0.3,1} - Only relevant to config keys dialog (type = 5; idc = 102)
disabledKeyColor[] = {0.4,0.4,0.4,1};
DLCTemplate
Type: Class
Description: n/a
class DLCTemplate
{
class controls
{
class DlcBg
{
idc = 101;
text = "\A3\Ui_f\data\GUI\Rsc\RscDisplayInventory\InventoryStripe_ca.paa";
color[] = {1,1,1,1};
x = 0;
y = 0;
w = "1.8 * (((safezoneW / safezoneH) min 1.2) / 40)";
h = "1.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
};
class DlcIcon
{
idc = 100;
text = "";
color[] = {1,1,1,1};
x = "0 * (((safezoneW / safezoneH) min 1.2) / 40)";
y = "0 * (((safezoneW / safezoneH) min 1.2) / 40)";
w = "1 * (((safezoneW / safezoneH) min 1.2) / 40)";
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
};
};
};
E
enabled
Type: String
Description: n/a
enabled = "a3\ui_f\data\gui\rsc\rscdisplaysinglemission\done_ca.paa";
enabledAI
Type: String
Description: n/a
enabledAI = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayersetup\enabledai_ca.paa";
I
idcx
Type: Number
Description: Used in the Arsenal display for unknown reason.
idcx = 974;
itemBackground
Type: Array
Description: n/a
itemBackground[] = {1,1,1,0.1};
Items
Type: Class
Description: Default entries for the listbox columns.
// Yes, this is a vanilla config :D
class Items
{
class Item0
{
text = "LOL";
textRight = "ROFL";
tooltip = "OMG";
picture = "\a3\Ui_f\data\Map\Markers\Military\warning_CA.paa";
pictureRight = "\a3\Ui_f\data\Map\Markers\Military\unknown_CA.paa";
color[] = {1,0,1,1};
colorRight[] = {1,1,0,1};
colorPicture[] = {0,1,1,1};
colorPictureSelected[] = {1,0,0,1};
colorPictureDisabled[] = {0,0,0,1};
colorPictureRight[] = {0,1,0,1};
colorPictureRightSelected[] = {0,0,1,1};
colorPictureRightDisabled[] = {0,0,0,1};
data = "WTF";
value = 42;
default = 0;
};
class AnotherItem
{
text = "O RLY";
default = 1;
};
};
itemSpacing
Type: Number
Description: n/a
itemSpacing = 0;
L
ListScrollBar
Type: Class
Description: Prior to Arma 3 use ScrollBar. Scrollbars might not show if h and w properties of the ListBox are not 0. see also DialogControls-Sliders
class ListScrollBar
{
color[] = {1,1,1,1};
autoScrollEnabled = 1;
colorActive[] = {1,1,1,1};
colorDisabled[] = {1,1,1,0.3};
thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa";
arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa";
arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa";
border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa";
shadow = 0;
scrollSpeed = 0.06;
width = 0;
height = 0;
autoScrollSpeed = -1;
autoScrollDelay = 5;
autoScrollRewind = 0;
};
locked
Type: String
Description: n/a
locked = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_locked_ca.paa";
M
mainCollumW
Type: Number
Description: Width of the left column 0..1; default 0.4 - Only relevant to config keys dialog (type = 5; idc = 102)
mainCollumW = 0.4;
maxHistoryDelay
Type: Number
Description: n/a
maxHistoryDelay = 1;
mods
Type: String
Description: n/a
mods = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_mods_ca.paa";
N
none
Type: String
Description: n/a
none = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_none_ca.paa";
P
password
Type: String
Description: n/a
password = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_password_ca.paa";
period
Type: Number
Description: Controls how fast the color changes from colorXXX to colorXXX2.
period = 1.2;
R
rowHeight
Description: The height of a single row.
Number example:
rowHeight = 0;
String example:
rowHeight = "1.75 * (((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
rows
Type: Number
Description: n/a
rows = 8;
S
secndCollumW
Type: Number
Description: Width of the right column 0..1; default 0.6 - Only relevant to config keys dialog (type = 5; idc = 102)
secndCollumW = 0.6;
serverDislike
Type: String
Description: n/a
serverDislike = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\mp_serverdislike_ca.paa";
serverEmpty
Type: String
Description: n/a
serverEmpty = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\mp_serverempty_ca.paa";
serverLike
Type: String
Description: n/a
serverLike = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\mp_serverlike_ca.paa";
sizeEx2
Type: String
Description: n/a
sizeEx2 = "0.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
soundSelect
Type: Array
Description: Sound played when an entry is selected.
soundSelect[] = {"\A3\ui_f\data\sound\RscListbox\soundSelect",0.09,1};
star
Type: String
Description: n/a
star = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_star_ca.paa";
V
version
Type: String
Description: n/a
version = "a3\ui_f\data\gui\rsc\rscdisplaymultiplayer\sessions_version_ca.paa";
W
wholeHeight
Type: Number
Description: n/a
wholeHeight = 0.21;
Default Classes
Note
Arma 3: AddOns: Classes need to be initialised first with
class SomeClass;
Missions: Since Arma 3 v2.02 one can use
import SomeClass;to initialise a class (see the import keyword).In older versions, use
"Default" call BIS_fnc_exportGUIBaseClasses;and paste the result into the description.ext.
RscListBox
class RscListBox
{
deletable = 0;
fade = 0;
access = 0;
type = CT_LISTBOX;
rowHeight = 0;
colorText[] = {1,1,1,1};
colorDisabled[] = {1,1,1,0.25};
colorScrollbar[] = {1,0,0,0};
colorSelect[] = {0,0,0,1};
colorSelect2[] = {0,0,0,1};
colorSelectBackground[] = {0.95,0.95,0.95,1};
colorSelectBackground2[] = {1,1,1,0.5};
colorBackground[] = {0,0,0,0.3};
soundSelect[] =
{
"\A3\ui_f\data\sound\RscListbox\soundSelect",
0.09,
1
};
autoScrollSpeed = -1;
autoScrollDelay = 5;
autoScrollRewind = 0;
arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
colorPicture[] = {1,1,1,1};
colorPictureSelected[] = {1,1,1,1};
colorPictureDisabled[] = {1,1,1,0.25};
colorPictureRight[] = {1,1,1,1};
colorPictureRightSelected[] = {1,1,1,1};
colorPictureRightDisabled[] = {1,1,1,0.25};
colorTextRight[] = {1,1,1,1};
colorSelectRight[] = {0,0,0,1};
colorSelect2Right[] = {0,0,0,1};
tooltipColorText[] = {1,1,1,1};
tooltipColorBox[] = {1,1,1,1};
tooltipColorShade[] = {0,0,0,0.65};
class ListScrollBar : ScrollBar
{
color[] = {1,1,1,1};
autoScrollEnabled = 1;
};
x = 0;
y = 0;
w = 0.3;
h = 0.3;
style = LB_TEXTURES;
font = "RobotoCondensed";
sizeEx = GUI_TEXT_SIZE_MEDIUM;
shadow = 0;
colorShadow[] = {0,0,0,0.5};
period = 1.2;
maxHistoryDelay = 1;
};
Scripting Example
| Code | Picture |
|---|---|
|
|
|
|
|
|
|
CT_LISTBOX command family can be used with CT_COMBO, CT_LISTBOX, CT_XLISTBOX and CT_XCOMBO.