X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FCrossRefAction.java;h=2ada4d2d7a2a70167bc11a2afb1272de54ab546d;hb=2e57729baa0bc97fc03ab1fb8eb4dbc1a12f3d9a;hp=673bcc0db15ea75b2d5317038f0f3b220d5e5930;hpb=2014b8df8e4cb0af7d5240b1839c70f1fdcda3fd;p=jalview.git diff --git a/src/jalview/gui/CrossRefAction.java b/src/jalview/gui/CrossRefAction.java index 673bcc0..2ada4d2 100644 --- a/src/jalview/gui/CrossRefAction.java +++ b/src/jalview/gui/CrossRefAction.java @@ -39,6 +39,7 @@ import jalview.util.DBRefUtils; import jalview.util.MapList; import jalview.util.MappingUtils; import jalview.util.MessageManager; +import jalview.viewmodel.seqfeatures.FeatureRendererModel; import jalview.ws.SequenceFetcher; import java.util.ArrayList; @@ -111,6 +112,13 @@ public class CrossRefAction implements Runnable FeatureSettingsModelI featureColourScheme = new SequenceFetcher() .getFeatureColourScheme(source); + if (dna && AlignmentUtils.looksLikeEnsembl(alignment)) + { + // override default featureColourScheme so products have Ensembl variant colours + featureColourScheme = new SequenceFetcher() + .getFeatureColourScheme(DBRefSource.ENSEMBL); + } + AlignmentI xrefsAlignment = makeCrossReferencesAlignment(dataset, xrefs); if (!dna) @@ -170,17 +178,17 @@ public class CrossRefAction implements Runnable .isShowSequenceFeatures(); newFrame.setShowSeqFeatures(showSequenceFeatures); copyThis.setShowSeqFeatures(showSequenceFeatures); - FeatureRenderer myFeatureStyling = alignFrame.alignPanel + FeatureRendererModel myFeatureStyling = alignFrame.alignPanel .getSeqPanel().seqCanvas.getFeatureRenderer(); /* * copy feature rendering settings to split frame */ - FeatureRenderer fr1 = newFrame.alignPanel.getSeqPanel().seqCanvas + FeatureRendererModel fr1 = newFrame.alignPanel.getSeqPanel().seqCanvas .getFeatureRenderer(); fr1.transferSettings(myFeatureStyling); fr1.findAllFeatures(true); - FeatureRenderer fr2 = copyThis.alignPanel.getSeqPanel().seqCanvas + FeatureRendererModel fr2 = copyThis.alignPanel.getSeqPanel().seqCanvas .getFeatureRenderer(); fr2.transferSettings(myFeatureStyling); fr2.findAllFeatures(true); @@ -292,8 +300,8 @@ public class CrossRefAction implements Runnable */ String[] divisionsArray = ensemblDivisions .toArray(new String[ensemblDivisions.size()]); - DBRefEntry[] seqRefs = seq.getDBRefs(); - DBRefEntry[] directEnsemblRefs = DBRefUtils.selectRefs(seqRefs, + List seqRefs = seq.getDBRefs(); + List directEnsemblRefs = DBRefUtils.selectRefs(seqRefs, divisionsArray); if (directEnsemblRefs != null) { @@ -313,8 +321,8 @@ public class CrossRefAction implements Runnable { if (dbref.getMap() != null && dbref.getMap().getTo() != null) { - DBRefEntry[] dbrefs = dbref.getMap().getTo().getDBRefs(); - DBRefEntry[] indirectEnsemblRefs = DBRefUtils.selectRefs(dbrefs, + List dbrefs = dbref.getMap().getTo().getDBRefs(); + List indirectEnsemblRefs = DBRefUtils.selectRefs(dbrefs, divisionsArray); if (indirectEnsemblRefs != null) {