Submissions for secondary structure prediction are now filtered to remove empty seque...
[jalview.git] / src / jalview / gui / Finder.java
index 1aceb80..ff4fe60 100755 (executable)
@@ -87,15 +87,6 @@ public class Finder extends GFinder
             });\r
     }\r
 \r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    public void textfield_actionPerformed(ActionEvent e)\r
-    {\r
-        doSearch(false);\r
-    }\r
 \r
     /**\r
      * DOCUMENT ME!\r
@@ -189,7 +180,9 @@ public class Finder extends GFinder
     {\r
         createNewGroup.setEnabled(false);\r
 \r
-        String searchString = textfield.getText().toUpperCase();\r
+        String searchString = textfield.getText().toUpperCase().trim();\r
+        if(searchString.length()<1)\r
+          return;\r
 \r
         com.stevesoft.pat.Regex regex = new com.stevesoft.pat.Regex(searchString);\r
 \r
@@ -206,19 +199,18 @@ public class Finder extends GFinder
         {\r
             int res = Integer.parseInt(searchString);\r
             found = true;\r
-\r
-            if (av.getSelectionGroup().getSize() > 0)\r
+            if (av.getSelectionGroup() == null || av.getSelectionGroup().getSize() < 1)\r
             {\r
-                seq = (Sequence) (av.getSelectionGroup().getSequenceAt(0));\r
+              seq = (Sequence) av.getAlignment().getSequenceAt(0);\r
             }\r
             else\r
             {\r
-                seq = (Sequence) av.getAlignment().getSequenceAt(0);\r
+              seq = (Sequence) (av.getSelectionGroup().getSequenceAt(0));\r
             }\r
 \r
             searchResults.add(Integer.toString(av.getAlignment().findIndex(seq)));\r
-            searchResults.add(Integer.toString(seq.findIndex(res) - 1));\r
-            searchResults.add(Integer.toString(seq.findIndex(res) - 1));\r
+            searchResults.add(res+"");\r
+            searchResults.add(res+"");\r
         }\r
         catch (NumberFormatException ex)\r
         {\r
@@ -270,7 +262,7 @@ public class Finder extends GFinder
             }\r
 \r
             ///Shall we ignore gaps????\r
-            StringBuffer noGaps = new StringBuffer();\r
+            StringBuffer noGapsSB = new StringBuffer();\r
             int insertCount = 0;\r
             Vector spaces = new Vector();\r
 \r
@@ -278,7 +270,7 @@ public class Finder extends GFinder
             {\r
                 if (!jalview.util.Comparison.isGap(item.charAt(j)))\r
                 {\r
-                    noGaps.append(item.charAt(j));\r
+                    noGapsSB.append(item.charAt(j));\r
                     spaces.add(new Integer(insertCount));\r
                 }\r
                 else\r
@@ -287,9 +279,12 @@ public class Finder extends GFinder
                 }\r
             }\r
 \r
+            String noGaps = noGapsSB.toString();\r
+\r
             for (int r = resIndex; r < noGaps.length(); r++)\r
             {\r
-                if (regex.searchFrom(noGaps.toString(), r))\r
+\r
+                if (regex.searchFrom(noGaps, r))\r
                 {\r
                     resIndex = regex.matchedFrom();\r
 \r
@@ -323,6 +318,10 @@ public class Finder extends GFinder
 \r
                     r = resIndex;\r
                 }\r
+                else\r
+                {\r
+                  break;\r
+                }\r
             }\r
 \r
             if (!found)\r