The c4_View::SortOnReverse call in C++ can sort in ascending *and* descending order, in any mix when sorting on multiple properties.
This sorts ascending on A:
sorted = view.SortOn(A)
This sorts ascending on A, then on B:
sorted = view.SortOn((A,B))
This sorts descending on A:
sorted = view.SortOnReverse(A, A)
This sorts descending on A, then on B:
sorted = view.SortOnReverse((A,B), (A,B))
This sorts descending on A, and ascending on B:
sorted = view.SortOnReverse((A,B), A)
This sorts asscending on A, and descending on B:
sorted = view.SortOnReverse((A,B), B)
This also sorts ascending on A, then on B, btw:
sorted = view.SortOnReverse((A,B), c4_View ())
The rule for SortOnReverse(X, Y) is: sort on the properties included in X (or simply on X if it is a property), but when sorting use descending sort order for all those properties also included in Y (or Y itself). y0