M
Matt Gilarde
Guest
Looking at the source, it seems that the order of selection for SHIFT clicks was intended to work in the way you expected but then the developer got it exactly backwards. There's a comment that says "Want to select range, from previous focused row to row just shift-clicked" but the code that selects rows does the following to determine which direction to add them. if (focusRow > clickedRow) { goForward = TRUE; } else { goForward = FALSE; } If the code matched the comment it would be the opposite. The documentation for FETCH-SELECTED-ROW says:
Continue reading...
This can be interpreted to mean that the rows are supposed to be added in the order they are selected, in which case the current behavior would be a bug. I don't know if we should change this behavior now because there may be other applications which rely on it (though I can't see how they could, as your examples illustrate).The AVM maintains a numbered list of selected rows, starting at 1. The AVM builds this numbered list as the user selects rows in the browse. When you call the FETCH-SELECTED-ROW method, the AVM searches this list to find the nth row selected by the user.
Continue reading...