lbSortBy: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
Line 9: | Line 9: | ||
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. | 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]]. | * 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. | * As this command supports UNICODE by default, which may result in slower sorting, you can switch it off with {{hl|unicodeOff}} param. | ||
Line 20: | Line 20: | ||
|p2= [sortByType, reversedOrder, caseSensitive, useTextRight, unicodeOff]: [[Array]] | |p2= [sortByType, reversedOrder, caseSensitive, useTextRight, unicodeOff]: [[Array]] | ||
|p3= sortByType: [[String]] - | |p3= sortByType: [[String]] - (Optional, default "TEXT") one of: | ||
* {{hl|"TEXT"}} | * {{hl|"TEXT"}} | ||
* {{hl|"VALUE"}} | * {{hl|"VALUE"}} | ||
Line 35: | Line 35: | ||
|r1= [[Nothing]] | |r1= [[Nothing]] | ||
|x1= < | |x1= <sqf> | ||
with uiNamespace do | |||
{ | { | ||
private _lb = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscListBox", -1]; | |||
_lb | _lb ctrlSetPosition [0,0,1,1]; | ||
_lb | _lb ctrlCommit 0; | ||
lbClear _lb; | |||
{ | { | ||
_lb | _lb lbAdd (_x select 0); | ||
_lb | _lb lbSetValue [_forEachIndex, _x select 1]; | ||
} | } | ||
forEach [["В",1], ["Я",0], ["Б",1], ["Ю",0], ["А",1]]; | |||
_lb | _lb lbSortBy ["VALUE", false, false]; | ||
};</ | }; | ||
</sqf> | |||
|seealso= [[lnbSortBy]] [[lnbSort]] [[lnbSortByValue]] [[lbSort]] [[lbSortByValue]] [[tvSort]] [[tvSortByValue]] [[sort]] | |seealso= [[lnbSortBy]] [[lnbSort]] [[lnbSortByValue]] [[lbSort]] [[lbSortByValue]] [[tvSort]] [[tvSortByValue]] [[sort]] | ||
}} | }} |
Revision as of 18:23, 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, reversedOrder, caseSensitive, useTextRight, unicodeOff]: Array
- 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