X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FAnnotationRowFilter.java;h=17298ba37e40509216c15237ee61fe2e7df5b69f;hb=2447e0f9b158c45152803a91e3e17866bd676d4f;hp=722ecdc6b13a3fe106654a7d70ef82b437ba3295;hpb=ca5a59c203b85a6c0f26c3d52d7827c5fa9fa4c5;p=jalview.git diff --git a/src/jalview/gui/AnnotationRowFilter.java b/src/jalview/gui/AnnotationRowFilter.java index 722ecdc..17298ba 100644 --- a/src/jalview/gui/AnnotationRowFilter.java +++ b/src/jalview/gui/AnnotationRowFilter.java @@ -1,10 +1,26 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.gui; -import jalview.api.analysis.AnnotationFilterParameter; -import jalview.api.analysis.AnnotationFilterParameter.SearchableAnnotationField; import jalview.datamodel.AlignmentAnnotation; -import jalview.datamodel.Annotation; -import jalview.datamodel.ColumnSelection; import jalview.datamodel.GraphLine; import jalview.datamodel.SequenceGroup; import jalview.schemes.AnnotationColourGradient; @@ -13,9 +29,9 @@ import jalview.util.MessageManager; import java.awt.event.ActionEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; -import java.util.List; import java.util.Vector; +import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JComboBox; import javax.swing.JInternalFrame; @@ -55,6 +71,11 @@ public abstract class AnnotationRowFilter extends JPanel protected JTextField thresholdValue = new JTextField(20); protected JInternalFrame frame; + + protected JButton ok = new JButton(); + + protected JButton cancel = new JButton(); + /** * enabled if the user is dragging the slider - try to keep updates to a * minimun @@ -110,7 +131,6 @@ public abstract class AnnotationRowFilter extends JPanel }); } - public AnnotationRowFilter(AlignViewport av, final AlignmentPanel ap) { this.av = av; @@ -182,7 +202,6 @@ public abstract class AnnotationRowFilter extends JPanel public void ok_actionPerformed(ActionEvent e) { - updateView(); try { frame.setClosed(true); @@ -363,89 +382,6 @@ public abstract class AnnotationRowFilter extends JPanel return false; } - protected boolean filterAnnotations(Annotation[] annotations, - AnnotationFilterParameter filterParams, ColumnSelection cs) - { - av.showAllHiddenColumns(); - cs.clear(); - int count = 0; - do - { - if (annotations[count] != null) - { - - boolean itemMatched = false; - - if (filterParams.getThresholdType() == AnnotationFilterParameter.ThresholdType.ABOVE_THRESHOLD - && annotations[count].value > currentAnnotation.threshold.value) - { - itemMatched = true; - } - if (filterParams.getThresholdType() == AnnotationFilterParameter.ThresholdType.BELOW_THRESHOLD - && annotations[count].value < currentAnnotation.threshold.value) - { - itemMatched = true; - } - - if (filterParams.isFilterAlphaHelix() - && annotations[count].secondaryStructure == 'H') - { - itemMatched = true; - } - - if (filterParams.isFilterBetaSheet() - && annotations[count].secondaryStructure == 'E') - { - itemMatched = true; - } - - if (filterParams.isFilterTurn() - && annotations[count].secondaryStructure == 'S') - { - itemMatched = true; - } - - String regexSearchString = filterParams.getRegexString(); - if (regexSearchString != null - && !filterParams.getRegexSearchFields().isEmpty()) - { - List fields = filterParams - .getRegexSearchFields(); - try - { - if (fields.contains(SearchableAnnotationField.DISPLAY_STRING) - && annotations[count].displayCharacter - .matches(regexSearchString)) - { - itemMatched = true; - } - } catch (java.util.regex.PatternSyntaxException pse) - { - if (annotations[count].displayCharacter - .equals(regexSearchString)) - { - itemMatched = true; - } - } - if (fields.contains(SearchableAnnotationField.DESCRIPTION) - && annotations[count].description != null - && annotations[count].description - .matches(regexSearchString)) - { - itemMatched = true; - } - } - - if (itemMatched) - { - cs.addElement(count); - } - } - count++; - } while (count < annotations.length); - return false; - } - public jalview.datamodel.AlignmentAnnotation getCurrentAnnotation() { return currentAnnotation;