X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FFeatureRenderer.java;h=e11f1b484f1aea73fa822b58b35a3a61b64063df;hb=dfa04e77181fccfa6229ffef1591fc9c622d9b39;hp=0a40439d6395bdbec7b9042cf4af13c1cba6f75a;hpb=2f4f1d8fb6878271b64f327bc58c895f458137af;p=jalview.git diff --git a/src/jalview/appletgui/FeatureRenderer.java b/src/jalview/appletgui/FeatureRenderer.java index 0a40439..e11f1b4 100644 --- a/src/jalview/appletgui/FeatureRenderer.java +++ b/src/jalview/appletgui/FeatureRenderer.java @@ -79,31 +79,41 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer } } - public void transferSettings(FeatureRenderer fr) + public void transferSettings(jalview.api.FeatureRenderer _fr) { - renderOrder = fr.renderOrder; - featureGroups = fr.featureGroups; - featureColours = fr.featureColours; - transparency = fr.transparency; - if (av != null && fr.av != null && fr.av != av) + if (_fr instanceof FeatureRenderer) { - if (fr.av.featuresDisplayed != null) + FeatureRenderer fr = (FeatureRenderer) _fr; + renderOrder = fr.renderOrder; + featureGroups = fr.featureGroups; + featureColours = fr.featureColours; + transparency = fr.transparency; + if (av != null && fr.av != null && fr.av != av) { - if (av.featuresDisplayed == null) - { - av.featuresDisplayed = new Hashtable(); - } - else + if (fr.av.featuresDisplayed != null) { - av.featuresDisplayed.clear(); - } - Enumeration en = fr.av.featuresDisplayed.keys(); - while (en.hasMoreElements()) - { - av.featuresDisplayed.put(en.nextElement(), Boolean.TRUE); + if (av.featuresDisplayed == null) + { + av.featuresDisplayed = new Hashtable(); + } + else + { + av.featuresDisplayed.clear(); + } + Enumeration en = fr.av.featuresDisplayed.keys(); + while (en.hasMoreElements()) + { + av.featuresDisplayed.put(en.nextElement(), Boolean.TRUE); + } } } } + else + { + throw new Error( + "Implementation error: cannot port feature settings from implementation of type " + + _fr.getClass() + " to " + getClass()); + } } static String lastFeatureAdded;