R3vo – User talk
m (→CT_LISTBOX) |
mNo edit summary |
||
Line 2: | Line 2: | ||
==Scripting Examples== | ==Scripting Examples== | ||
===CT_LISTBOX=== | ===CT_LISTBOX=== | ||
<code>{ | {| class="wikitable" | ||
|- | |||
! Code !! Pictures | |||
|- | |||
|<code>{ | |||
[[private]] _ctrl = _x; | [[private]] _ctrl = _x; | ||
{ | { | ||
Line 11: | Line 15: | ||
} [[forEach]] ("[[true]]" [[configClasses]] ([[configFile]] >> "CfgRanks")); | } [[forEach]] ("[[true]]" [[configClasses]] ([[configFile]] >> "CfgRanks")); | ||
_ctrl [[lbSetCurSel]] 0; | _ctrl [[lbSetCurSel]] 0; | ||
[[private]] _current = [[lbCurSel]] _ctrl; | [[private]] _current = [[lbCurSel]] _ctrl; | ||
_ctrl [[lbSetData]] [_current,"hi"]; | _ctrl [[lbSetData]] [_current,"hi"]; | ||
Line 21: | Line 25: | ||
[[private]] _color = _ctrl [[lbColor]] _current; | [[private]] _color = _ctrl [[lbColor]] _current; | ||
_ctrl [[lbSetColor]] [_current, [(_color [[select]] 0) / 2, (_color [[select]] 1) / 4, 0, 1]]; | _ctrl [[lbSetColor]] [_current, [(_color [[select]] 0) / 2, (_color [[select]] 1) / 4, 0, 1]]; | ||
[[lbSort]] [_ctrl, "DESC"]; | [[lbSort]] [_ctrl, "DESC"]; | ||
[[lbSortByValue]] _ctrl; | [[lbSortByValue]] _ctrl; | ||
[[if]] (_ctrl [[lbIsSelected]] _current) [[then]] | [[if]] (_ctrl [[lbIsSelected]] _current) [[then]] | ||
{ | { | ||
_ctrl [[lbDelete]] _current; | _ctrl [[lbDelete]] _current; | ||
[[lbClear]] _ctrl; | [[lbClear]] _ctrl; | ||
}; | }; | ||
} [[forEach]] [_CT_COMBO, _CT_LISTBOX, _CT_XLISTBOX, _CT_XCOMBO]; | } [[forEach]] [_CT_COMBO, _CT_LISTBOX, _CT_XLISTBOX, _CT_XCOMBO];</code> | ||
</code> | | | ||
[[File:WuChaoRen_lbCommand001.png|170px]] <br> | |||
[[File:WuChaoRen_lbColor.png|170px]] <br> | |||
[[File:WuChaoRen_lbSortByValue.png|170px]] <br> | |||
|} | |||
[[CT_LISTBOX]] command family can be used with [[CT_COMBO]], [[CT_LISTBOX]], [[CT_XLISTBOX]] and [[CT_XCOMBO]]. | |||
===CT_LISTNBOX=== | ===CT_LISTNBOX=== | ||
As for invisible data processing, [[lnbAddArray]], [[lnbAddColumn]], [[lnbData]], [[lnbGetColumnsPosition]], [[lnbSetColumnsPos]], [[lnbSetData]], [[lnbSetText]], [[lnbSetValue]], [[lnbText]] and [[lnbValue]] store data types into exact position of the [[CT_LISTNBOX]] with different spaces. Accessing data with coordinate command at nearly the same syntax: | As for invisible data processing, [[lnbAddArray]], [[lnbAddColumn]], [[lnbData]], [[lnbGetColumnsPosition]], [[lnbSetColumnsPos]], [[lnbSetData]], [[lnbSetText]], [[lnbSetValue]], [[lnbText]] and [[lnbValue]] store data types into exact position of the [[CT_LISTNBOX]] with different spaces. Accessing data with coordinate command at nearly the same syntax: | ||
<code>{{cc|Set same value to one position of a [[Control]]}} | <code>{{cc|Set same value to one position of a [[Control]]}} | ||
_ctrl [[lnbSetData]] [ [0,0],"#1"]; | _ctrl [[lnbSetData]] <nowiki>[</nowiki>[0,0],"#1"]; | ||
[[lnbSetColumnsPos]] [102,[0,1],1]; | [[lnbSetColumnsPos]] [102,[0,1],1]; | ||
_ctrl [[lnbSetText]] [ [0,1], "#1"]; | _ctrl [[lnbSetText]] <nowiki>[</nowiki>[0,1], "#1"]; | ||
_ctrl [[lnbSetValue]] [ [0,0],1]; | _ctrl [[lnbSetValue]] [ [0,0],1]; | ||
{{cc|Accessing the value disregard affecting one another}} | {{cc|Accessing the value disregard affecting one another}} | ||
Line 58: | Line 66: | ||
} [[forEach]] ("[[true]]" [[configClasses]] ([[configFile]] >> "CfgRanks")); | } [[forEach]] ("[[true]]" [[configClasses]] ([[configFile]] >> "CfgRanks")); | ||
_CT_LISTNBOX [[lnbSetCurSelRow]] 0; | _CT_LISTNBOX [[lnbSetCurSelRow]] 0; | ||
[[Image:WuChaoRen_000.png]] | [[Image:WuChaoRen_000.png|300px]] | ||
[[private]] _current = [[lnbCurSelRow]] _CT_LISTNBOX; | [[private]] _current = [[lnbCurSelRow]] _CT_LISTNBOX; | ||
[[private]] _color = _CT_LISTNBOX [[lnbColor]] [_current,0]; | [[private]] _color = _CT_LISTNBOX [[lnbColor]] [_current,0]; | ||
_CT_LISTNBOX [[lnbSetColor]] [ [_current,1], [(_color [[select]] 0) / 2, 0, 0, 1] ]; | _CT_LISTNBOX [[lnbSetColor]] <nowiki>[</nowiki>[_current,1], [(_color [[select]] 0) / 2, 0, 0, 1]]; | ||
[[Image:WuChaoRen_001.png]] | [[Image:WuChaoRen_001.png|300px]] | ||
_CT_LISTNBOX [[lnbDeleteColumn]] 0; | _CT_LISTNBOX [[lnbDeleteColumn]] 0; | ||
[[Image:WuChaoRen_002.png]] | [[Image:WuChaoRen_002.png|300px]] | ||
_CT_LISTNBOX [[lnbDeleteRow]] 1; | _CT_LISTNBOX [[lnbDeleteRow]] 1; | ||
[[Image:WuChaoRen_003.png]] | [[Image:WuChaoRen_003.png|300px]] | ||
[[sleep]] 1; | [[sleep]] 1; | ||
[[lnbClear]] _CT_LISTNBOX; {{cc|Clear all items but control still remains just invisible}} | [[lnbClear]] _CT_LISTNBOX; {{cc|Clear all items but control still remains just invisible}} | ||
};</code> | };</code> |
Revision as of 15:47, 8 February 2021
Scripting Examples
CT_LISTBOX
Code | Pictures |
---|---|
{
|
CT_LISTBOX command family can be used with CT_COMBO, CT_LISTBOX, CT_XLISTBOX and CT_XCOMBO.
CT_LISTNBOX
As for invisible data processing, lnbAddArray, lnbAddColumn, lnbData, lnbGetColumnsPosition, lnbSetColumnsPos, lnbSetData, lnbSetText, lnbSetValue, lnbText and lnbValue store data types into exact position of the CT_LISTNBOX with different spaces. Accessing data with coordinate command at nearly the same syntax:
// Set same value to one position of a Control
_ctrl lnbSetData [[0,0],"#1"];
lnbSetColumnsPos [102,[0,1],1];
_ctrl lnbSetText [[0,1], "#1"];
_ctrl lnbSetValue [ [0,0],1];
// Accessing the value disregard affecting one another
_ctrl lnbData [0,0]; // "#1"
lnbGetColumnsPosition _ctrl; // [1];
_ctrl lnbText [0,0]; // "#1"
_ctrl lnbValue [0,0]; // 1
For a direct visible control over CT_LISTNBOX:
[_CT_LISTNBOX] spawn
{
disableSerialization;
params ["_CT_LISTNBOX"];
{
_CT_LISTNBOX lnbAddRow [ getText (_x >> "displayNameShort"),getText (_x >> "displayName")];
_CT_LISTNBOX lnbSetPicture [ [_foreachIndex,0],getText (_x >> "texture")];
} forEach ("true" configClasses (configFile >> "CfgRanks"));
_CT_LISTNBOX lnbSetCurSelRow 0;
private _current = lnbCurSelRow _CT_LISTNBOX;
private _color = _CT_LISTNBOX lnbColor [_current,0];
_CT_LISTNBOX lnbSetColor [[_current,1], [(_color select 0) / 2, 0, 0, 1]];
_CT_LISTNBOX lnbDeleteColumn 0;
_CT_LISTNBOX lnbDeleteRow 1;
sleep 1;
lnbClear _CT_LISTNBOX; // Clear all items but control still remains just invisible
};