DialogControls-ListBoxes: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (removed spoilers)
m (using sideTOC instead of horizontalTOC now)
Line 1: Line 1:
{{Horizontoc}}
{{SideTOC}}
== Attributes ==
== Attributes ==
{{Informative|TokenNames common to most controls, such as x, y, w, h, text, idc... are not listed here.}}
{{Informative|TokenNames common to most controls, such as x, y, w, h, text, idc... are not listed here.}}

Revision as of 13:56, 18 February 2020

Template:SideTOC

Attributes

TokenNames common to most controls, such as x, y, w, h, text, idc... are not listed here.

The following tokenNames are valid for:

  • CT_LISTBOX=5
  • CT_XLISTBOX=42
  • CT_LISTNBOX=102
  • CT_XCOMBO=44

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

Properties Applies to
Name Type Remark 5 42 102
active boolean x
autoScroll... integers applies to Speed,Delay,Rewind x x
arrowEmpty/Full color x x x
border texture x
canDrag boolean x x
colorScrollbar color x
color color x
colorPlayerItem color x
colorActive color x
colorDisabled color x
colorSelect color x x x
colorSelect2 color x x
colorSelectBackground color x x
colorSelectBackground2 color x x
columns float array define the left starting position of each column. The values are offsets ratios (not spacing ratios). Tip: Use {-0.01} in first column to fix unwanted offset, if desired. x
disabled/enabled boolean x
disabledCtrlColor color x
drawSideArrows boolean Each row can be linked to 2 arrow buttons which are shown on the left and right of the row.
drawSideArrows attribute is irrelevant and does not control the appearance of the left and right arrows/buttons despite the intention, and it could be ignored all together. Instead, idcLeft and idcRight attributes control these arrows/buttons in the following manner: If any of the two are set to -1, the arrows/buttons are not shown. Otherwise, provided both idcs are pointing to the valid controls, the arrows/buttons are shown
x
idcLeft/Right integer the IDC of the control to be used for the left/right button. x
mainCollumW float width of the left column 0..1; default 0.4 - Only relevant to config keys dialog (type = 5; idc = 102) x
secndCollumW float width of the right column 0..1; default 0.6 - Only relevant to config keys dialog (type = 5; idc = 102) x
disabledKeyColor color color of the disabled key binding; default {0.3,0.3,0.3,1} - Only relevant to config keys dialog (type = 5; idc = 102) x
collisionColor color color of the collision key binding; default {1,0,0,1} - Only relevant to config keys dialog (type = 5; idc = 102) x
LineSpacing float x
maxHistoryDelay float x x
period float Flash period x x
rowHeight float the height of a single row in the elapsed box. x x
rows integer x
SoundSelect class x x x
ListScrollBar (Arma 3 only) class see DialogControls-Sliders x x
ScrollBar class see DialogControls-Sliders x x
xColumn1,2,3 float x
disableOverflow boolean Don't allow text to continue in next column x


RscListNBox

  • Using -1 for idcLeft/idcRight will use the full row width. Using a valid idc will reserve sides for arrows and link with those controls.
  • idcLeft/idcRight bug?: Using -1 for either idc will link to first control with an idc using -1, instead of treating it as an unused idc. Workaround: number every idc in dialog rather than leaving any idc as -1.

RscListBox

class RscListBox
{
  access = 0;
  type = 5;
  style = 0;
  w = 0.4;
  h = 0.4;
  font = "TahomaB";
  sizeEx = 0.04;
  rowHeight = 0;
  colorText[] = {1,1,1,1};
  colorScrollbar[] = {1,1,1,1};
  colorSelect[] = {0,0,0,1};
  colorSelect2[] = {1,0.5,0,1};
  colorSelectBackground[] = {0.6,0.6,0.6,1};
  colorSelectBackground2[] = {0.2,0.2,0.2,1};
  colorBackground[] = {0,0,0,1};
  maxHistoryDelay = 1.0;
  soundSelect[] = {"",0.1,1};
  period = 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)";
  shadow = 0;
  class ListScrollBar : ScrollBar //ListScrollBar is class name required for Arma 3
  {
    color[] = {1,1,1,0.6};
    colorActive[] = {1,1,1,1};
    colorDisabled[] = {1,1,1,0.3};
    thumb = "#(argb,8,8,3)color(1,1,1,1)";
    arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
    arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
    border = "#(argb,8,8,3)color(1,1,1,1)";
    shadow = 0;
  };
};

RscXListBox

