JAL-3949 - refactor logging from jalview.bin.Cache to jalview.bin.Console
[jalview.git] / src / jalview / gui / AlignViewport.java
index 91b5518..092d7e7 100644 (file)
@@ -29,6 +29,7 @@ import jalview.api.FeatureSettingsModelI;
 import jalview.api.FeaturesDisplayedI;
 import jalview.api.ViewStyleI;
 import jalview.bin.Cache;
+import jalview.bin.Console;
 import jalview.commands.CommandI;
 import jalview.datamodel.AlignedCodonFrame;
 import jalview.datamodel.Alignment;
@@ -59,7 +60,6 @@ import java.awt.FontMetrics;
 import java.awt.Rectangle;
 import java.util.ArrayList;
 import java.util.Hashtable;
-import java.util.Iterator;
 import java.util.List;
 
 import javax.swing.JInternalFrame;
@@ -79,9 +79,9 @@ public class AlignViewport extends AlignmentViewport
 
   boolean antiAlias = false;
 
-  private Rectangle explodedGeometry;
+  private Rectangle explodedGeometry = null;
 
-  private String viewName;
+  private String viewName = null;
 
   /*
    * Flag set true on the view that should 'gather' multiple views of the same
@@ -124,14 +124,14 @@ public class AlignViewport extends AlignmentViewport
     sequenceSetID = seqsetid;
     viewId = viewid;
     // TODO remove these once 2.4.VAMSAS release finished
-    if (Cache.log != null && Cache.log.isDebugEnabled() && seqsetid != null)
+    if (seqsetid != null)
     {
-      Cache.log.debug(
+      Console.debug(
               "Setting viewport's sequence set id : " + sequenceSetID);
     }
-    if (Cache.log != null && Cache.log.isDebugEnabled() && viewId != null)
+    if (viewId != null)
     {
-      Cache.log.debug("Setting viewport's view id : " + viewId);
+      Console.debug("Setting viewport's view id : " + viewId);
     }
     init();
 
@@ -186,14 +186,14 @@ public class AlignViewport extends AlignmentViewport
     sequenceSetID = seqsetid;
     viewId = viewid;
     // TODO remove these once 2.4.VAMSAS release finished
-    if (Cache.log != null && Cache.log.isDebugEnabled() && seqsetid != null)
+    if (seqsetid != null)
     {
-      Cache.log.debug(
+      Console.debug(
               "Setting viewport's sequence set id : " + sequenceSetID);
     }
-    if (Cache.log != null && Cache.log.isDebugEnabled() && viewId != null)
+    if (viewId != null)
     {
-      Cache.log.debug("Setting viewport's view id : " + viewId);
+      Console.debug("Setting viewport's view id : " + viewId);
     }
 
     if (hiddenColumns != null)
@@ -208,7 +208,7 @@ public class AlignViewport extends AlignmentViewport
    */
   private void applyViewProperties()
   {
-    antiAlias = Cache.getDefault("ANTI_ALIAS", false);
+    antiAlias = Cache.getDefault("ANTI_ALIAS", true);
 
     viewStyle.setShowJVSuffix(Cache.getDefault("SHOW_JVSUFFIX", true));
     setShowAnnotation(Cache.getDefault("SHOW_ANNOTATIONS", true));
@@ -446,31 +446,6 @@ public class AlignViewport extends AlignmentViewport
   }
 
   /**
-   * returns the visible column regions of the alignment
-   * 
-   * @param selectedRegionOnly
-   *          true to just return the contigs intersecting with the selected
-   *          area
-   * @return
-   */
-  public Iterator<int[]> getViewAsVisibleContigs(boolean selectedRegionOnly)
-  {
-    int start = 0;
-    int end = 0;
-    if (selectedRegionOnly && selectionGroup != null)
-    {
-      start = selectionGroup.getStartRes();
-      end = selectionGroup.getEndRes() + 1;
-    }
-    else
-    {
-      end = alignment.getWidth();
-    }
-    return (alignment.getHiddenColumns().getVisContigsIterator(start, end,
-            false));
-  }
-
-  /**
    * get hash of undo and redo list for the alignment
    * 
    * @return long[] { historyList.hashCode, redoList.hashCode };
@@ -620,7 +595,7 @@ public class AlignViewport extends AlignmentViewport
     // calculator.getRegisteredWorkersOfClass(settings.getWorkerClass())
     if (needsUpdate)
     {
-      Cache.log.debug("trigger update for " + calcId);
+      Console.debug("trigger update for " + calcId);
     }
   }
 
@@ -850,7 +825,7 @@ public class AlignViewport extends AlignmentViewport
     try
     {
       newAlignFrame.setMaximum(
-              jalview.bin.Cache.getDefault("SHOW_FULLSCREEN", false));
+              Cache.getDefault("SHOW_FULLSCREEN", false));
     } catch (java.beans.PropertyVetoException ex)
     {
     }
@@ -921,10 +896,9 @@ public class AlignViewport extends AlignmentViewport
     if (ap != null)
     {
       // modify GUI elements to reflect geometry change
-      Dimension idw = getAlignPanel().getIdPanel().getIdCanvas()
-              .getPreferredSize();
+      Dimension idw = ap.getIdPanel().getIdCanvas().getPreferredSize();
       idw.width = i;
-      getAlignPanel().getIdPanel().getIdCanvas().setPreferredSize(idw);
+      ap.getIdPanel().getIdCanvas().setPreferredSize(idw);
     }
   }
 
@@ -1049,8 +1023,8 @@ public class AlignViewport extends AlignmentViewport
     
     FeatureRenderer fr = getAlignPanel().getSeqPanel().seqCanvas
             .getFeatureRenderer();
-    List<String> origRenderOrder = new ArrayList(),
-            origGroups = new ArrayList();
+    List<String> origRenderOrder = new ArrayList<>();
+    List<String> origGroups = new ArrayList<>();
     // preserve original render order - allows differentiation between user configured colours and autogenerated ones
     origRenderOrder.addAll(fr.getRenderOrder());
     origGroups.addAll(fr.getFeatureGroups());
@@ -1061,7 +1035,7 @@ public class AlignViewport extends AlignmentViewport
     if (!mergeOnly)
     {
       // only clear displayed features if we are mergeing
-      displayed.clear();
+      // displayed.clear();
     }
     // TODO this clears displayed.featuresRegistered - do we care?
     //
@@ -1093,6 +1067,10 @@ public class AlignViewport extends AlignmentViewport
         {
           displayed.setVisible(type);
         }
+        else if (featureSettings.isFeatureHidden(type))
+        {
+          displayed.setHidden(type);
+        }
       }
     }
 
@@ -1121,6 +1099,8 @@ public class AlignViewport extends AlignmentViewport
       fr.orderFeatures(featureSettings);
     }
     fr.setTransparency(featureSettings.getTransparency());
+
+    fr.notifyFeaturesChanged();
   }
 
   public String getViewName()