TabCloseMenu.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. Ext.define('saas.override.ux.TabCloseMenu', {
  2. override: 'Ext.ux.TabCloseMenu',
  3. cls: 'x-tab-close-menu',
  4. createMenu : function() {
  5. var me = this;
  6. if (!me.menu) {
  7. var items = [{
  8. itemId: 'close',
  9. text: me.closeTabText,
  10. scope: me,
  11. handler: me.onClose
  12. }];
  13. if (me.showCloseAll || me.showCloseOthers) {
  14. items.push('-');
  15. }
  16. if (me.showCloseOthers) {
  17. items.push({
  18. itemId: 'closeOthers',
  19. text: me.closeOthersTabsText,
  20. scope: me,
  21. handler: me.onCloseOthers
  22. });
  23. }
  24. if (me.showCloseAll) {
  25. items.push({
  26. itemId: 'closeAll',
  27. text: me.closeAllTabsText,
  28. scope: me,
  29. handler: me.onCloseAll
  30. });
  31. }
  32. if (me.extraItemsHead) {
  33. items = me.extraItemsHead.concat(items);
  34. }
  35. if (me.extraItemsTail) {
  36. items = items.concat(me.extraItemsTail);
  37. }
  38. me.menu = Ext.create('Ext.menu.Menu', {
  39. cls: me.cls,
  40. items: items,
  41. listeners: {
  42. hide: me.onHideMenu,
  43. scope: me
  44. }
  45. });
  46. }
  47. return me.menu;
  48. },
  49. });