jdk/src/share/classes/javax/swing/JMenuBar.java
changeset 1301 15e81207e1f2
parent 466 6acd5ec503a8
child 5506 202f599c92aa
equal deleted inserted replaced
1300:e7bbe37ce03a 1301:15e81207e1f2
   412      * other menu elements.
   412      * other menu elements.
   413      * @return an array of menu items in the menu bar.
   413      * @return an array of menu items in the menu bar.
   414      */
   414      */
   415     public MenuElement[] getSubElements() {
   415     public MenuElement[] getSubElements() {
   416         MenuElement result[];
   416         MenuElement result[];
   417         Vector tmp = new Vector();
   417         Vector<MenuElement> tmp = new Vector<MenuElement>();
   418         int c = getComponentCount();
   418         int c = getComponentCount();
   419         int i;
   419         int i;
   420         Component m;
   420         Component m;
   421 
   421 
   422         for(i=0 ; i < c ; i++) {
   422         for(i=0 ; i < c ; i++) {
   423             m = getComponent(i);
   423             m = getComponent(i);
   424             if(m instanceof MenuElement)
   424             if(m instanceof MenuElement)
   425                 tmp.addElement(m);
   425                 tmp.addElement((MenuElement) m);
   426         }
   426         }
   427 
   427 
   428         result = new MenuElement[tmp.size()];
   428         result = new MenuElement[tmp.size()];
   429         for(i=0,c=tmp.size() ; i < c ; i++)
   429         for(i=0,c=tmp.size() ; i < c ; i++)
   430             result[i] = (MenuElement) tmp.elementAt(i);
   430             result[i] = tmp.elementAt(i);
   431         return result;
   431         return result;
   432     }
   432     }
   433 
   433 
   434     /**
   434     /**
   435      * Implemented to be a <code>MenuElement</code>. Returns this object.
   435      * Implemented to be a <code>MenuElement</code>. Returns this object.
   662                                         int condition, boolean pressed) {
   662                                         int condition, boolean pressed) {
   663         // See if we have a local binding.
   663         // See if we have a local binding.
   664         boolean retValue = super.processKeyBinding(ks, e, condition, pressed);
   664         boolean retValue = super.processKeyBinding(ks, e, condition, pressed);
   665         if (!retValue) {
   665         if (!retValue) {
   666             MenuElement[] subElements = getSubElements();
   666             MenuElement[] subElements = getSubElements();
   667             for (int i=0; i<subElements.length; i++) {
   667             for (MenuElement subElement : subElements) {
   668                 if (processBindingForKeyStrokeRecursive(
   668                 if (processBindingForKeyStrokeRecursive(
   669                                                         subElements[i], ks, e, condition, pressed)) {
   669                         subElement, ks, e, condition, pressed)) {
   670                     return true;
   670                     return true;
   671                 }
   671                 }
   672             }
   672             }
   673         }
   673         }
   674         return retValue;
   674         return retValue;
   691 
   691 
   692             return true;
   692             return true;
   693         }
   693         }
   694 
   694 
   695         MenuElement[] subElements = elem.getSubElements();
   695         MenuElement[] subElements = elem.getSubElements();
   696         for(int i=0; i<subElements.length; i++) {
   696         for (MenuElement subElement : subElements) {
   697             if (processBindingForKeyStrokeRecursive(subElements[i], ks, e,
   697             if (processBindingForKeyStrokeRecursive(subElement, ks, e, condition, pressed)) {
   698                                                     condition, pressed)) {
       
   699                 return true;
   698                 return true;
   700                 // We don't, pass along to children JMenu's
   699                 // We don't, pass along to children JMenu's
   701             }
   700             }
   702         }
   701         }
   703         return false;
   702         return false;