X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FFinder.java;h=869755280b39292b96b631e045839322191e7cd1;hb=4059c82f431d3f98931b290d9a72da2a54a0fc95;hp=5d800ce70b0b4a13599658e39a5ebc24237f9cab;hpb=8302463adc038c6385cde595bcb3a7ef5b2fd07c;p=jalview.git diff --git a/src/jalview/gui/Finder.java b/src/jalview/gui/Finder.java index 5d800ce..8697552 100755 --- a/src/jalview/gui/Finder.java +++ b/src/jalview/gui/Finder.java @@ -1,6 +1,6 @@ /* * Jalview - A Sequence Alignment Editor and Viewer - * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -114,31 +114,29 @@ public class Finder extends GFinder panel.add(label, BorderLayout.NORTH); panel.add(textinput, BorderLayout.SOUTH); - int reply = JOptionPane.showInternalConfirmDialog(Desktop.desktop, - panel, "New Sequence Feature Name", - JOptionPane.OK_CANCEL_OPTION ); - if(reply != JOptionPane.OK_OPTION) - return; + SequenceI [] seqs = new SequenceI[searchResults.getSize()]; + SequenceFeature [] features = new SequenceFeature[searchResults.getSize()]; + for (int i = 0; i < searchResults.getSize(); i ++ ) { - SequenceI seq = searchResults.getResultSequence(i); + seqs[i] = searchResults.getResultSequence(i).getDatasetSequence(); - SequenceFeature sf = new SequenceFeature(textinput.getText(), + features[i] = new SequenceFeature(textinput.getText(), "Search Results", null, searchResults.getResultStart(i), - searchResults.getResultEnd(i)); - - ap.seqPanel.seqCanvas.getFeatureRenderer().addNewFeature( - textinput.getText(), new Color(60,160,115)); - - seq.getDatasetSequence().addSequenceFeature(sf); + searchResults.getResultEnd(i), + "Search Results"); } - ap.alignFrame.sequenceFeatures.setSelected(true); - ap.alignFrame.sequenceFeatures_actionPerformed(null); - ap.highlightSearchResults(null); + if( ap.seqPanel.seqCanvas.getFeatureRenderer() + .createNewFeatures(seqs, features)) + { + ap.alignFrame.showSeqFeatures.setSelected(true); + av.setShowSequenceFeatures(true); + ap.highlightSearchResults(null); + } } /** @@ -150,7 +148,10 @@ public class Finder extends GFinder { createNewGroup.setEnabled(false); - String searchString = textfield.getText().toUpperCase().trim(); + String searchString = textfield.getText().trim(); + if(!caseSensitive.isSelected()) + searchString = searchString.toUpperCase(); + if(searchString.length()<1) return; @@ -167,7 +168,7 @@ public class Finder extends GFinder { int res = Integer.parseInt(searchString); found = true; - if (av.getSelectionGroup() == null || av.getSelectionGroup().getSize() < 1) + if (av.getSelectionGroup() == null || av.getSelectionGroup().getSize(false) < 1) { seq = (Sequence) av.getAlignment().getSequenceAt(0); } @@ -183,16 +184,6 @@ public class Finder extends GFinder } /////////////////////////////////////////////// - Color[] newColors = new Color[24]; - - for (int i = 0; i < 24; i++) - { - newColors[i] = new Color(60, 160, 115); - } - - jalview.schemes.UserColourScheme ucs = new jalview.schemes.UserColourScheme(newColors); - - //SG searchGroup = new SuperGroup(searchString, ucs, true, true, false); int end = av.alignment.getHeight(); @@ -200,7 +191,7 @@ public class Finder extends GFinder if (selection != null) { - if ((selection.getSize() < 1) || + if ((selection.getSize(false) < 1) || ((selection.getEndRes() - selection.getStartRes()) < 2)) { selection = null; @@ -211,7 +202,7 @@ public class Finder extends GFinder { seq = (Sequence) av.alignment.getSequenceAt(seqIndex); - if ((selection != null) && !selection.sequences.contains(seq)) + if ((selection != null) && !selection.getSequences(false).contains(seq)) { seqIndex++; resIndex = 0; @@ -219,7 +210,9 @@ public class Finder extends GFinder continue; } - item = seq.getSequence().toUpperCase(); + item = seq.getSequence(); + if(!caseSensitive.isSelected()) + item = item.toUpperCase(); if ((selection != null) && (selection.getEndRes() < av.alignment.getWidth()-1))