X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FCrossRefAction.java;h=3f3c2985083a43c9ca09227f3cfcb98abe25d605;hb=47806656477f02076cac0467c7374e231a59ab7e;hp=21a0a84cb97cbe1f559e3602fe71b4b2f9ef2a3f;hpb=353109c11d706b29ae5bc9606f0e12223aa45a98;p=jalview.git diff --git a/src/jalview/gui/CrossRefAction.java b/src/jalview/gui/CrossRefAction.java index 21a0a84..3f3c298 100644 --- a/src/jalview/gui/CrossRefAction.java +++ b/src/jalview/gui/CrossRefAction.java @@ -34,7 +34,6 @@ import jalview.datamodel.SequenceI; import jalview.ext.ensembl.EnsemblInfo; import jalview.ext.ensembl.EnsemblMap; import jalview.io.gff.SequenceOntologyI; -import jalview.structure.StructureSelectionManager; import jalview.util.DBRefUtils; import jalview.util.MapList; import jalview.util.MappingUtils; @@ -108,7 +107,8 @@ public class CrossRefAction implements Runnable /* * get display scheme (if any) to apply to features */ - FeatureSettingsModelI featureColourScheme = new SequenceFetcher() + FeatureSettingsModelI featureColourScheme = SequenceFetcher + .getInstance() .getFeatureColourScheme(source); AlignmentI xrefsAlignment = makeCrossReferencesAlignment(dataset, @@ -176,10 +176,14 @@ public class CrossRefAction implements Runnable /* * copy feature rendering settings to split frame */ - newFrame.alignPanel.getSeqPanel().seqCanvas.getFeatureRenderer() - .transferSettings(myFeatureStyling); - copyThis.alignPanel.getSeqPanel().seqCanvas.getFeatureRenderer() - .transferSettings(myFeatureStyling); + FeatureRenderer fr1 = newFrame.alignPanel.getSeqPanel().seqCanvas + .getFeatureRenderer(); + fr1.transferSettings(myFeatureStyling); + fr1.findAllFeatures(true); + FeatureRenderer fr2 = copyThis.alignPanel.getSeqPanel().seqCanvas + .getFeatureRenderer(); + fr2.transferSettings(myFeatureStyling); + fr2.findAllFeatures(true); /* * apply 'database source' feature configuration @@ -272,15 +276,15 @@ public class CrossRefAction implements Runnable return; } - Set ensemblDivisions = new EnsemblInfo().getDivisions(); + Set ensemblDivisions = EnsemblInfo.getDivisions(); /* * first look for direct dbrefs from sequence to Ensembl */ 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) { @@ -300,8 +304,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) { @@ -336,7 +340,7 @@ public class CrossRefAction implements Runnable /* * hack: ignore cross-references to Ensembl protein ids - * (can't fetch chromosomal mapping for these) + * (or use map/translation perhaps?) * todo: is there an equivalent in EnsemblGenomes? */ if (accession.startsWith("ENSP")) @@ -432,14 +436,12 @@ public class CrossRefAction implements Runnable copyAlignment .setGapCharacter(alignFrame.viewport.getGapCharacter()); - StructureSelectionManager ssm = StructureSelectionManager - .getStructureSelectionManager(Desktop.instance); - /* * register any new mappings for sequence mouseover etc * (will not duplicate any previously registered mappings) */ - ssm.registerMappings(dataset.getCodonFrames()); + Desktop.getStructureSelectionManager() + .registerMappings(dataset.getCodonFrames()); if (copyAlignment.getHeight() <= 0) {