X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FFinder.java;h=2311a9f532f1a4220fec634e46fe41ae97973979;hb=9ee6d0820f9b6b253900b00da9b1531f9b40e057;hp=d78669c82b64f3c5411ba4b38eb3d8960b7225b3;hpb=3a94ac879afa5d50c6c43eba8a12139adead7720;p=jalview.git diff --git a/src/jalview/gui/Finder.java b/src/jalview/gui/Finder.java index d78669c..2311a9f 100755 --- a/src/jalview/gui/Finder.java +++ b/src/jalview/gui/Finder.java @@ -6,7 +6,7 @@ import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.util.*; - +import java.awt.*; public class Finder extends GFinder { @@ -14,6 +14,7 @@ public class Finder extends GFinder AlignmentPanel ap; JInternalFrame frame; String searchString; + SuperGroup searchGroup; int seqIndex = 0; int resIndex = 0; @@ -32,11 +33,14 @@ public class Finder extends GFinder SwingUtilities.invokeLater(new Runnable() { public void run() - { - textfield.requestFocus(); - } + { textfield.requestFocus(); } }); - } + } + + public void internalFrameClosing(InternalFrameEvent evt) + { + cancel_actionPerformed(null); + } }); } @@ -63,20 +67,31 @@ public class Finder extends GFinder try{ // if allResults is null, this effectively switches displaySearch flag in seqCanvas ap.highlightSearchResults( null ); - frame.setClosed(true); + // frame.setClosed(true); }catch(Exception ex){ } + } + + + public void createNewGroup_actionPerformed(ActionEvent e) + { + for(int i=0; i0 && !av.getSelection().contains(seq)) + if( av.getSelection().size()>0 && !av.getSelection().contains(seq) + || (rubberband!=null && !rubberband.sequences.contains(seq)) ) { // if a selection has been made, only search within that selection seqIndex++; @@ -112,14 +143,51 @@ public class Finder extends GFinder item = seq.getSequence(); - for(int r = resIndex; r-1) + + if(!jalview.util.Comparison.isGap(item.charAt(j))) + { + noGaps.append(item.charAt(j)); + spaces.add(new Integer(insertCount)); + } + else + insertCount++; + } + + + com.stevesoft.pat.Regex regex = new com.stevesoft.pat.Regex(searchString); + + for(int r = resIndex; r0) { - allResults = new int[searchResults.size()]; for(int i=0; i