X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fappletgui%2FFinder.java;h=2579d91be3600a4af25d184ebe128b07a95afc7f;hb=10eedfb43dacd4cf32d4b5fe27d8d5987c70eaf8;hp=fdfc00f8c43675b154a0f1b314a1e660865cd3d5;hpb=52402128d98c6744eb6348dd788fe6e8cd34575c;p=jalview.git diff --git a/src/jalview/appletgui/Finder.java b/src/jalview/appletgui/Finder.java index fdfc00f..2579d91 100644 --- a/src/jalview/appletgui/Finder.java +++ b/src/jalview/appletgui/Finder.java @@ -20,6 +20,7 @@ */ package jalview.appletgui; +import jalview.datamodel.SearchResultMatchI; import jalview.datamodel.SearchResultsI; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; @@ -76,6 +77,7 @@ public class Finder extends Panel implements ActionListener frame.repaint(); frame.addWindowListener(new WindowAdapter() { + @Override public void windowClosing(WindowEvent evt) { ap.highlightSearchResults(null); @@ -84,6 +86,7 @@ public class Finder extends Panel implements ActionListener textfield.requestFocus(); } + @Override public void actionPerformed(ActionEvent evt) { if (evt.getSource() == textfield) @@ -113,18 +116,21 @@ public class Finder extends Panel implements ActionListener SequenceI[] seqs = new SequenceI[searchResults.getSize()]; SequenceFeature[] features = new SequenceFeature[searchResults .getSize()]; + String searchString = textfield.getText().trim(); - for (int i = 0; i < searchResults.getSize(); i++) + int i = 0; + for (SearchResultMatchI match : searchResults.getResults()) { - seqs[i] = searchResults.getResultSequence(i); + seqs[i] = match.getSequence().getDatasetSequence(); - features[i] = new SequenceFeature(textfield.getText().trim(), - "Search Results", null, searchResults.getResultStart(i), - searchResults.getResultEnd(i), "Search Results"); + features[i] = new SequenceFeature(searchString, + "Search Results", null, match.getStart(), match.getEnd(), + "Search Results"); + i++; } if (ap.seqPanel.seqCanvas.getFeatureRenderer().amendFeatures(seqs, - features, true, ap)) + features, true, ap, searchString)) { ap.alignFrame.sequenceFeatures.setState(true); av.setShowSequenceFeatures(true); @@ -152,7 +158,7 @@ public class Finder extends Panel implements ActionListener seqIndex = finder.getSeqIndex(); resIndex = finder.getResIndex(); searchResults = finder.getSearchResults(); - Vector idMatch = finder.getIdMatch(); + Vector idMatch = finder.getIdMatch(); boolean haveResults = false; // set or reset the GUI if ((idMatch.size() > 0)) @@ -246,6 +252,7 @@ public class Finder extends Panel implements ActionListener textfield.setBounds(new Rectangle(40, 17, 133, 21)); textfield.addKeyListener(new java.awt.event.KeyAdapter() { + @Override public void keyTyped(KeyEvent e) { textfield_keyTyped(e);