<div class="eg-grid-cell eg-grid-cell-stock">
<div title="[% l('Row Number Column') %]">[% l('#') %]</div>
</div>
- <div class="eg-grid-cell eg-grid-cell-stock">
+ <div class="eg-grid-cell eg-grid-cell-stock" ng-show="canMultiSelect">
<div>
<input title="[% l('Row Selector Column') %]"
focus-me="gridControls.focusRowSelector"
</a>
<div ng-hide="gridControls.activateItem">{{$index + offset() + 1}}</div>
</div>
- <div class="eg-grid-cell eg-grid-cell-stock">
+ <div class="eg-grid-cell eg-grid-cell-stock" ng-show="canMultiSelect">
<!-- ng-click=handleRowClick here has unintended
consequences and is unnecessary, avoid it -->
<div>
// -display : columns are hidden by default
// -sort : columns are unsortable by default
// -multisort : sort priorities config disabled by default
+ // -multiselect : only one row at a time can be selected;
+ // choosing this also disables the checkbox
+ // column
features : '@',
// optional primary grid label
defaultToNoSort : (features.indexOf('-sort') > -1),
defaultToNoMultiSort : (features.indexOf('-multisort') > -1)
});
+ $scope.canMultiSelect = (features.indexOf('-multiselect') == -1);
$scope.handleAutoFields = function() {
if ($scope.autoFields) {
var origSelected = Object.keys($scope.selected);
+ if (!$scope.canMultiSelect) {
+ grid.selectOneItem(index);
+ grid.lastSelectedItemIndex = index;
+ return;
+ }
+
if ($event.ctrlKey || $event.metaKey /* mac command */) {
// control-click
if (grid.toggleSelectOneItem(index))