lbSortBy: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - " \| *(game[0-9]|version[0-9]|gr[0-9]|serverExec|mp|pr|descr|s[0-9]|p[0-9]{1,3}|r[0-9]|x1?[0-9]|seealso) *= +" to " |$1= ") |
Killzone Kid (talk | contribs) No edit summary |
||
Line 8: | Line 8: | ||
|branch= dev | |branch= dev | ||
|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 | |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 <tt>"VALUE"</tt>, 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 <tt>"VALUE"</tt>, 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|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]]}} | {{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]]}} | ||
{{Feature|Important| As this command supports UNICODE by default, which may result in slower sorting, you can switch it off with <tt>unicodeOff</tt> param.}} | |||
|s1= controlOrIDC [[lbSortBy]] [sortByType, reversedOrder, caseSensitive, useTextRight] | |||
|s1= controlOrIDC [[lbSortBy]] [sortByType, reversedOrder, caseSensitive, useTextRight, unicodeOff] | |||
|p1= controlOrIDC: [[Control]] or [[Number]] - the ListBox control or its IDC | |p1= controlOrIDC: [[Control]] or [[Number]] - the ListBox control or its IDC | ||
|p2= [sortByType, reversedOrder, caseSensitive, useTextRight]: [[Array]] | |p2= [sortByType, reversedOrder, caseSensitive, useTextRight, unicodeOff]: [[Array]] | ||
|p3= sortByType: [[String]] - (Optional, default "TEXT") one of: | |p3= sortByType: [[String]] - (Optional, default "TEXT") one of: | ||
Line 29: | Line 31: | ||
|p6= useTextRight: [[Boolean]] - (Optional, default [[false]]) [[true]] to sort by [[lbSetTextRight | text right]] | |p6= useTextRight: [[Boolean]] - (Optional, default [[false]]) [[true]] to sort by [[lbSetTextRight | text right]] | ||
|p7= unicodeOff: [[Boolean]] - (Optional, default [[false]]) [[true]] to switch off UNICODE conversion for faster sorting | |||
|r1= [[Nothing]] | |r1= [[Nothing]] |
Revision as of 13:56, 27 June 2021
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