|
<ejs-diagram id="diagram" ref="diagram" :width='width' :height='height' :nodes='nodes' :contextMenuBeforeItemRender ="contextMenuBeforeItemRender" :contextMenuSettings='contextMenuSettings'></ejs-diagram>
data () {
return {
width: "1000px",
height: "700px",
connectors: connectors,
nodes: nodes,
contextMenuSettings: {
//Enables the context menu
show: true,
items: [{
text: 'Cut', id: 'Cut', target: '.e-diagramcontent',
iconCss: 'e-Cut'
},
{
text: 'Copy', id: 'Copy', target: '.e-diagramcontent',
iconCss: 'e-Copy'
}],
// Hides the default context menu items
showCustomMenuOnly: true,
},
// Define the context menu event outside context menu settings
contextMenuBeforeItemRender: (args) => {
// To render template in li.
let shortCutSpan = createElement('span');
let text = args.item.text;
let shortCutText = text === 'Cut' ? 'Ctrl + S' : (text === 'Copy' ?
'Ctrl + U' : 'Ctrl + Shift + I');
shortCutSpan.textContent = shortCutText;
args.element.appendChild(shortCutSpan);
shortCutSpan.setAttribute('class', 'shortcut');
},
}
} |