X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Futil%2Fimagemaker%2FBitmapImageSizing.java;fp=src%2Fjalview%2Futil%2Fimagemaker%2FBitmapImageSizing.java;h=e170f0eb8e4066fac53185e08baa3f5df724431b;hb=b122ba188c2ffcbb302809bafc02058e355643ee;hp=312b834af11deff89d6e1d2e8f37fdee5f8bd3f1;hpb=e91b3bef83f320e13c59ad5d21d69f0abf3d7507;p=jalview.git diff --git a/src/jalview/util/imagemaker/BitmapImageSizing.java b/src/jalview/util/imagemaker/BitmapImageSizing.java index 312b834..e170f0e 100644 --- a/src/jalview/util/imagemaker/BitmapImageSizing.java +++ b/src/jalview/util/imagemaker/BitmapImageSizing.java @@ -1,22 +1,83 @@ package jalview.util.imagemaker; +import jalview.bin.Cache; + public class BitmapImageSizing { - public final float scale; + private final float scale; + + private final int width; - public final int width; + private final int height; - public final int height; + private boolean isDefault = false; - public BitmapImageSizing(float scale, int width, int height) + public BitmapImageSizing(float scale, int width, int height, + boolean isDefault) { this.scale = scale; this.width = width; this.height = height; + this.isDefault = isDefault; + } + + public boolean isNull() + { + return scale == 0.0f && width == 0 && height == 0; } public static BitmapImageSizing nullBitmapImageSizing() { - return new BitmapImageSizing(0.0f, 0, 0); + return new BitmapImageSizing(0.0f, 0, 0, false); + } + + public static final String BITMAP_SCALE = "BITMAP_SCALE"; + + public static final String BITMAP_HEIGHT = "BITMAP_HEIGHT"; + + public static final String BITMAP_WIDTH = "BITMAP_WIDTH"; + + /** + * + * @return bean configured from Cache keys + */ + public static BitmapImageSizing defaultBitmapImageSizing() + { + return new BitmapImageSizing(0f, 0, 0, true); + } + + private float defaultScale() + { + return Cache.getDefault(BITMAP_SCALE, 0f); + } + + private int defaultWidth() + { + return Cache.getDefault(BITMAP_WIDTH, 0); + } + + private int defaultHeight() + { + return Cache.getDefault(BITMAP_HEIGHT, 0); + } + + public float scale() + { + return isDefault() ? defaultScale() : scale; + } + + public int width() + { + return isDefault() ? defaultWidth() : width; + } + + public int height() + { + return isDefault() ? defaultHeight() : height; + } + + public boolean isDefault() + { + return isDefault; } }