class RscXListBox
{
  type = 42;
  color[] = {1,1,1,0.6};
  colorActive[] = {1,1,1,1};
  colorDisabled[] = {1,1,1,0.3};
  arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
  arrowFull = "#(argb,8,8,3)color(1,0.5,0,1)";
  border = "#(argb,8,8,3)color(0,0,0,1)";
  colorSelect[] = {1,1,1,1};
  colorText[] = {1,1,1,0.8};
  soundSelect[] = {"",0.1,1};
};

RscListNBox

class RscListNBox
{
  access = 0;
  type = CT_LISTNBOX;// 102; 
  style =ST_MULTI;
  w = 0.4;   h = 0.4; 
  font = "TahomaB"; 
  sizeEx = 0.04; 
  colorText[] = {0.8784, 0.8471, 0.651, 1}; 
  colorBackground[] = {0, 0, 0, 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)"; 
  columns[] = {0.3, 0.6, 0.7}; 
  color[] = {1, 1, 1, 1}; 
  colorScrollbar[] = {0.95, 0.95, 0.95, 1}; 
  colorSelect[] = {0.95, 0.95, 0.95, 1}; 
  colorSelect2[] = {0.95, 0.95, 0.95, 1}; 
  colorSelectBackground[] = {0, 0, 0, 1}; 
  colorSelectBackground2[] = {0.8784, 0.8471, 0.651, 1}; 
  drawSideArrows = 0; 
  idcLeft = -1; 
  idcRight = -1; 
  maxHistoryDelay = 1; 
  rowHeight = 0; 
  soundSelect[] = {"", 0.1, 1}; 
  period = 1; 
  shadow = 2; 
  class ScrollBar
  {
    arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
    arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
    border = "#(argb,8,8,3)color(1,1,1,1)";
    color[] = {1,1,1,0.6};
    colorActive[] = {1,1,1,1};
    colorDisabled[] = {1,1,1,0.3};
    thumb = "#(argb,8,8,3)color(1,1,1,1)";
  };
};

RscListBox (A3 1.28 Template)

WuChaoRen ctListBox.png

class CT_LISTBOX
{
  access = 0; // Control access (0 - ReadAndWrite, 1 - ReadAndCreate, 2 - ReadOnly, 3 - ReadOnlyVerified)
  idc = CT_LISTBOX; // Control identification (without it, the control won't be displayed)
  type = CT_LISTBOX; // Type is 5
  style = ST_LEFT + LB_TEXTURES; // Style
  default = 0; // Control selected by default (only one within a display can be used)
  blinkingPeriod = 0; // Time in which control will fade out and back in. Use 0 to disable the effect.

  x = 1 * GUI_GRID_CENTER_W + GUI_GRID_CENTER_X; // Horizontal coordinates
  y = 11 * GUI_GRID_CENTER_H + GUI_GRID_CENTER_Y; // Vertical coordinates
  w = 10 * GUI_GRID_CENTER_W; // Width
  h = 3 * GUI_GRID_CENTER_H; // Height

  colorBackground[] = {0.2,0.2,0.2,1}; // Fill color
  colorSelectBackground[] = {1,0.5,0,1}; // Selected item fill color
  colorSelectBackground2[] = {0,0,0,1}; // Selected item fill color (oscillates between this and colorSelectBackground)

  sizeEx = GUI_GRID_CENTER_H; // Text size
  font = GUI_FONT_NORMAL; // Font from CfgFontFamilies
  shadow = 0; // Shadow (0 - none, 1 - directional, color affected by colorShadow, 2 - black outline)
  colorText[] = {1,1,1,1}; // Text and frame color
  colorDisabled[] = {1,1,1,0.5}; // Disabled text color
  colorSelect[] = {1,1,1,1}; // Text selection color
  colorSelect2[] = {1,1,1,1}; // Text selection color (oscillates between this and colorSelect)
  colorShadow[] = {0,0,0,0.5}; // Text shadow color (used only when shadow is 1)

  pictureColor[] = {1,0.5,0,1}; // Picture color
  pictureColorSelect[] = {1,1,1,1}; // Selected picture color
  pictureColorDisabled[] = {1,1,1,0.5}; // Disabled picture color

  tooltip = "CT_LISTBOX"; // Tooltip text
  tooltipColorShade[] = {0,0,0,1}; // Tooltip background color
  tooltipColorText[] = {1,1,1,1}; // Tooltip text color
  tooltipColorBox[] = {1,1,1,1}; // Tooltip frame color

