X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FFontChooser.java;h=48f11b5d6537ed8f31d1b1ab8cbb95c431fe6ec7;hb=6e514532a128c47d099985375d6126111ef548cb;hp=4e27db697dc6dbb92152aa6e0c5a381b7391b582;hpb=47168f025aefdaa044802bd5f8f510ffe43a4808;p=jalview.git diff --git a/src/jalview/appletgui/FontChooser.java b/src/jalview/appletgui/FontChooser.java index 4e27db6..48f11b5 100644 --- a/src/jalview/appletgui/FontChooser.java +++ b/src/jalview/appletgui/FontChooser.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * @@ -20,10 +20,24 @@ */ package jalview.appletgui; +import jalview.api.ViewStyleI; import jalview.util.MessageManager; -import java.awt.*; -import java.awt.event.*; +import java.awt.BorderLayout; +import java.awt.Button; +import java.awt.Choice; +import java.awt.Color; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.FontMetrics; +import java.awt.Frame; +import java.awt.Label; +import java.awt.Panel; +import java.awt.Toolkit; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; public class FontChooser extends Panel implements ActionListener, ItemListener @@ -34,6 +48,8 @@ public class FontChooser extends Panel implements ActionListener, Font oldFont; + int oldCharWidth = 0; + boolean init = true; Frame frame; @@ -65,6 +81,7 @@ public class FontChooser extends Panel implements ActionListener, this.ap = ap; oldFont = ap.av.getFont(); + oldCharWidth = ap.av.getViewStyle().getCharWidth(); init(); } @@ -92,7 +109,8 @@ public class FontChooser extends Panel implements ActionListener, Frame frame = new Frame(); this.frame = frame; frame.add(this); - jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("action.change_font"), 440, 115); + jalview.bin.JalviewLite.addFrame(frame, + MessageManager.getString("action.change_font"), 440, 115); init = false; } @@ -143,6 +161,12 @@ public class FontChooser extends Panel implements ActionListener, if (ap != null) { ap.av.setFont(oldFont); + ViewStyleI style = ap.av.getViewStyle(); + if (style.getCharWidth() != oldCharWidth) + { + style.setCharWidth(oldCharWidth); + ap.av.setViewStyle(style); + } ap.paintAlignment(true); } else if (tp != null) @@ -189,7 +213,9 @@ public class FontChooser extends Panel implements ActionListener, fontName.select(lastSelected.getName()); fontStyle.select(lastSelStyle); fontSize.select("" + lastSelSize); - JVDialog d = new JVDialog(this.frame, MessageManager.getString("label.invalid_font"), true, 350, 200); + JVDialog d = new JVDialog(this.frame, + MessageManager.getString("label.invalid_font"), true, 350, + 200); Panel mp = new Panel(); d.cancel.setVisible(false); mp.setLayout(new FlowLayout());