@syncfusion/ej2-documenteditor
Version:
Feature-rich document editor control with built-in support for context menu, options pane and dialogs.
87 lines (86 loc) • 3.17 kB
JavaScript
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
import { AltTextDialog } from './alt-text-dialog';
import { RibbonGroupBase } from '../ribbon-interfaces';
/**
* Alt Text Group implementation for Picture Format tab
* @private
*/
var AltTextGroup = /** @class */ (function (_super) {
__extends(AltTextGroup, _super);
/**
* Constructor for AltTextGroup class
* @param {DocumentEditorContainer} container - DocumentEditorContainer instance
*/
function AltTextGroup(container) {
var _this = _super.call(this, container) || this;
// Constants for UI elements
_this.ALT_TEXT_BUTTON_ID = '_de-alt-text-button';
_this.container = container;
_this.localObj = _this.container.localObj;
_this.altTextDialog = new AltTextDialog(container);
return _this;
}
/**
* Get the Alt Text group configuration
* @returns {RibbonGroupModel} - Alt Text group configuration
* @private
*/
AltTextGroup.prototype.getGroupModel = function () {
return {
id: this.ribbonId + '_alt_text_group',
header: this.localObj.getConstant('Accessibility'),
orientation: 'Row',
cssClass: 'alt-text-group',
enableGroupOverflow: true,
overflowHeader: this.localObj.getConstant('Accessibility'),
collections: [
{
items: [
{
type: 'Button',
id: this.ribbonId + this.ALT_TEXT_BUTTON_ID,
buttonSettings: {
content: this.localObj.getConstant('Alt Text'),
iconCss: 'e-icons e-de-ctnr-text-alternative',
clicked: this.altTextButtonClick.bind(this)
},
tooltipText: this.localObj.getConstant('Add alternative text to the image for accessibility')
}
]
}
]
};
};
/**
* Handle Alt Text button click
* @returns {void}
*/
AltTextGroup.prototype.altTextButtonClick = function () {
this.altTextDialog.show();
};
/**
* Clean up resources when destroyed
* @returns {void}
* @private
*/
AltTextGroup.prototype.destroy = function () {
if (this.altTextDialog) {
this.altTextDialog.destroy();
this.altTextDialog = undefined;
}
};
return AltTextGroup;
}(RibbonGroupBase));
export { AltTextGroup };