  period = 1; // Oscillation time between colorSelect/colorSelectBackground2 and colorSelect2/colorSelectBackground when selected

  rowHeight = 1.5 * GUI_GRID_CENTER_H; // Row height
  itemSpacing = 0; // Height of empty space between items
  maxHistoryDelay = 1; // Time since last keyboard type search to reset it
  canDrag = 1; // 1 (true) to allow item dragging

  soundSelect[] = {"\A3\ui_f\data\sound\RscListbox\soundSelect",0.09,1}; // Sound played when an item is selected

  // Scrollbar configuration (applied only when LB_TEXTURES style is used)
  class ListScrollBar //In older games this class is "ScrollBar"
  {
    width = 0; // width of ListScrollBar
    height = 0; // height of ListScrollBar
    scrollSpeed = 0.01; // scroll speed of ListScrollBar

    arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa"; // Arrow
    arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa"; // Arrow when clicked on
    border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa"; // Slider background (stretched vertically)
    thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa"; // Dragging element (stretched vertically)

    color[] = {1,1,1,1}; // Scrollbar color
  };

  onCanDestroy = "systemChat str ['onCanDestroy',_this]; true";
  onDestroy = "systemChat str ['onDestroy',_this]; false";
  onSetFocus = "systemChat str ['onSetFocus',_this]; false";
  onKillFocus = "systemChat str ['onKillFocus',_this]; false";
  onKeyDown = "systemChat str ['onKeyDown',_this]; false";
  onKeyUp = "systemChat str ['onKeyUp',_this]; false";
  onMouseButtonDown = "systemChat str ['onMouseButtonDown',_this]; false";
  onMouseButtonUp = "systemChat str ['onMouseButtonUp',_this]; false";
  onMouseButtonClick = "systemChat str ['onMouseButtonClick',_this]; false";
  onMouseButtonDblClick = "systemChat str ['onMouseButtonDblClick',_this]; false";
  onMouseZChanged = "systemChat str ['onMouseZChanged',_this]; false";
  onMouseMoving = "";
  onMouseHolding = "";

  onLBSelChanged = "systemChat str ['onLBSelChanged',_this]; false";
  onLBDblClick = "systemChat str ['onLBDblClick',_this]; false";
  onLBDrag = "systemChat str ['onLBDrag',_this]; false";
  onLBDragging = "systemChat str ['onLBDragging',_this]; false";
  onLBDrop = "systemChat str ['onLBDrop',_this]; false";
};

RscXListBox (A3 1.28 Template)

WuChaoRen ctXListBox.png

class _CT_XLISTBOX
{
  access = 0; // Control access (0 - ReadAndWrite, 1 - ReadAndCreate, 2 - ReadOnly, 3 - ReadOnlyVerified)
  idc = CT_XLISTBOX; // Control identification (without it, the control won't be displayed)
  type = CT_XLISTBOX; // Type is 42
  style = SL_HORZ + ST_CENTER + LB_TEXTURES; // Style
  default = 0; // Control selected by default (only one within a display can be used)
  blinkingPeriod = 0; // Time in which control will fade out and back in. Use 0 to disable the effect.

  x = 12 * GUI_GRID_CENTER_W + GUI_GRID_CENTER_X; // Horizontal coordinates
  y = 17 * GUI_GRID_CENTER_H + GUI_GRID_CENTER_Y; // Vertical coordinates
  w = 10 * GUI_GRID_CENTER_W; // Width
  h = 1 * GUI_GRID_CENTER_H; // Height

  color[] = {1,1,1,1}; // Arrow color
  colorActive[] = {1,0.5,0,1}; // Selected arrow color

  sizeEx = GUI_GRID_CENTER_H; // Text size
  font = GUI_FONT_NORMAL; // Font from CfgFontFamilies
  shadow = 0; // Shadow (0 - none, 1 - N/A, 2 - black outline)
  colorText[] = {1,1,1,1}; // Text color
  colorSelect[] = {1,0.5,0,1}; // Selected text color
  colorDisabled[] = {1,1,1,0.5}; // Disabled text color

  tooltip = "CT_XLISTBOX"; // Tooltip text
  tooltipColorShade[] = {0,0,0,1}; // Tooltip background color
  tooltipColorText[] = {1,1,1,1}; // Tooltip text color
  tooltipColorBox[] = {1,1,1,1}; // Tooltip frame color

