Case sensitive
authoramwaterhouse <Andrew Waterhouse>
Fri, 28 Apr 2006 12:33:44 +0000 (12:33 +0000)
committeramwaterhouse <Andrew Waterhouse>
Fri, 28 Apr 2006 12:33:44 +0000 (12:33 +0000)
src/jalview/appletgui/Finder.java
src/jalview/gui/Finder.java
src/jalview/jbgui/GFinder.java

index 1201278..570241d 100755 (executable)
@@ -25,6 +25,7 @@ import java.awt.*;
 import java.awt.event.*;\r
 \r
 import jalview.datamodel.*;\r
+import java.awt.Rectangle;\r
 \r
 public class Finder extends Panel implements ActionListener\r
 {\r
@@ -124,7 +125,9 @@ public class Finder extends Panel implements ActionListener
   {\r
     createNewGroup.setEnabled(false);\r
 \r
-    String searchString = textfield.getText().toUpperCase();\r
+    String searchString = textfield.getText();\r
+    if(!caseSensitive.getState())\r
+      searchString = searchString.toUpperCase();\r
 \r
     com.stevesoft.pat.Regex regex = new com.stevesoft.pat.Regex(searchString);\r
 \r
@@ -182,7 +185,9 @@ public class Finder extends Panel implements ActionListener
         continue;\r
       }\r
 \r
-      item = seq.getSequence().toUpperCase();\r
+      item = seq.getSequence();\r
+      if(!caseSensitive.getState())\r
+        item = item.toUpperCase();\r
 \r
       if (selection != null && selection.getEndRes() < av.alignment.getWidth())\r
       {\r
@@ -297,7 +302,7 @@ public class Finder extends Panel implements ActionListener
   Panel jPanel1 = new Panel();\r
   GridLayout gridLayout1 = new GridLayout();\r
   protected Button createNewGroup = new Button();\r
-\r
+  Checkbox caseSensitive = new Checkbox();\r
 \r
   private void jbInit() throws Exception {\r
       jLabel1.setFont(new java.awt.Font("Verdana", 0, 12));\r
@@ -329,10 +334,13 @@ public class Finder extends Panel implements ActionListener
       createNewGroup.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));\r
       createNewGroup.setLabel("New Feature");\r
       createNewGroup.addActionListener(this);\r
-      jPanel1.add(findNext, null);\r
+    caseSensitive.setLabel("Match Case");\r
+    caseSensitive.setBounds(new Rectangle(40, 49, 126, 23));\r
+    jPanel1.add(findNext, null);\r
       jPanel1.add(findAll, null);\r
       jPanel1.add(createNewGroup, null);\r
-      this.add(textfield, null);\r
+    this.add(caseSensitive);\r
+    this.add(textfield, null);\r
       this.add(jLabel1, null);\r
       this.add(jPanel1, null);\r
   }\r
index 6b8df4b..49a9656 100755 (executable)
@@ -153,7 +153,10 @@ public class Finder extends GFinder
     {\r
         createNewGroup.setEnabled(false);\r
 \r
-        String searchString = textfield.getText().toUpperCase().trim();\r
+        String searchString = textfield.getText().trim();\r
+        if(!caseSensitive.isSelected())\r
+          searchString = searchString.toUpperCase();\r
+\r
         if(searchString.length()<1)\r
           return;\r
 \r
@@ -212,7 +215,9 @@ public class Finder extends GFinder
                 continue;\r
             }\r
 \r
-            item = seq.getSequence().toUpperCase();\r
+            item = seq.getSequence();\r
+            if(!caseSensitive.isSelected())\r
+              item = item.toUpperCase();\r
 \r
             if ((selection != null) &&\r
                     (selection.getEndRes() < av.alignment.getWidth()-1))\r
index c0b5d0e..c3ed168 100755 (executable)
@@ -24,6 +24,7 @@ import javax.swing.*;
 import javax.swing.event.*;\r
 import jalview.io.FormatAdapter;\r
 import jalview.datamodel.SequenceI;\r
+import java.awt.BorderLayout;\r
 \r
 public class GFinder\r
     extends JPanel\r
@@ -41,8 +42,8 @@ public class GFinder
   JPanel jPanel3 = new JPanel();\r
   JPanel jPanel4 = new JPanel();\r
   BorderLayout borderLayout2 = new BorderLayout();\r
-  JPanel jPanel5 = new JPanel();\r
   JPanel jPanel6 = new JPanel();\r
+  protected JCheckBox caseSensitive = new JCheckBox();\r
   public GFinder()\r
   {\r
     try\r
@@ -117,6 +118,8 @@ public class GFinder
     jPanel4.setLayout(borderLayout2);\r
     jPanel2.setPreferredSize(new Dimension(10, 1));\r
     jPanel3.setPreferredSize(new Dimension(10, 1));\r
+    caseSensitive.setHorizontalAlignment(SwingConstants.LEFT);\r
+    caseSensitive.setText("Match Case");\r
     jPanel1.add(findNext, null);\r
     jPanel1.add(findAll, null);\r
     jPanel1.add(createNewGroup, null);\r
@@ -126,9 +129,9 @@ public class GFinder
     this.add(jPanel3, java.awt.BorderLayout.NORTH);\r
     this.add(jPanel4, java.awt.BorderLayout.CENTER);\r
     jPanel4.add(jScrollPane1, java.awt.BorderLayout.CENTER);\r
-    jPanel4.add(jPanel5, java.awt.BorderLayout.SOUTH);\r
-    jPanel4.add(jPanel6, java.awt.BorderLayout.NORTH);\r
     jScrollPane1.getViewport().add(textfield);\r
+    jPanel4.add(jPanel6, java.awt.BorderLayout.NORTH);\r
+    jPanel4.add(caseSensitive, java.awt.BorderLayout.SOUTH);\r
   }\r
 \r
   protected void findNext_actionPerformed(ActionEvent e)\r