}
}
- abuttons.uilevel = tvheadend.idnode_uilevel_menu(uilevel, function (l, refresh) {
+ function uilevel_change(l, refresh) {
+ if (l === uilevel)
+ return;
uilevel = l;
if (!refresh)
return;
mpanel.doLayout();
}
}
- });
+ }
+
+ abuttons.uilevel = tvheadend.idnode_uilevel_menu(uilevel, uilevel_change);
buttons.push('->');
buttons.push(abuttons.uilevel);
});
}
- var mpanel = new Ext.Panel({
+ mpanel = new Ext.Panel({
tbar: buttons,
layout: 'hbox',
padding: 5,
dpanel.add(mpanel);
dpanel.doLayout(false, true);
+ mpanel.on('uilevel', function() {
+ uilevel_change(tvheadend.uilevel, 1);
+ });
+
if (conf.comet) {
update_cb = form_load;
tvheadend.comet.on(conf.comet, update);
tvheadend.comet.un(conf.comet, update);
}
dpanel.removeAll(true);
+ mpanel.purgeListeners();
mpanel = null;
if (conf.destroyer)
conf.destroyer(conf);
iconCls: conf.iconCls || ''
});
+ dpanel.on('show', function() {
+ if (mpanel)
+ mpanel.fireEvent('uilevel');
+ });
tvheadend.paneladd(panel, dpanel, conf.tabIndex);
tvheadend.panelreg(panel, dpanel, builder, destroyer);
};