  arrowEmpty = "\A3\ui_f\data\gui\cfg\slider\arrowEmpty_ca.paa"; // Arrow
  arrowFull = "\A3\ui_f\data\gui\cfg\slider\arrowFull_ca.paa"; // Arrow when clicked on
  border = "\A3\ui_f\data\gui\cfg\slider\border_ca.paa"; // Fill texture

  soundSelect[] = {"\A3\ui_f\data\sound\RscListbox\soundSelect",0.09,1}; // Sound played when an item is selected

  onCanDestroy = "systemChat str ['onCanDestroy',_this]; true";
  onDestroy = "systemChat str ['onDestroy',_this]; false";
  onSetFocus = "systemChat str ['onSetFocus',_this]; false";
  onKillFocus = "systemChat str ['onKillFocus',_this]; false";
  onKeyDown = "systemChat str ['onKeyDown',_this]; false";
  onKeyUp = "systemChat str ['onKeyUp',_this]; false";
  onMouseButtonDown = "systemChat str ['onMouseButtonDown',_this]; false";
  onMouseButtonUp = "systemChat str ['onMouseButtonUp',_this]; false";
  onMouseButtonClick = "systemChat str ['onMouseButtonClick',_this]; false";
  onMouseButtonDblClick = "systemChat str ['onMouseButtonDblClick',_this]; false";
  onMouseZChanged = "systemChat str ['onMouseZChanged',_this]; false";
  onMouseMoving = "";
  onMouseHolding = "";

  onLBSelChanged = "systemChat str ['onLBSelChanged',_this]; false";
  onLBDblClick = "systemChat str ['onLBDblClick',_this]; false";
};

RscListNBox (A3 1.28 Template)

WuChaoRen 000.png WuChaoRen 001.png WuChaoRen 002.png WuChaoRen 003.png

class _CT_LISTNBOX_RIGHT: _CT_BUTTON
{
  idc = 1000;
  text = "<";
  borderSize = 0;
  colorShadow[] = {0,0,0,0};
};
class _CT_LISTNBOX_LEFT: _CT_LISTNBOX_RIGHT
{
  idc = 1001;
  text = ">";
};
class _CT_LISTNBOX               
{
  access = 0; // Control access (0 - ReadAndWrite, 1 - ReadAndCreate, 2 - ReadOnly, 3 - ReadOnlyVerified)
  idc = CT_LISTNBOX; // Control identification (without it, the control won't be displayed)
  type = CT_LISTNBOX; // Type 102
  style = ST_LEFT + LB_TEXTURES; // Style
  default = 0; // Control selected by default (only one within a display can be used)
  blinkingPeriod = 0; // Time in which control will fade out and back in. Use 0 to disable the effect.

  x = 29 * GUI_GRID_CENTER_W + GUI_GRID_CENTER_X; // Horizontal coordinates
  y = 15 * GUI_GRID_CENTER_H + GUI_GRID_CENTER_Y; // Vertical coordinates
  w = 10 * GUI_GRID_CENTER_W; // Width
  h = 3 * GUI_GRID_CENTER_H; // Height

  colorSelectBackground[] = {1,0.5,0,1}; // Selected item fill color
  colorSelectBackground2[] = {0,0,0,1}; // Selected item fill color (oscillates between this and colorSelectBackground)

  sizeEx = GUI_GRID_CENTER_H; // Text size
  font = GUI_FONT_NORMAL; // Font from CfgFontFamilies
  shadow = 0; // Shadow (0 - none, 1 - directional, color affected by colorShadow, 2 - black outline)
  colorText[] = {1,1,1,1}; // Text and frame color
  colorDisabled[] = {1,1,1,0.5}; // Disabled text color
  colorSelect[] = {1,1,1,1}; // Text selection color
  colorSelect2[] = {1,1,1,1}; // Text selection color (oscillates between this and colorSelect)
  colorShadow[] = {0,0,0,0.5}; // Text shadow color (used only when shadow is 1)

  tooltip = "CT_LISTNBOX"; // Tooltip text
  tooltipColorShade[] = {0,0,0,1}; // Tooltip background color
  tooltipColorText[] = {1,1,1,1}; // Tooltip text color
  tooltipColorBox[] = {1,1,1,1}; // Tooltip frame color

  columns[] = {0.1,0.4}; // Horizontal coordinates of columns (relative to list width, in range from 0 to 1)

  drawSideArrows = 1; // 1 to draw buttons linked by idcLeft and idcRight on both sides of selected line. They are resized to line height
  idcLeft = 1000; // Left button IDC
  idcRight = 1001; // Right button IDC

