From 3af3eaad09c0c61a7a95f15801893a2da6f36685 Mon Sep 17 00:00:00 2001 From: drdev Date: Mon, 28 Jul 2014 06:26:39 +0000 Subject: [PATCH] Make zoom from scratch and details be same size --- .../src/forge/card/CardRenderer.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/forge-gui-mobile/src/forge/card/CardRenderer.java b/forge-gui-mobile/src/forge/card/CardRenderer.java index 1bc0b6437b6..8cc21ffb7b5 100644 --- a/forge-gui-mobile/src/forge/card/CardRenderer.java +++ b/forge-gui-mobile/src/forge/card/CardRenderer.java @@ -71,14 +71,27 @@ public class CardRenderer { } public static boolean drawZoom(Graphics g, Card card, float width, float height) { - float w = width - 2 * FDialog.INSETS; - float h = height - 2 * FDialog.INSETS; + float x = FDialog.INSETS; + float y = FDialog.INSETS; + float w = width - 2 * x; + float h = height - 2 * y; final Texture image; if (FControl.mayShowCard(card) || FDialog.isDialogOpen()) { //support showing if card revealed in dialog image = ImageCache.getImage(card.getImageKey(), true); if (image == ImageCache.defaultImage) { //support drawing card image manually if card image not found - CardImageRenderer.drawCardImage(g, card, FDialog.INSETS, FDialog.INSETS, w, h); + float ratio = h / w; + if (ratio > FCardPanel.ASPECT_RATIO) { + float oldHeight = h; + h = w * FCardPanel.ASPECT_RATIO; + y += (oldHeight - h) / 2; + } + else { + float oldWidth = w; + w = h / FCardPanel.ASPECT_RATIO; + x += (oldWidth - w) / 2; + } + CardImageRenderer.drawCardImage(g, card, x, y, w, h); return true; } }