removeRow.js 720 B

12345678910111213141516171819202122232425
  1. import { getValidSelection } from './../utils';
  2. export var KEY = 'remove_row';
  3. export default function removeRowItem() {
  4. return {
  5. key: KEY,
  6. name: 'Remove row',
  7. callback: function callback(key, selection) {
  8. var amount = selection.end.row - selection.start.row + 1;
  9. this.alter('remove_row', selection.start.row, amount, 'ContextMenu.removeRow');
  10. },
  11. disabled: function disabled() {
  12. var selected = getValidSelection(this);
  13. var totalRows = this.countRows();
  14. return !selected || this.selection.selectedHeader.cols || this.selection.selectedHeader.corner || !totalRows;
  15. },
  16. hidden: function hidden() {
  17. return !this.getSettings().allowRemoveRow;
  18. }
  19. };
  20. }