  period = 1; // Oscillation time between colorSelect/colorSelectBackground2 and colorSelect2/colorSelectBackground when selected

  rowHeight = GUI_GRID_CENTER_H; // Row height
  maxHistoryDelay = 1; // Time since last keyboard type search to reset it

  soundSelect[] = {"\A3\ui_f\data\sound\RscListbox\soundSelect",0.09,1}; // Sound played when an item is selected

  // Scrollbar configuration (applied only when LB_TEXTURES style is used)
  class ListScrollBar
  {
    width = 0; // width of ListScrollBar
    height = 0; // height of ListScrollBar
    scrollSpeed = 0.01; // scrollSpeed of ListScrollBar

    arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa"; // Arrow
    arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa"; // Arrow when clicked on
    border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa"; // Slider background (stretched vertically)
    thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa"; // Dragging element (stretched vertically)

    color[] = {1,1,1,1}; // Scrollbar color
  };

  onCanDestroy = "systemChat str ['onCanDestroy',_this]; true";
  onDestroy = "systemChat str ['onDestroy',_this]; false";
  onSetFocus = "systemChat str ['onSetFocus',_this]; false";
  onKillFocus = "systemChat str ['onKillFocus',_this]; false";
  onKeyDown = "systemChat str ['onKeyDown',_this]; false";
  onKeyUp = "systemChat str ['onKeyUp',_this]; false";
  onMouseButtonDown = "systemChat str ['onMouseButtonDown',_this]; false";
  onMouseButtonUp = "systemChat str ['onMouseButtonUp',_this]; false";
  onMouseButtonClick = "systemChat str ['onMouseButtonClick',_this]; false";
  onMouseButtonDblClick = "systemChat str ['onMouseButtonDblClick',_this]; false";
  onMouseZChanged = "systemChat str ['onMouseZChanged',_this]; false";
  onMouseMoving = "";
  onMouseHolding = "";

  onLBSelChanged = "systemChat str ['onLBSelChanged',_this]; false";
  onLBDblClick = "systemChat str ['onLBDblClick',_this]; false";
};

RscXComboBox (A3 1.28 Template)

WuChaoRen004.png

class _CT_XCOMBO // Xbox combo box, cannot be controlled with mouse
{
  access = 0; // Control access (0 - ReadAndWrite, 1 - ReadAndCreate, 2 - ReadOnly, 3 - ReadOnlyVerified)
  idc = CT_XCOMBO; // Control identification (without it, the control won't be displayed)
  type = CT_XCOMBO; // Type is 44
  style = ST_LEFT + LB_TEXTURES; // Style
  default = 0; // Control selected by default (only one within a display can be used)
  blinkingPeriod = 0; // Time in which control will fade out and back in. Use 0 to disable the effect.

  x = 12 * GUI_GRID_CENTER_W + GUI_GRID_CENTER_X; // Horizontal coordinates
  y = 22 * GUI_GRID_CENTER_H + GUI_GRID_CENTER_Y; // Vertical coordinates
  w = 10 * GUI_GRID_CENTER_W; // Width
  h = 1 * GUI_GRID_CENTER_H; // Height

  colorSelectBackground2[] = {0,0,0,1}; // Selected fill color (oscillates between this and List >> colorSelectBackground)

  colorBorder[] = {1,0,1,1}; // arrow color
  colorSelectBorder[] = {1,1,1,1}; // Selected arrow color
  colorDisabledBorder[] = {0,1,1,1}; // arrow color when disabled

  sizeEx = GUI_GRID_CENTER_H; // Text size
  font = GUI_FONT_NORMAL; // Font from CfgFontFamilies
  shadow = 0; // Shadow (0 - none, 1 - N/A, 2 - black outline)
  colorText[] = {1,1,1,1}; // Text color
  colorSelect[] = {1,1,1,1}; // Selected text color
  colorSelect2[] = {1,1,1,1}; // Selected text color (oscillates between this and colorSelect)
  colorDisabled[] = {1,1,1,0.5}; // Disabled text color

  tooltip = "CT_XCOMBO"; // Tooltip text
  tooltipColorShade[] = {0,0,0,1}; // Tooltip background color
  tooltipColorText[] = {1,1,1,1}; // Tooltip text color
  tooltipColorBox[] = {1,1,1,1}; // Tooltip frame color

