| @@ 8966-9035 (lines=70) @@ | ||
| 8963 | hasMenus: function () { |
|
| 8964 | return !!this.settings.menu; |
|
| 8965 | }, |
|
| 8966 | showMenu: function () { |
|
| 8967 | var self = this; |
|
| 8968 | var settings = self.settings; |
|
| 8969 | var menu; |
|
| 8970 | var parent = self.parent(); |
|
| 8971 | parent.items().each(function (ctrl) { |
|
| 8972 | if (ctrl !== self) { |
|
| 8973 | ctrl.hideMenu(); |
|
| 8974 | } |
|
| 8975 | }); |
|
| 8976 | if (settings.menu) { |
|
| 8977 | menu = self.menu; |
|
| 8978 | if (!menu) { |
|
| 8979 | menu = settings.menu; |
|
| 8980 | if (menu.length) { |
|
| 8981 | menu = { |
|
| 8982 | type: 'menu', |
|
| 8983 | items: menu |
|
| 8984 | }; |
|
| 8985 | } else { |
|
| 8986 | menu.type = menu.type || 'menu'; |
|
| 8987 | } |
|
| 8988 | if (parent.settings.itemDefaults) { |
|
| 8989 | menu.itemDefaults = parent.settings.itemDefaults; |
|
| 8990 | } |
|
| 8991 | menu = self.menu = global$b.create(menu).parent(self).renderTo(); |
|
| 8992 | menu.reflow(); |
|
| 8993 | menu.on('cancel', function (e) { |
|
| 8994 | e.stopPropagation(); |
|
| 8995 | self.focus(); |
|
| 8996 | menu.hide(); |
|
| 8997 | }); |
|
| 8998 | menu.on('show hide', function (e) { |
|
| 8999 | if (e.control.items) { |
|
| 9000 | e.control.items().each(function (ctrl) { |
|
| 9001 | ctrl.active(ctrl.settings.selected); |
|
| 9002 | }); |
|
| 9003 | } |
|
| 9004 | }).fire('show'); |
|
| 9005 | menu.on('hide', function (e) { |
|
| 9006 | if (e.control === menu) { |
|
| 9007 | self.classes.remove('selected'); |
|
| 9008 | } |
|
| 9009 | }); |
|
| 9010 | menu.submenu = true; |
|
| 9011 | } else { |
|
| 9012 | menu.show(); |
|
| 9013 | } |
|
| 9014 | menu._parentMenu = parent; |
|
| 9015 | menu.classes.add('menu-sub'); |
|
| 9016 | var rel = menu.testMoveRel(self.getEl(), self.isRtl() ? [ |
|
| 9017 | 'tl-tr', |
|
| 9018 | 'bl-br', |
|
| 9019 | 'tr-tl', |
|
| 9020 | 'br-bl' |
|
| 9021 | ] : [ |
|
| 9022 | 'tr-tl', |
|
| 9023 | 'br-bl', |
|
| 9024 | 'tl-tr', |
|
| 9025 | 'bl-br' |
|
| 9026 | ]); |
|
| 9027 | menu.moveRel(self.getEl(), rel); |
|
| 9028 | menu.rel = rel; |
|
| 9029 | rel = 'menu-sub-' + rel; |
|
| 9030 | menu.classes.remove(menu._lastRel).add(rel); |
|
| 9031 | menu._lastRel = rel; |
|
| 9032 | self.classes.add('selected'); |
|
| 9033 | self.aria('expanded', true); |
|
| 9034 | } |
|
| 9035 | }, |
|
| 9036 | hideMenu: function () { |
|
| 9037 | var self = this; |
|
| 9038 | if (self.menu) { |
|
| @@ 8774-8843 (lines=70) @@ | ||
| 8771 | hasMenus: function () { |
|
| 8772 | return !!this.settings.menu; |
|
| 8773 | }, |
|
| 8774 | showMenu: function () { |
|
| 8775 | var self = this; |
|
| 8776 | var settings = self.settings; |
|
| 8777 | var menu; |
|
| 8778 | var parent = self.parent(); |
|
| 8779 | parent.items().each(function (ctrl) { |
|
| 8780 | if (ctrl !== self) { |
|
| 8781 | ctrl.hideMenu(); |
|
| 8782 | } |
|
| 8783 | }); |
|
| 8784 | if (settings.menu) { |
|
| 8785 | menu = self.menu; |
|
| 8786 | if (!menu) { |
|
| 8787 | menu = settings.menu; |
|
| 8788 | if (menu.length) { |
|
| 8789 | menu = { |
|
| 8790 | type: 'menu', |
|
| 8791 | items: menu |
|
| 8792 | }; |
|
| 8793 | } else { |
|
| 8794 | menu.type = menu.type || 'menu'; |
|
| 8795 | } |
|
| 8796 | if (parent.settings.itemDefaults) { |
|
| 8797 | menu.itemDefaults = parent.settings.itemDefaults; |
|
| 8798 | } |
|
| 8799 | menu = self.menu = global$4.create(menu).parent(self).renderTo(); |
|
| 8800 | menu.reflow(); |
|
| 8801 | menu.on('cancel', function (e) { |
|
| 8802 | e.stopPropagation(); |
|
| 8803 | self.focus(); |
|
| 8804 | menu.hide(); |
|
| 8805 | }); |
|
| 8806 | menu.on('show hide', function (e) { |
|
| 8807 | if (e.control.items) { |
|
| 8808 | e.control.items().each(function (ctrl) { |
|
| 8809 | ctrl.active(ctrl.settings.selected); |
|
| 8810 | }); |
|
| 8811 | } |
|
| 8812 | }).fire('show'); |
|
| 8813 | menu.on('hide', function (e) { |
|
| 8814 | if (e.control === menu) { |
|
| 8815 | self.classes.remove('selected'); |
|
| 8816 | } |
|
| 8817 | }); |
|
| 8818 | menu.submenu = true; |
|
| 8819 | } else { |
|
| 8820 | menu.show(); |
|
| 8821 | } |
|
| 8822 | menu._parentMenu = parent; |
|
| 8823 | menu.classes.add('menu-sub'); |
|
| 8824 | var rel = menu.testMoveRel(self.getEl(), self.isRtl() ? [ |
|
| 8825 | 'tl-tr', |
|
| 8826 | 'bl-br', |
|
| 8827 | 'tr-tl', |
|
| 8828 | 'br-bl' |
|
| 8829 | ] : [ |
|
| 8830 | 'tr-tl', |
|
| 8831 | 'br-bl', |
|
| 8832 | 'tl-tr', |
|
| 8833 | 'bl-br' |
|
| 8834 | ]); |
|
| 8835 | menu.moveRel(self.getEl(), rel); |
|
| 8836 | menu.rel = rel; |
|
| 8837 | rel = 'menu-sub-' + rel; |
|
| 8838 | menu.classes.remove(menu._lastRel).add(rel); |
|
| 8839 | menu._lastRel = rel; |
|
| 8840 | self.classes.add('selected'); |
|
| 8841 | self.aria('expanded', true); |
|
| 8842 | } |
|
| 8843 | }, |
|
| 8844 | hideMenu: function () { |
|
| 8845 | var self = this; |
|
| 8846 | if (self.menu) { |
|