PatchEdit.dupAction.setEnabled(true);
PatchEdit.deleteDuplicatesAction.setEnabled(true);
    private void enableMenus() {	PatchEdit.receiveAction.setEnabled(true);	PatchEdit.importAction.setEnabled(true);	PatchEdit.importAllAction.setEnabled(true);	PatchEdit.newPatchAction.setEnabled(true);	if (table.getRowCount() > 0) {	    PatchEdit.saveAction.setEnabled(true);	    PatchEdit.saveAsAction.setEnabled(true);	    PatchEdit.searchAction.setEnabled(true);	    PatchEdit.transferSceneAction.setEnabled(true);	}	if (table.getRowCount() > 1) {	    PatchEdit.sortAction.setEnabled(true);	    PatchEdit.dupAction.setEnabled(true);	    PatchEdit.crossBreedAction.setEnabled(true);	}	boolean b = (table.getSelectedRowCount() > 0);	PatchEdit.extractAction.setEnabled(b);	PatchEdit.sendAction.setEnabled(b);	PatchEdit.sendToAction.setEnabled(b);	PatchEdit.playAction.setEnabled(b);	PatchEdit.storeAction.setEnabled(b);	PatchEdit.reassignAction.setEnabled(b);	PatchEdit.uploadAction.setEnabled(b);	if (b) {	    Patch myPatch = myModel.getPatchAt(table.getSelectedRow());	    try {		// look, if the driver for the selected patch brings his own editor		myPatch.getDriver().getClass()		    .getDeclaredMethod("editPatch", new Class[]{myPatch.getClass()});		// since the call didn't throw an exception, the driver implements the method itself		PatchEdit.editAction.setEnabled(true);	    } catch (NoSuchMethodException ex) {		// oh, the driver has no own editor. Is it a bank driver?		if (myPatch.getDriver() instanceof BankDriver) {		    // for a bankDriver is it ok, since the universal bankEditor works		    PatchEdit.editAction.setEnabled(true);		} else {		    // don't allow editing		    PatchEdit.editAction.setEnabled(false);		}	    }	} else {	    PatchEdit.editAction.setEnabled(false);	}	PatchEdit.cutAction.setEnabled(b);	PatchEdit.copyAction.setEnabled(b);	PatchEdit.deleteAction.setEnabled(b);	PatchEdit.exportAction.setEnabled(b);    }