  soundExpand[] = {"\A3\ui_f\data\sound\RscCombo\soundExpand",0.1,1}; // Sound played when the list is expanded
  soundCollapse[] = {"\A3\ui_f\data\sound\RscCombo\soundCollapse",0.1,1}; // Sound played when the list is collapsed
  soundSelect[] = {"\A3\ui_f\data\sound\RscCombo\soundSelect",0.1,1}; // Sound played when an item is selected

  // List title (not moved when display is dragged)
  class Title
  {
    text = "CT_XCOMBO";
    x = 12 * GUI_GRID_CENTER_W + GUI_GRID_CENTER_X; // Horizontal coordinates
    y = 21 * GUI_GRID_CENTER_H + GUI_GRID_CENTER_Y; // Vertical coordinates
    w = 10 * GUI_GRID_CENTER_W; // Width
    h = 1 * GUI_GRID_CENTER_H; // Height

    colorBackground[] = {0.2,0.2,0.2,1}; // Fill color
    colorSelectBackground[] = {1,0.5,0,1}; // Selected item fill color

    colorBorder[] = {0,0,0,1}; // Border color
    colorSelectBorder[] = {0,0,0,1}; // Selected border color
    colorDisabledBorder[] = {1,1,1,1}; // Disabled border color

    font = GUI_FONT_NORMAL; // Font from CfgFontFamilies
    size = GUI_GRID_CENTER_H; // Text size
    colorText[] = {1,1,1,1}; // Text color
    colorSelect[] = {1,1,1,1}; // Selected text color
    colorDisabled[] = {1,1,1,0.5}; // Disabled text color
  };
  // Item list displayed when arrow right is pressed while the control is in focus (not moved when display is dragged)
  class List
  {
    x = 22 * GUI_GRID_CENTER_W + GUI_GRID_CENTER_X; // Horizontal coordinates
    y = 22 * GUI_GRID_CENTER_H + GUI_GRID_CENTER_Y; // Vertical coordinates
    w = 10 * GUI_GRID_CENTER_W; // Width
    h = 5 * GUI_GRID_CENTER_H; // Height

    colorBackground[] = {0.2,0.2,0.2,1}; // List fill color
    colorSelectBackground[] = {1,0.5,0,1}; // Selected item fill color (oscillates between this and colorSelectBackground2 in control root)

    colorBorder[] = {1,1,1,1}; // List scrollbar color (combined with Scrollbar >> color)

    rowHeight = 1 * GUI_GRID_CENTER_H; // Row height
    sizeEx = GUI_GRID_CENTER_H; // Text size
    colorText[] = {1,1,1,1}; // Text color
    colorSelect[] = {1,1,1,1}; // Selected text color (oscillates between this and colorSelect2 in control root)
  };
  // Scrollbar configuration (applied only when LB_TEXTURES style is used)
  class ScrollBar
  {
    width = 0; // width of scrollBar
    height = 0; // height of scrollbar
    scrollSpeed = 0.01; // speed of scroll bar

    arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa"; // Arrow
    arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa"; // Arrow when clicked on
    border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa"; // Slider background (stretched vertically)
    thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa"; // Dragging element (stretched vertically)

    color[] = {1,1,1,1}; // Scrollbar color (combined with List >> colorBorder)
  };

  onCanDestroy = "systemChat str ['onCanDestroy',_this]; true";
  onDestroy = "systemChat str ['onDestroy',_this]; false";
  onMouseEnter = "systemChat str ['onMouseEnter',_this]; false";
  onMouseExit = "systemChat str ['onMouseExit',_this]; false";
  onSetFocus = "systemChat str ['onSetFocus',_this]; false";
  onKillFocus = "systemChat str ['onKillFocus',_this]; false";
  onKeyDown = "systemChat str ['onKeyDown',_this]; false";
  onKeyUp = "systemChat str ['onKeyUp',_this]; false";
  onMouseButtonDown = "systemChat str ['onMouseButtonDown',_this]; false";
  onMouseButtonUp = "systemChat str ['onMouseButtonUp',_this]; false";
  onMouseButtonClick = "systemChat str ['onMouseButtonClick',_this]; false";
  onMouseButtonDblClick = "systemChat str ['onMouseButtonDblClick',_this]; false";
  onMouseZChanged = "systemChat str ['onMouseZChanged',_this]; false";
  onMouseMoving = "";
  onMouseHolding = "";

  onLBSelChanged = "systemChat str ['onLBSelChanged',_this]; false";
  onLBDblClick = "systemChat str ['onLBDblClick',_this]; false";
  onLBListSelChanged = "systemChat str ['onLBListSelChanged',_this]; false";
};