JAL-2435 last lost commit e926a5d redone
[jalview.git] / src / jalview / gui / FontChooser.java
index 06f29e9..6cddcca 100755 (executable)
@@ -126,7 +126,8 @@ public class FontChooser extends GFontChooser
     {
       oldComplementFont = ((AlignViewport) ap.av.getCodingComplement())
               .getFont();
-      oldComplementSmooth = ((AlignViewport) ap.av.getCodingComplement()).antiAlias;
+      oldComplementSmooth = ((AlignViewport) ap.av
+              .getCodingComplement()).antiAlias;
       scaleAsCdna.setVisible(true);
       scaleAsCdna.setSelected(ap.av.isScaleProteinAsCdna());
       fontAsCdna.setVisible(true);
@@ -170,9 +171,9 @@ public class FontChooser extends GFontChooser
     fontStyle.setSelectedIndex(oldFont.getStyle());
 
     FontMetrics fm = getGraphics().getFontMetrics(oldFont);
-    monospaced.setSelected(fm.getStringBounds("M", getGraphics())
-            .getWidth() == fm.getStringBounds("|", getGraphics())
-            .getWidth());
+    monospaced.setSelected(
+            fm.getStringBounds("M", getGraphics()).getWidth() == fm
+                    .getStringBounds("|", getGraphics()).getWidth());
 
     init = false;
   }
@@ -185,7 +186,8 @@ public class FontChooser extends GFontChooser
     ap.paintAlignment(true);
     if (ap.av.getCodingComplement() != null && ap.av.isProteinFontAsCdna())
     {
-      ((AlignViewport) ap.av.getCodingComplement()).antiAlias = ap.av.antiAlias;
+      ((AlignViewport) ap.av
+              .getCodingComplement()).antiAlias = ap.av.antiAlias;
       SplitFrame sv = (SplitFrame) ap.alignFrame.getSplitViewContainer();
       sv.adjustLayout();
       sv.repaint();
@@ -239,7 +241,8 @@ public class FontChooser extends GFontChooser
       {
         ap.av.getCodingComplement().setScaleProteinAsCdna(oldProteinScale);
         ap.av.getCodingComplement().setProteinFontAsCdna(oldMirrorFont);
-        ((AlignViewport) ap.av.getCodingComplement()).antiAlias = oldComplementSmooth;
+        ((AlignViewport) ap.av
+                .getCodingComplement()).antiAlias = oldComplementSmooth;
         ap.av.getCodingComplement().setFont(oldComplementFont, true);
         SplitFrame splitFrame = (SplitFrame) ap.alignFrame
                 .getSplitViewContainer();
@@ -284,8 +287,9 @@ public class FontChooser extends GFontChooser
     double iw = iBounds.getWidth();
     if (mw < 1 || iw < 1)
     {
-      String message = iBounds.getHeight() < 1 ? MessageManager
-              .getString("label.font_doesnt_have_letters_defined")
+      String message = iBounds.getHeight() < 1
+              ? MessageManager
+                      .getString("label.font_doesnt_have_letters_defined")
               : MessageManager.getString("label.font_too_small");
       JvOptionPane.showInternalMessageDialog(this, message,
               MessageManager.getString("label.invalid_font"),
@@ -298,8 +302,8 @@ public class FontChooser extends GFontChooser
       {
         fontSize.setSelectedItem(lastSelected.getSize());
       }
-      if (!lastSelected.getName().equals(
-              fontName.getSelectedItem().toString()))
+      if (!lastSelected.getName()
+              .equals(fontName.getSelectedItem().toString()))
       {
         fontName.setSelectedItem(lastSelected.getName());
       }
@@ -323,22 +327,17 @@ public class FontChooser extends GFontChooser
       ap.fontChanged();
 
       /*
-       * adjust other half of split frame if any, if either same
-       * font, or proportionate scaling, is selected
+       * adjust other half of split frame if present, whether or not same font or
+       * scale to cDNA is selected, because a font change may affect character
+       * width, and this is kept the same in both panels
        */
-      if (fontAsCdna.isEnabled())
+      if (fontAsCdna.isVisible())
       {
         if (fontAsCdna.isSelected())
         {
-          /*
-           * copy the font
-           */
           ap.av.getCodingComplement().setFont(newFont, true);
         }
 
-        /*
-         * adjust layout for font change / reset / sizing
-         */
         SplitFrame splitFrame = (SplitFrame) ap.alignFrame
                 .getSplitViewContainer();
         splitFrame.adjustLayout();
@@ -421,8 +420,8 @@ public class FontChooser extends GFontChooser
   protected void scaleAsCdna_actionPerformed()
   {
     ap.av.setScaleProteinAsCdna(scaleAsCdna.isSelected());
-    ap.av.getCodingComplement().setScaleProteinAsCdna(
-            scaleAsCdna.isSelected());
+    ap.av.getCodingComplement()
+            .setScaleProteinAsCdna(scaleAsCdna.isSelected());
     final SplitFrame splitFrame = (SplitFrame) ap.alignFrame
             .getSplitViewContainer();
     splitFrame.adjustLayout();