Я хочу добавить инструмент (поиск, справка, шестерня, ...) в окно динамически, например: http://www.rahulsingla.com/sites/default/files/content/blog/extjs/extjs-panel-add-tool.htm< /а>
И мне нужно создать более одного экземпляра UIMyWindow одновременно.
Однако я использую Ext Designer, который создает 2 файла:
- MyWindow.ui.js: объявление класса.
- MyWindow.js: реализация методов.
Кроме того, в Ext Designer нет опции «Инструменты во время разработки» (я не нашел).
Я добавлял инструмент вне MyWindow.js и MyWindow.ui.js, например:
var winMyWindow = new UIMyWindow({
autoShow: 'true',
tools: [{
type:'gear',
handler: function(){
// Some code...
}
}]
});
Но я хочу поместить этот блок внутрь MyWindow.js. Итак, я сделал это:
UIMyWindow = Ext.extend(UIMyWindowUi, {
tools: [{
type:'gear',
handler: function(){
// Some code...
}
}],
initComponent: function() {
UImenuDock.superclass.initComponent.call(this);
Если вы спросите меня «Почему бы не поместить этот код в MyWindow.ui.js?», я отвечу: «Потому что я не хочу помещать этот код вручную каждый раз, когда я вношу изменения в файл дизайна (Ext Designer)».
Ну, если я открываю одно окно, то вроде работает нормально, но если я одновременно открываю второе, инструменты дублируются во втором окне...
Итак, есть идеи, как динамически добавлять инструменты в MyWindow.js в этом конкретном случае?