|
created() {
this.spreadsheetObj.addRibbonTabs([
{
header: { text: 'My Options' },
content: [
{
text: 'Options',
tooltipText: 'Options',
template: this.appendDropdownBtn('custombtn'),
},
],
},
]);
}
public appendDropdownBtn(id: string): HTMLElement {
let target = createElement('ul', { id: 'customUl' });
let menuObj: Menu;
let btnObj: DropDownButton = new DropDownButton({
createPopupOnClick: true,
content: 'Options',
target: target,
beforeOpen: (): void => {
if (!this.isMenuAppended) {
menuObj = this.appendMenu(target);
}
},
beforeClose: (): void => {
this.isMenuAppended = true;
},
});
btnObj.appendTo(createElement('button', { id: id }));
return btnObj.element;
}
public appendMenu(target) {
let menuObj: Menu = new Menu({
items: this.ddlItems,
orientation: 'Vertical',
select: (args: MenuEventArgs): void => {
alert(args.item.text + ' clicked');
},
});
menuObj.appendTo(target);
target.classList.add('e-ul');
return menuObj;
}
|