Удалить элемент / элементы из mxToolbar (jgraph / mxgraph) - PullRequest
0 голосов
/ 07 февраля 2019

Я использую библиотеку mxgraph для создания собственного редактора.В моем редакторе у меня есть объект mxToolbar, в который я добавляю новые элементы каждый раз, когда создаю новый элемент на холсте.

Код mxToolbar

var tbContainer = document.createElement('div');
tbContainer.style.position = 'absolute';
//style etc.
document.body.appendChild(tbContainer);
//create the toolbar
var toolbar = new mxToolbar(tbContainer);

Я могу легко добавить значки к объекту mxToolbar со следующим кодом:

toolbar.addMode('the title name of the icon', 'editors/images/rectangle.gif');

Теперь я хочу найти способ удалить 1 или несколько режимов, добавленных в mxToolbar .Я пытался использовать метод mxToolbar.destroy(), но, похоже, не работает.Есть ли простой способ использования функций библиотеки для достижения вышеупомянутого сценария?Заранее спасибо:)

РЕДАКТИРОВАТЬ

До сих пор я реализовал «грязное» решение для случая, когда я хочу очистить каждый режим в mxToolbar, сначала я воссоздаюпанель инструментов, а затем я удаляю все предыдущие изображения, которые были созданы из предыдущего

        toolbar = new mxToolbar(tbContainer);
        toolbar.enabled = false
        var mxToolbarModes = document.querySelectorAll('.mxToolbarMode');
        Array.prototype.forEach.call( mxToolbarModes, function( node ) {
            node.parentNode.removeChild( node );
        });

, но должно быть что-то лучше ...

...