94faafaaf422357b3fad717ed8cfaf04231d5095a1eb040699e934f0b91f01f316b0d6718fc45a100b8342d590eac36506b070d15e6a0533108da5cb840a7d 819 B

1234567891011121314151617181920212223242526272829
  1. import {getValidSelection} from './../utils';
  2. export const KEY = 'clear_column';
  3. export default function clearColumnItem() {
  4. return {
  5. key: KEY,
  6. name: 'Clear column',
  7. callback(key, selection) {
  8. let column = selection.start.col;
  9. if (this.countRows()) {
  10. this.populateFromArray(0, column, [[null]], Math.max(selection.start.row, selection.end.row), column, 'ContextMenu.clearColumn');
  11. }
  12. },
  13. disabled() {
  14. let selected = getValidSelection(this);
  15. if (!selected) {
  16. return true;
  17. }
  18. let entireRowSelection = [selected[0], 0, selected[0], this.countCols() - 1];
  19. let rowSelected = entireRowSelection.join(',') == selected.join(',');
  20. return selected[1] < 0 || this.countCols() >= this.getSettings().maxCols || rowSelected;
  21. }
  22. };
  23. }