X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAlignFrame.java;h=9751f464fdce6b1c21824bb9ea515119f7b3d3d0;hb=a853fae4d9d4dbc80e877741c017fca7ee80c59e;hp=a76106b5ffda293ace91e7263683cd9552c38b3f;hpb=8fc68b43785ce4b8a9d068fbec43e52b4e8cbf20;p=jalview.git diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index a76106b..9751f46 100755 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -44,7 +44,7 @@ import java.awt.dnd.*; * @version $Revision$ */ public class AlignFrame - extends GAlignFrame implements ClipboardOwner, DropTargetListener + extends GAlignFrame implements DropTargetListener { /** DOCUMENT ME!! */ public static final int NEW_WINDOW_WIDTH = 700; @@ -54,9 +54,6 @@ public class AlignFrame AlignmentPanel alignPanel; AlignViewport viewport; - Vector viewports = new Vector(); - Vector alignPanels = new Vector(); - /** DOCUMENT ME!! */ public String currentFileFormat = null; Stack historyList = new Stack(); @@ -72,7 +69,6 @@ public class AlignFrame public AlignFrame(AlignmentI al) { viewport = new AlignViewport(al); - viewports.add(viewport); this.setDropTarget(new java.awt.dnd.DropTarget(this, this)); @@ -88,7 +84,6 @@ public class AlignFrame } alignPanel = new AlignmentPanel(this, viewport); - alignPanels.add(alignPanel); String sortby = jalview.bin.Cache.getDefault("SORT_ALIGNMENT", "No sort"); @@ -195,11 +190,32 @@ public class AlignFrame return jalview.bin.Cache.getProperty("VERSION"); } + public FeatureRenderer getFeatureRenderer() + { + return alignPanel.seqPanel.seqCanvas.getFeatureRenderer(); + } + public void fetchSequence_actionPerformed(ActionEvent e) { new SequenceFetcher(this); } + + public void addFromFile_actionPerformed(ActionEvent e) + { + Desktop.instance.inputLocalFileMenuItem_actionPerformed(viewport); + } + + public void addFromText_actionPerformed(ActionEvent e) + { + Desktop.instance.inputTextboxMenuItem_actionPerformed(viewport); + } + + public void addFromURL_actionPerformed(ActionEvent e) + { + Desktop.instance.inputURLMenuItem_actionPerformed(viewport); + } + /** * DOCUMENT ME! * @@ -542,10 +558,6 @@ public class AlignFrame alignPanel.repaint(); } - public void lostOwnership(Clipboard clipboard, Transferable contents) - { - Desktop.jalviewClipboard = null; - } /** @@ -626,12 +638,16 @@ public class AlignFrame seqs[i].setDBRef(seq.getDBRef()); seqs[i].setSequenceFeatures(seq.getSequenceFeatures()); seqs[i].setDatasetSequence(seq.getDatasetSequence()); - + if(seq.getAnnotation()!=null) + { + for(int a=0; a>>This is a fix for the moment, until a better solution is found!!<<< - FeatureRenderer fr = af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer(); - fr.featureColours = alignPanel.seqPanel.seqCanvas.getFeatureRenderer().featureColours; - - if (title.startsWith("Copied sequences")) - { - newtitle = title; - } - else - { - newtitle = newtitle.concat("- from " + title); - } - - Desktop.addInternalFrame(af, newtitle, NEW_WINDOW_WIDTH, - NEW_WINDOW_HEIGHT); } else { + alignment = viewport.getAlignment(); + //!newAlignment for (int i = 0; i < sequences.length; i++) { + Sequence newseq = new Sequence(sequences[i].getName(), sequences[i].getSequence(), sequences[i].getStart(), sequences[i].getEnd()); - viewport.alignment.addSequence(newseq); - if(sequences[i].getDatasetSequence()==null) - { - //////////////////////////// - //Datset needs extension; - ///////////////////////////// - Sequence ds = new Sequence(sequences[i].getName(), - AlignSeq.extractGaps("-. ", sequences[i].getSequence()), - sequences[i].getStart(), - sequences[i].getEnd()); - newseq.setDatasetSequence(ds); - viewport.alignment.getDataset().addSequence(ds); - } - else - { - newseq.setDatasetSequence(sequences[i].getDatasetSequence()); - if(sequences[i].getDatasetSequence().getAnnotation()!=null) - { - for(int aa=0; aa>>This is a fix for the moment, until a better solution is found!!<<< + af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer().transferSettings( + alignPanel.seqPanel.seqCanvas.getFeatureRenderer()); + + + if (title.startsWith("Copied sequences")) + { + newtitle = title; + } + else + { + newtitle = newtitle.concat("- from " + title); + } + + Desktop.addInternalFrame(af, newtitle, NEW_WINDOW_WIDTH, + NEW_WINDOW_HEIGHT); + + } + + } catch (Exception ex) { @@ -801,7 +835,7 @@ public class AlignFrame //Jalview no longer allows deletion of residues. //Check here whether any residues are in selection area - if( sg.getEndRes()-sg.getStartRes() < viewport.alignment.getWidth()-1) + /* if( sg.getEndRes()-sg.getStartRes() < viewport.alignment.getWidth()-1) { for (int i = 0; i < sg.sequences.size(); i++) { @@ -822,7 +856,7 @@ public class AlignFrame j++; }while(j<=sg.getEndRes()); } - } + }*/ addHistoryItem(new HistoryItem("Delete Sequences", viewport.alignment, @@ -1207,8 +1241,8 @@ public class AlignFrame viewport.padGaps = padGapsMenuitem.isSelected(); - if (viewport.padGaps) - alignmentChanged(); + // if (viewport.padGaps) + alignmentChanged(); } /** @@ -1943,6 +1977,10 @@ public class AlignFrame public void autoCalculate_actionPerformed(ActionEvent e) { viewport.autoCalculateConsensus = autoCalculate.isSelected(); + if(viewport.autoCalculateConsensus) + { + alignmentChanged(); + } } @@ -2355,6 +2393,7 @@ public class AlignFrame { // Add any Multiple Sequence Alignment Services final JMenu msawsmenu = new JMenu("Alignment"); + final AlignFrame af = this; for (int i = 0, j = msaws.size(); i < j; i++) { final ext.vamsas.ServiceHandle sh = (ext.vamsas.ServiceHandle) msaws. @@ -2366,7 +2405,7 @@ public class AlignFrame { SequenceI[] msa = gatherSequencesForAlignment(); new jalview.ws.MsaWSClient(sh, title, msa, - false, true, viewport.getAlignment().getDataset()); + false, true, viewport.getAlignment().getDataset(), af); } @@ -2383,7 +2422,7 @@ public class AlignFrame { SequenceI[] msa = gatherSequencesForAlignment(); new jalview.ws.MsaWSClient(sh, title, msa, - true, true, viewport.getAlignment().getDataset()); + true, true, viewport.getAlignment().getDataset(), af); } @@ -2507,42 +2546,42 @@ public void showTranslation_actionPerformed(ActionEvent e) jalview.datamodel.AlignmentAnnotation[] annotations = viewport.alignment.getAlignmentAnnotation(); int a, aSize; - for (int i = 0; i < annotations.length; i++) + if(annotations!=null) { - - if (annotations[i].label.equals("Quality") || - annotations[i].label.equals("Conservation") || - annotations[i].label.equals("Consensus")) + for (int i = 0; i < annotations.length; i++) { - continue; - } - + if (annotations[i].label.equals("Quality") || + annotations[i].label.equals("Conservation") || + annotations[i].label.equals("Consensus")) + { + continue; + } - aSize = viewport.alignment.getWidth()/3; - jalview.datamodel.Annotation [] anots = - new jalview.datamodel.Annotation[aSize]; + aSize = viewport.alignment.getWidth() / 3; + jalview.datamodel.Annotation[] anots = + new jalview.datamodel.Annotation[aSize]; - for(a=0; a