diff --git a/uk/ac/sanger/artemis/components/ValidateViewer.java b/uk/ac/sanger/artemis/components/ValidateViewer.java index 96906e1e8a2d1a9365a6ff690bc9f96e7fa7c9c7..adc68595251a288da7110c2e85cd411387329c2c 100644 --- a/uk/ac/sanger/artemis/components/ValidateViewer.java +++ b/uk/ac/sanger/artemis/components/ValidateViewer.java @@ -55,7 +55,8 @@ public class ValidateViewer extends FileViewer implements EntryGroupChangeListen private static final long serialVersionUID = 1L; private EntryGroup entryGrp; private FeatureVector selectedFeatures; - private JCheckBox showFailedFeatures = new JCheckBox("Show only failed features", true); + private JCheckBox showFailedFeatures = new JCheckBox("failed features only", true); + private JCheckBox showObsoleteFeatures = new JCheckBox("obsolete features", false); private boolean inAutoFix = false; /** @@ -154,7 +155,6 @@ public class ValidateViewer extends FileViewer implements EntryGroupChangeListen fixButton.setEnabled(false); button_panel.add(fixButton); - button_panel.add(showFailedFeatures); showFailedFeatures.addItemListener(new ItemListener(){ public void itemStateChanged(ItemEvent arg0) @@ -163,6 +163,15 @@ public class ValidateViewer extends FileViewer implements EntryGroupChangeListen } }); + if(GeneUtils.isGFFEntry(entryGrp)) + button_panel.add(showObsoleteFeatures); + showObsoleteFeatures.addItemListener(new ItemListener(){ + public void itemStateChanged(ItemEvent arg0) + { + update(); + } + }); + entryGrp.addEntryGroupChangeListener(new EntryGroupChangeListener(){ public void entryGroupChanged(EntryGroupChangeEvent event) { @@ -203,13 +212,22 @@ public class ValidateViewer extends FileViewer implements EntryGroupChangeListen super.setText(""); final ValidateFeature gffTest = new ValidateFeature(entryGrp); int nfail = 0; + int total = 0; for(int i=0; i<features.size(); i++) - if(!gffTest.featureValidate(features.elementAt(i).getEmblFeature(), + { + uk.ac.sanger.artemis.io.Feature f = features.elementAt(i).getEmblFeature(); + if(!showObsoleteFeatures.isSelected() && + f instanceof GFFStreamFeature && GeneUtils.isObsolete((GFFStreamFeature)f)) + continue; + + if(!gffTest.featureValidate(f, this, showFailedFeatures.isSelected())) nfail++; - - setTitle("Validation Report :: "+ features.size()+ - " feature(s) Pass: "+(features.size()-nfail)+" Failed: "+nfail); + total++; + } + + setTitle("Validation Report :: "+ total+ + " feature(s) Pass: "+(total-nfail)+" Failed: "+nfail); } private FeatureVector getFeatures()