X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGFinder.java;h=c3ed1686be5bac42c8f4d3f6499e2edc8a9e764b;hb=7bc213bae5828287329a3490faba291706599b03;hp=32d2f24683c90ca83b6c1cba11133c1e54c3805e;hpb=f18cbb26b5cd3d800b4d0317e544ae4e4075a4c3;p=jalview.git diff --git a/src/jalview/jbgui/GFinder.java b/src/jalview/jbgui/GFinder.java index 32d2f24..c3ed168 100755 --- a/src/jalview/jbgui/GFinder.java +++ b/src/jalview/jbgui/GFinder.java @@ -22,6 +22,9 @@ import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; +import jalview.io.FormatAdapter; +import jalview.datamodel.SequenceI; +import java.awt.BorderLayout; public class GFinder extends JPanel @@ -39,8 +42,8 @@ public class GFinder JPanel jPanel3 = new JPanel(); JPanel jPanel4 = new JPanel(); BorderLayout borderLayout2 = new BorderLayout(); - JPanel jPanel5 = new JPanel(); JPanel jPanel6 = new JPanel(); + protected JCheckBox caseSensitive = new JCheckBox(); public GFinder() { try @@ -86,7 +89,7 @@ public class GFinder createNewGroup.setFont(new java.awt.Font("Verdana", 0, 12)); createNewGroup.setToolTipText(""); createNewGroup.setMargin(new Insets(0, 0, 0, 0)); - createNewGroup.setText("Create new group"); + createNewGroup.setText("New Feature"); createNewGroup.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -115,6 +118,8 @@ public class GFinder jPanel4.setLayout(borderLayout2); jPanel2.setPreferredSize(new Dimension(10, 1)); jPanel3.setPreferredSize(new Dimension(10, 1)); + caseSensitive.setHorizontalAlignment(SwingConstants.LEFT); + caseSensitive.setText("Match Case"); jPanel1.add(findNext, null); jPanel1.add(findAll, null); jPanel1.add(createNewGroup, null); @@ -124,9 +129,9 @@ public class GFinder this.add(jPanel3, java.awt.BorderLayout.NORTH); this.add(jPanel4, java.awt.BorderLayout.CENTER); jPanel4.add(jScrollPane1, java.awt.BorderLayout.CENTER); - jPanel4.add(jPanel5, java.awt.BorderLayout.SOUTH); - jPanel4.add(jPanel6, java.awt.BorderLayout.NORTH); jScrollPane1.getViewport().add(textfield); + jPanel4.add(jPanel6, java.awt.BorderLayout.NORTH); + jPanel4.add(caseSensitive, java.awt.BorderLayout.SOUTH); } protected void findNext_actionPerformed(ActionEvent e) @@ -155,17 +160,23 @@ public class GFinder public void textfield_caretUpdate(CaretEvent e) { - if (textfield.getText().indexOf("\t") > -1) + if (textfield.getText().indexOf(">") > -1) { SwingUtilities.invokeLater(new Runnable() { public void run() { - String text = textfield.getText(); - text = text.substring(text.lastIndexOf("\t") + 1).trim(); - text = jalview.analysis.AlignSeq.extractGaps( - jalview.util.Comparison.GapChars, text); - textfield.setText(text); + String str = textfield.getText(); + SequenceI[] sequences = null; + try{sequences = new FormatAdapter().readFile(str, "Paste", "FASTA");} + catch(Exception ex){} + if(sequences!=null && sequences.length>0) + { + str = jalview.analysis.AlignSeq.extractGaps( + jalview.util.Comparison.GapChars, sequences[0].getSequence()); + + textfield.setText(str); + } } }); }