X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=forester%2Fjava%2Fsrc%2Forg%2Fforester%2Farchaeopteryx%2FTreeFontSet.java;h=c278f1cac0bb3c8988ff5d598cdbaeb2ba9ddb2d;hb=aaac4312b5a1356278bad15c79d0e97de8823c72;hp=95730b8e58050199a8b7101532802ce51046b9ce;hpb=79fc8faf7c7980317a0dae73a59edea3fe35df64;p=jalview.git diff --git a/forester/java/src/org/forester/archaeopteryx/TreeFontSet.java b/forester/java/src/org/forester/archaeopteryx/TreeFontSet.java index 95730b8..c278f1ca 100644 --- a/forester/java/src/org/forester/archaeopteryx/TreeFontSet.java +++ b/forester/java/src/org/forester/archaeopteryx/TreeFontSet.java @@ -36,30 +36,29 @@ import java.awt.FontMetrics; */ public final class TreeFontSet { + static final int BOLD_AND_ITALIC = Font.BOLD + Font.ITALIC; + final static float FONT_SIZE_CHANGE_STEP = 1.0f; final static float SMALL_FONTS_BASE = 8; private final static String DEFAULT_FONT = "Verdana"; - final static float FONT_SIZE_CHANGE_STEP = 1.0f; - static final int BOLD_AND_ITALIC = Font.BOLD + Font.ITALIC; + private Font _base_font; + private boolean _decreased_size_by_system = false; + private FontMetrics _fm_large; + // Handy holders for font metrics + private FontMetrics _fm_small; + private Font _large_font; + private Font _large_font_memory; + private Font _large_font_system; + private final int _max; + private final int _min; // the owner (needed to get font metrics) private final MainPanel _owner; // The fonts private Font _small_font; - private Font _large_font; - private Font _base_font; - private Font _small_font_system; - private Font _large_font_system; private Font _small_font_memory; - private Font _large_font_memory; - // Handy holders for font metrics - public FontMetrics _fm_small; - FontMetrics _fm_large; - FontMetrics _fm_large_bold; + private Font _small_font_system; + private int _small_max_ascent = 0; // hold font measurements - int _small_max_descent = 0; - int _small_max_ascent = 0; - private final int _min; - private final int _max; - private boolean _decreased_size_by_system = false; + private int _small_max_descent = 0; TreeFontSet( final MainPanel owner ) { _owner = owner; @@ -68,10 +67,26 @@ public final class TreeFontSet { setBaseFont( new Font( DEFAULT_FONT, Font.PLAIN, 10 ) ); } + public FontMetrics getFontMetricsLarge() { + return _fm_large; + } + + public FontMetrics getFontMetricsSmall() { + return _fm_small; + } + public Font getSmallFont() { return _small_font; } + public int getSmallMaxAscent() { + return _small_max_ascent; + } + + public int getSmallMaxDescent() { + return _small_max_descent; + } + void decreaseFontSize( final int min, final boolean decreased_size_by_system ) { if ( decreased_size_by_system && !isDecreasedSizeBySystem() ) { _small_font_memory = _small_font; @@ -85,10 +100,6 @@ public final class TreeFontSet { } } - Font getLargeFontMemory() { - return _large_font_memory; - } - Font getBaseFont() { return _base_font; } @@ -97,6 +108,10 @@ public final class TreeFontSet { return _large_font; } + Font getLargeFontMemory() { + return _large_font_memory; + } + Font getSmallFontSystem() { return _small_font_system; } @@ -181,7 +196,6 @@ public final class TreeFontSet { private void setupFontMetrics() { _fm_small = _owner.getFontMetrics( _small_font ); _fm_large = _owner.getFontMetrics( _large_font ); - _fm_large_bold = _owner.getFontMetrics( _large_font.deriveFont( Font.BOLD ) ); _small_max_descent = _fm_small.getMaxDescent(); _small_max_ascent = _fm_small.getMaxAscent() + 1; }