if (!(Converter.class.isInstance (dev.driverList.get (j)))) index++;
try { dev.driverList.get(j).getClass().getDeclaredMethod("createNewPatch",null); if (!(Converter.class.isInstance(dev.driverList.get(j)))) index++; } catch (Exception ex) {  }
                public void actionPerformed (ActionEvent e)                {                    int index=0;                    for (int i=0;i<PatchEdit.deviceList.size ();i++)                    {                        final Device dev=(Device)PatchEdit.deviceList.get (i);                        for (int j=0;j<dev.driverList.size ();j++)                        {                            //System.out.println ("checking "+PatchEdit.getDriver (i,j).toString ()+" "+cb.getSelectedIndex ()+" "+index);                            if ((cb.getSelectedIndex ()==index)&&(!(Converter.class.isInstance (dev.driverList.get (j)))))                            {                                //System.out.println ("Bingo "+index);                                PatchEdit.Clipboard=PatchEdit.getDriver (i,j).createNewPatch ();                                setVisible (false);                                i=PatchEdit.deviceList.size ();                                break;                            }                            if (!(Converter.class.isInstance (dev.driverList.get (j))))                                index++;                        }                    }                }