JAL-3253 jalview.bin.Instance handles all singleton instances -
[jalview.git] / src / jalview / gui / CrossRefAction.java
index 285e574..7570858 100644 (file)
@@ -25,6 +25,7 @@ import jalview.analysis.CrossRef;
 import jalview.api.AlignmentViewPanel;
 import jalview.api.FeatureSettingsModelI;
 import jalview.bin.Cache;
+import jalview.bin.Instance;
 import jalview.datamodel.Alignment;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.DBRefEntry;
@@ -176,10 +177,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 +277,15 @@ public class CrossRefAction implements Runnable
       return;
     }
     
-    Set<String> ensemblDivisions = new EnsemblInfo().getDivisions();
+    Set<String> 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<DBRefEntry> seqRefs = seq.getDBRefs();
+    List<DBRefEntry> directEnsemblRefs = DBRefUtils.selectRefs(seqRefs,
             divisionsArray);
     if (directEnsemblRefs != null)
     {
@@ -300,8 +305,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<DBRefEntry> dbrefs = dbref.getMap().getTo().getDBRefs();
+        List<DBRefEntry> indirectEnsemblRefs = DBRefUtils.selectRefs(dbrefs,
                 divisionsArray);
         if (indirectEnsemblRefs != null)
         {
@@ -433,7 +438,7 @@ public class CrossRefAction implements Runnable
             .setGapCharacter(alignFrame.viewport.getGapCharacter());
 
     StructureSelectionManager ssm = StructureSelectionManager
-            .getStructureSelectionManager(Desktop.instance);
+            .getStructureSelectionManager(Instance.getDesktop());
 
     /*
      * register any new mappings for sequence mouseover etc