UNPKG

@syncfusion/ej2-documenteditor

Version:

Feature-rich document editor control with built-in support for context menu, options pane and dialogs.

81 lines (80 loc) 2.9 kB
import { RIBBON_ID } from '../ribbon-base/ribbon-constants'; import { TableOperationsGroup } from './table-operations-group'; import { CellPropertiesGroup } from './cell-properties-group'; import { CellAlignGroup } from './cell-align-group'; import { TablePropertiesGroup } from './table-properties-group'; export var TABLE_LAYOUT_TAB_ID = '_table_layout_tab'; /** * Represents the Table Layout Tab in the Ribbon * @private */ var TableLayoutTab = /** @class */ (function () { /** * Constructor for the TableLayoutTab * * @param {DocumentEditorContainer} container - DocumentEditorContainer instance */ function TableLayoutTab(container) { this.container = container; this.localObj = this.container.localObj; // Initialize group instances this.tableOperationsGroup = new TableOperationsGroup(container); this.cellPropertiesGroup = new CellPropertiesGroup(container); this.cellAlignGroup = new CellAlignGroup(container); this.tablePropertiesGroup = new TablePropertiesGroup(container); } /** * Gets the Table Layout Tab model * * @returns {RibbonTabModel} The ribbon tab model */ TableLayoutTab.prototype.getTableLayoutTab = function () { return { id: this.container.element.id + RIBBON_ID + TABLE_LAYOUT_TAB_ID, keyTip: 'JL', header: this.localObj.getConstant('Table Layout'), groups: [ this.tablePropertiesGroup.getGroupModel(), this.tableOperationsGroup.getGroupModel(), this.cellPropertiesGroup.getGroupModel(), this.cellAlignGroup.getGroupModel() ] }; }; /** * Updates UI based on table layout changes * * @returns {void} */ TableLayoutTab.prototype.onTableLayoutChange = function () { // this.tablePropertiesGroup.updateSelection(); this.cellPropertiesGroup.updateSelection(); this.cellAlignGroup.updateSelection(); }; /** * Disposes event handlers * * @returns {void} */ TableLayoutTab.prototype.destroy = function () { // Dispose events in group classes if (this.tablePropertiesGroup.destroy) { this.tablePropertiesGroup.destroy(); this.tablePropertiesGroup = undefined; } if (this.tableOperationsGroup.destroy) { this.tableOperationsGroup.destroy(); this.tableOperationsGroup = undefined; } if (this.cellPropertiesGroup.destroy) { this.cellPropertiesGroup.destroy(); this.cellPropertiesGroup = undefined; } if (this.cellAlignGroup.destroy) { this.cellAlignGroup.destroy(); this.cellAlignGroup = undefined; } }; return TableLayoutTab; }()); export { TableLayoutTab };