From 35426f122a3db9e75360f2692c26a5452ec54460 Mon Sep 17 00:00:00 2001 From: amwaterhouse Date: Mon, 13 Nov 2006 11:12:07 +0000 Subject: [PATCH] Save text colours --- src/jalview/gui/Jalview2XML.java | 57 ++++++++++++++++++++++++----------- src/jalview/gui/Jalview2XML_V1.java | 10 +++++- 2 files changed, 49 insertions(+), 18 deletions(-) diff --git a/src/jalview/gui/Jalview2XML.java b/src/jalview/gui/Jalview2XML.java index 5b0ec15..0f08896 100755 --- a/src/jalview/gui/Jalview2XML.java +++ b/src/jalview/gui/Jalview2XML.java @@ -215,9 +215,11 @@ public class Jalview2XML //SAVE SEQUENCES int id = 0; + jalview.datamodel.SequenceI jds; for (int i = 0; i < jal.getHeight(); i++) { - id = jal.getSequenceAt(i).hashCode(); + jds = jal.getSequenceAt(i); + id = jds.hashCode(); if(seqRefIds.get(id+"")!=null) { @@ -227,14 +229,14 @@ public class Jalview2XML { vamsasSeq = new Sequence(); vamsasSeq.setId(id + ""); - vamsasSeq.setName(jal.getSequenceAt(i).getName()); - vamsasSeq.setSequence(jal.getSequenceAt(i).getSequence()); - vamsasSeq.setDescription(jal.getSequenceAt(i).getDescription()); + vamsasSeq.setName(jds.getName()); + vamsasSeq.setSequence(jds.getSequence()); + vamsasSeq.setDescription(jds.getDescription()); - if (jal.getSequenceAt(i).getDatasetSequence().getDBRef() != null) + if (jds.getDatasetSequence().getDBRef() != null) { jalview.datamodel.DBRefEntry[] dbrefs = - jal.getSequenceAt(i).getDatasetSequence().getDBRef(); + jds.getDatasetSequence().getDBRef(); for (int d = 0; d < dbrefs.length; d++) { @@ -251,16 +253,15 @@ public class Jalview2XML } jseq = new JSeq(); - jseq.setStart(jal.getSequenceAt(i).getStart()); - jseq.setEnd(jal.getSequenceAt(i).getEnd()); - jseq.setColour(jal.getSequenceAt(i).getColor().getRGB()); + jseq.setStart(jds.getStart()); + jseq.setEnd(jds.getEnd()); + jseq.setColour( av.getSequenceColour(jds).getRGB()); jseq.setId(id); if (av.hasHiddenRows) { - jseq.setHidden(av.alignment.getHiddenSequences().isHidden( - jal.getSequenceAt(i))); + jseq.setHidden(av.alignment.getHiddenSequences().isHidden(jds)); if(jal.getSequenceAt(i).getHiddenSequences()!=null) { @@ -277,10 +278,10 @@ public class Jalview2XML } - if(jal.getSequenceAt(i).getDatasetSequence().getSequenceFeatures()!=null) + if(jds.getDatasetSequence().getSequenceFeatures()!=null) { jalview.datamodel.SequenceFeature[] sf - = jal.getSequenceAt(i).getDatasetSequence().getSequenceFeatures(); + = jds.getDatasetSequence().getSequenceFeatures(); int index = 0; while(index < sf.length) { @@ -322,9 +323,9 @@ public class Jalview2XML } } - if(jal.getSequenceAt(i).getDatasetSequence().getPDBId()!=null) + if(jds.getDatasetSequence().getPDBId()!=null) { - Enumeration en = jal.getSequenceAt(i).getDatasetSequence().getPDBId().elements(); + Enumeration en = jds.getDatasetSequence().getPDBId().elements(); while(en.hasMoreElements()) { Pdbids pdb = new Pdbids(); @@ -568,6 +569,9 @@ public class Jalview2XML groups[i].setDisplayBoxes(sg.getDisplayBoxes()); groups[i].setDisplayText(sg.getDisplayText()); groups[i].setColourText(sg.getColourText()); + groups[i].setTextCol1(sg.textColour.getRGB()); + groups[i].setTextCol2(sg.textColour2.getRGB()); + groups[i].setTextColThreshold(sg.thresholdTextColour); for (int s = 0; s < sg.getSize(false); s++) { @@ -668,6 +672,10 @@ public class Jalview2XML view.setShowSequenceFeatures(av.showSequenceFeatures); view.setShowText(av.getShowText()); view.setWrapAlignment(av.getWrapAlignment()); + view.setTextCol1(av.textColour.getRGB()); + view.setTextCol2(av.textColour2.getRGB()); + view.setTextColThreshold(av.thresholdTextColour); + if(av.featuresDisplayed!=null) { @@ -1034,7 +1042,6 @@ public class Jalview2XML ArrayList tmpseqs = new ArrayList(); - boolean multipleView = false; JSeq[] JSEQ = object.getJalviewModelSequence().getJSeq(); @@ -1054,12 +1061,12 @@ public class Jalview2XML jseq.setDescription(vamsasSeq[i].getDescription()); jseq.setStart(JSEQ[i].getStart()); jseq.setEnd(JSEQ[i].getEnd()); - jseq.setColor(new java.awt.Color(JSEQ[i].getColour())); seqRefIds.put(vamsasSeq[i].getId(), jseq); tmpseqs.add( jseq ); } + if (JSEQ[i].getHidden()) { if (hiddenSeqs == null) @@ -1284,6 +1291,10 @@ public class Jalview2XML sg.setOutlineColour(new java.awt.Color( groups[i].getOutlineColour())); + sg.textColour = new java.awt.Color(groups[i].getTextCol1()); + sg.textColour2 = new java.awt.Color(groups[i].getTextCol2()); + sg.thresholdTextColour = groups[i].getTextColThreshold(); + if (groups[i].getConsThreshold() != 0) { jalview.analysis.Conservation c = new jalview.analysis.Conservation("All", @@ -1308,6 +1319,14 @@ public class Jalview2XML af.setFileName(file, "Jalview"); + for (int i = 0; i < JSEQ.length; i++) + { + af.viewport.setSequenceColour( + af.viewport.alignment.getSequenceAt(i), + new java.awt.Color( + JSEQ[i].getColour())); + } + //If we just load in the same jar file again, the sequenceSetId //will be the same, and we end up with multiple references //to the same sequenceSet. We must modify this id on load @@ -1408,6 +1427,10 @@ public class Jalview2XML af.viewport.setShowText(view.getShowText()); + af.viewport.textColour = new java.awt.Color(view.getTextCol1()); + af.viewport.textColour2 = new java.awt.Color(view.getTextCol2()); + af.viewport.thresholdTextColour = view.getTextColThreshold(); + ColourSchemeI cs = null; diff --git a/src/jalview/gui/Jalview2XML_V1.java b/src/jalview/gui/Jalview2XML_V1.java index a036988..1e479fb 100755 --- a/src/jalview/gui/Jalview2XML_V1.java +++ b/src/jalview/gui/Jalview2XML_V1.java @@ -182,7 +182,6 @@ public class Jalview2XML_V1 vamsasSeq[i].getSequence()); jseqs[i].setStart(JSEQ[i].getStart()); jseqs[i].setEnd(JSEQ[i].getEnd()); - jseqs[i].setColor(new java.awt.Color(JSEQ[i].getColour())); seqids.add(jseqs[i]); } @@ -269,6 +268,15 @@ public class Jalview2XML_V1 AlignFrame af = new AlignFrame(al, view.getWidth(), view.getHeight()); + for (int i = 0; i < JSEQ.length; i++) + { + af.viewport.setSequenceColour( + af.viewport.alignment.getSequenceAt(i), + new java.awt.Color( + JSEQ[i].getColour())); + } + + // af.changeColour() ); ///////////////////////// -- 1.7.10.2