Difference between revisions of "lbSortBy"
Jump to navigation
Jump to search
killzone_kid (talk | contribs) (Created page with "{{RV|type=command |arma 3 |2.06 |gr1= GUI Control - ListBox |Sorts given ListBox by either lbText, lbValue or lbData in normal or reversed order, using case-se...") |
Lou Montana (talk | contribs) m (Fix) |
||
(17 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{RV|type=command | {{RV|type=command | ||
− | | | + | |game1= arma3 |
− | + | |version1= 2.06 | |
− | |2.06 | ||
|gr1= GUI Control - ListBox | |gr1= GUI Control - ListBox | ||
− | |Sorts given ListBox by either [[lbText]], [[lbValue]] or [[lbData]] in normal or reversed order, using case-sensitive or case-insensitive comparison. This command supports | + | |descr= Sorts given ListBox by either [[lbText]], [[lbValue]] or [[lbData]] in normal or reversed order, using case-sensitive or case-insensitive comparison. This command supports UNICODE characters. |
+ | When sorting by {{hl|"VALUE"}}, the rows with the same [[lbValue]] will additionally be sorted by [[lbText]] in the order specified by `reversedOrder` flag, text specified by `useTextRight` flag and case-sensitivity specified by `caseSensitive` flag. | ||
− | {{Feature| | + | {{Feature|important| |
+ | * This command supports referencing control via IDC as well, but as with any use of IDC in UI [[Control]] commands, a [[dialog]] should be present, i.e. UI user interaction is created with [[createDialog]] rather than [[createDisplay]]. | ||
+ | * As this command supports UNICODE by default, which may result in slower sorting, you can switch it off with {{hl|unicodeOff}} param. | ||
+ | }} | ||
− | | controlOrIDC | + | |s1= controlOrIDC [[lbSortBy]] [sortByType, reversedOrder, caseSensitive, useTextRight, unicodeOff] |
− | |p1= | + | |p1= controlOrIDC: [[Control]] or [[Number]] - the ListBox control or its IDC |
− | |p2= | + | |p2= sortByType: [[String]] - (Optional, default "TEXT") one of: |
+ | * {{hl|"TEXT"}} | ||
+ | * {{hl|"VALUE"}} | ||
+ | * {{hl|"DATA"}} | ||
− | |p3= | + | |p3= reversedOrder: [[Boolean]] - (Optional, default [[false]]) [[true]] for sorting in reversed order |
− | |p4= | + | |p4= caseSensitive: [[Boolean]] - (Optional, default [[false]]) [[true]] for using case-sensitive comparison |
− | |p5= | + | |p5= useTextRight: [[Boolean]] - (Optional, default [[false]]) [[true]] to sort by [[lbSetTextRight | text right]] |
− | | [[ | + | |p6= unicodeOff: [[Boolean]] - (Optional, default [[false]]) [[true]] to switch off UNICODE conversion for faster sorting |
− | |x1= < | + | |r1= [[Nothing]] |
+ | |||
+ | |x1= <sqf> | ||
+ | with uiNamespace do | ||
{ | { | ||
− | + | private _lb = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscListBox", -1]; | |
− | + | _lb ctrlSetPosition [0,0,1,1]; | |
− | + | _lb ctrlCommit 0; | |
− | + | lbClear _lb; | |
− | { | + | { |
− | + | _lb lbAdd (_x select 0); | |
− | + | _lb lbSetValue [_forEachIndex, _x select 1]; | |
− | } | + | } |
− | + | forEach [["В",1], ["Я",0], ["Б",1], ["Ю",0], ["А",1]]; | |
− | + | _lb lbSortBy ["VALUE", false, false]; | |
− | };</ | + | }; |
+ | </sqf> | ||
− | |seealso= [[lnbSortBy]] | + | |seealso= [[lnbSortBy]] [[lnbSort]] [[lnbSortByValue]] [[lbSort]] [[lbSortByValue]] [[tvSort]] [[tvSortByValue]] [[sort]] |
}} | }} | ||
− | |||
− | |||
− | |||
− |
Latest revision as of 19:24, 5 May 2022
Description
- Description:
- Sorts given ListBox by either lbText, lbValue or lbData in normal or reversed order, using case-sensitive or case-insensitive comparison. This command supports UNICODE characters. When sorting by "VALUE", the rows with the same lbValue will additionally be sorted by lbText in the order specified by `reversedOrder` flag, text specified by `useTextRight` flag and case-sensitivity specified by `caseSensitive` flag.
- Groups:
- GUI Control - ListBox
Syntax
- Syntax:
- controlOrIDC lbSortBy [sortByType, reversedOrder, caseSensitive, useTextRight, unicodeOff]
- Parameters:
- controlOrIDC: Control or Number - the ListBox control or its IDC
- sortByType: String - (Optional, default "TEXT") one of:
- "TEXT"
- "VALUE"
- "DATA"
- reversedOrder: Boolean - (Optional, default false) true for sorting in reversed order
- caseSensitive: Boolean - (Optional, default false) true for using case-sensitive comparison
- useTextRight: Boolean - (Optional, default false) true to sort by text right
- unicodeOff: Boolean - (Optional, default false) true to switch off UNICODE conversion for faster sorting
- Return Value:
- Nothing
Examples
- Example 1:
- with uiNamespace do { private _lb = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscListBox", -1]; _lb ctrlSetPosition [0,0,1,1]; _lb ctrlCommit 0; lbClear _lb; { _lb lbAdd (_x select 0); _lb lbSetValue [_forEachIndex, _x select 1]; } forEach [["В",1], ["Я",0], ["Б",1], ["Ю",0], ["А",1]]; _lb lbSortBy ["VALUE", false, false]; };
Additional Information
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note