private void filterChange(final BamView bamView, final JComboBox flagCheck[]) { int nflags = SAMRecordFlagPredicate.FLAGS.length; int flagCombined = 0; Vector<SAMRecordPredicate> predicates = new Vector<SAMRecordPredicate>(); for (int j = 0; j < nflags; j++) { String opt = (String) flagCheck[j].getSelectedItem(); if (opt.equals("HIDE")) flagCombined = flagCombined | SAMRecordFlagPredicate.FLAGS[j]; else if (opt.equals("SHOW")) predicates.add(new SAMRecordFlagPredicate(SAMRecordFlagPredicate.FLAGS[j], false)); } if (flagCombined == 0 && predicates.size() == 0) bamView.setSamRecordFlagPredicate(null); else { final SAMRecordPredicate predicate; if (predicates.size() == 0) predicate = new SAMRecordFlagPredicate(flagCombined); else if (flagCombined == 0) { predicate = new SAMRecordFlagConjunctionPredicate(predicates, SAMRecordFlagConjunctionPredicate.OR); } else { SAMRecordFlagPredicate p1 = new SAMRecordFlagPredicate(flagCombined); SAMRecordFlagConjunctionPredicate p2 = new SAMRecordFlagConjunctionPredicate(predicates, SAMRecordFlagConjunctionPredicate.OR); predicate = new SAMRecordFlagConjunctionPredicate(p1, p2, SAMRecordFlagConjunctionPredicate.OR); } bamView.setSamRecordFlagPredicate(predicate); } bamView.repaint(); }
private void setQualityCutOff(final JTextField cutOff, final BamView bamView) { String cutOffStr = cutOff.getText().trim(); if (cutOffStr.equals("")) bamView.setSamRecordMapQPredicate(null); else { try { SAMRecordMapQPredicate predicate = new SAMRecordMapQPredicate(Integer.parseInt(cutOffStr)); bamView.setSamRecordMapQPredicate(predicate); } catch (NumberFormatException nfe) { bamView.setSamRecordMapQPredicate(null); } } bamView.repaint(); }