From 0394b65f43fb1acb231d0568ecc42a33b7a7633f Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Wed, 10 Mar 2021 09:30:12 +0800 Subject: [PATCH] Update Deck ImageView - [Desktop] double right click / [Mobile] multiple tap - add deck to favorites --- .../forge/itemmanager/views/ImageView.java | 22 +++++++++++++++++++ .../forge/itemmanager/views/ImageView.java | 2 ++ 2 files changed, 24 insertions(+) diff --git a/forge-gui-desktop/src/main/java/forge/itemmanager/views/ImageView.java b/forge-gui-desktop/src/main/java/forge/itemmanager/views/ImageView.java index a4933eac065..3608c05386b 100644 --- a/forge-gui-desktop/src/main/java/forge/itemmanager/views/ImageView.java +++ b/forge-gui-desktop/src/main/java/forge/itemmanager/views/ImageView.java @@ -4,6 +4,7 @@ import forge.ImageCache; import forge.assets.FSkinProp; import forge.card.ColorSet; import forge.deck.DeckProxy; +import forge.deck.io.DeckPreferences; import forge.game.card.Card; import forge.game.card.CardView; import forge.gui.framework.ILocalRepaint; @@ -226,6 +227,24 @@ public class ImageView extends ItemView { } } + @Override + public void onRightDoubleClick(MouseEvent e) { + if (lockInput) { return; } + + ItemInfo item = getItemAtPoint(e.getPoint()); + if (item != null && item.selected) { + if (item.item instanceof DeckProxy) { + DeckProxy dp = (DeckProxy) item.item; + if (DeckPreferences.getPrefs(dp).getStarCount() > 0) + DeckPreferences.getPrefs(dp).setStarCount(0); + else + DeckPreferences.getPrefs(dp).setStarCount(1); + + updateLayout(false); + } + } + } + @Override public void onMiddleMouseDown(MouseEvent e) { if (lockInput) { return; } @@ -1177,6 +1196,9 @@ public class ImageView extends ItemView { if (deckColor != null) { CardFaceSymbols.drawColorSet(g, deckColor, bounds.x + bounds.width - (scale*2) + cornerSize, bounds.y + bounds.height/2 - (scale*2), scale, true); } + //favorite + FSkin.drawImage(g, DeckPreferences.getPrefs(dp).getStarCount() > 0 ? FSkin.getImage(FSkinProp.IMG_STAR_FILLED) : FSkin.getImage(FSkinProp.IMG_STAR_OUTLINE), + bounds.x, bounds.y + bounds.height/2 - (scaleArt*2), scaleArt/2, scaleArt/2); } } g.setColor(Color.white); diff --git a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java index 7e499fa634a..91b12ed2b1d 100644 --- a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java +++ b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java @@ -873,6 +873,8 @@ public class ImageView extends ItemView { DeckPreferences.getPrefs(dp).setStarCount(0); else DeckPreferences.getPrefs(dp).setStarCount(1); + + updateLayout(false); } } }