From 8e7a4bc69e7522cca95155bfc5201ae884cde63c Mon Sep 17 00:00:00 2001 From: tcarver <tjc> Date: Tue, 3 Jan 2012 15:12:50 +0000 Subject: [PATCH] add FORMAT filters when using setFilterString() --- .../artemis/components/variant/VCFFilter.java | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/uk/ac/sanger/artemis/components/variant/VCFFilter.java b/uk/ac/sanger/artemis/components/variant/VCFFilter.java index ada5fb9dd..76f2384c1 100644 --- a/uk/ac/sanger/artemis/components/variant/VCFFilter.java +++ b/uk/ac/sanger/artemis/components/variant/VCFFilter.java @@ -28,7 +28,6 @@ import java.awt.Dimension; import java.awt.Font; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; -import java.awt.Insets; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -718,7 +717,29 @@ public class VCFFilter extends JFrame !recFilter.pass(record, record.getInfoValue(id).split(","), vcfReader)) record.appendFilter(id); break; - case HeaderLine.FORMAT_LINE: // FORMAT + + case HeaderLine.FORMAT_LINE: // FORMAT Genotype line + final String samples[] = record.getFormatValues(id); + if(samples == null) + { + record.appendFilter(id); + break; + } + + //if (recFilter.getHeaderLine().isFlag()) + //{ + // return true; + //} + + for(int i=0; i<samples.length; i++) + { + if( samples[i] == null || !recFilter.pass(record, samples[i].split(","), vcfReader)) + { + record.appendFilter(id); + break; + } + } + break; case HeaderLine.FILTER_LINE: // FILTER break; -- GitLab