12345678910111213141516171819202122232425262728293031 |
- import { getValidSelection } from './../utils';
- export var KEY = 'col_left';
- export default function columnLeftItem() {
- return {
- key: KEY,
- name: 'Insert column on the left',
- callback: function callback(key, selection) {
- this.alter('insert_col', selection.start.col, 1, 'ContextMenu.columnLeft');
- },
- disabled: function disabled() {
- var selected = getValidSelection(this);
- if (!selected) {
- return true;
- }
- if (!this.isColumnModificationAllowed()) {
- return true;
- }
- var entireRowSelection = [selected[0], 0, selected[0], this.countCols() - 1];
- var rowSelected = entireRowSelection.join(',') == selected.join(',');
- var onlyOneColumn = this.countCols() === 1;
- return selected[1] < 0 || this.countCols() >= this.getSettings().maxCols || !onlyOneColumn && rowSelected;
- },
- hidden: function hidden() {
- return !this.getSettings().allowInsertColumn;
- }
- };
- }
|