mirror of
https://github.com/magefree/mage.git
synced 2025-12-24 12:31:59 -08:00
GUI: hand - added default card sorting on mulligan (lands > other > creatures; mana value, name);
This commit is contained in:
parent
525ca9a1a2
commit
10641f8d63
10 changed files with 188 additions and 35 deletions
|
|
@ -127,10 +127,6 @@
|
|||
}
|
||||
}
|
||||
|
||||
public boolean loadCards(SimpleCardsView cardsView, BigCard bigCard, UUID gameId) {
|
||||
return loadCards(CardsViewUtil.convertSimple(cardsView), bigCard, gameId, true);
|
||||
}
|
||||
|
||||
public boolean loadCards(CardsView cardsView, BigCard bigCard, UUID gameId, boolean revertOrder) {
|
||||
boolean changed = false;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1,11 @@
|
|||
package mage.client.dialog;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.beans.PropertyVetoException;
|
||||
import java.util.*;
|
||||
import javax.swing.*;
|
||||
import javax.swing.event.InternalFrameAdapter;
|
||||
import javax.swing.event.InternalFrameEvent;
|
||||
import javax.swing.plaf.basic.BasicInternalFrameUI;
|
||||
|
||||
import mage.cards.MageCard;
|
||||
import mage.client.cards.BigCard;
|
||||
|
|
@ -117,7 +114,7 @@ public class CardInfoWindowDialog extends MageDialog implements MageDesktopIconi
|
|||
cards.changeGUISize();
|
||||
}
|
||||
|
||||
public void loadCards(ExileView exile, BigCard bigCard, UUID gameId) {
|
||||
public void loadCardsAndShow(ExileView exile, BigCard bigCard, UUID gameId) {
|
||||
boolean changed = cards.loadCards(exile, bigCard, gameId, true);
|
||||
String titel = name + " (" + exile.size() + ')';
|
||||
setTitle(titel);
|
||||
|
|
@ -136,16 +133,8 @@ public class CardInfoWindowDialog extends MageDialog implements MageDesktopIconi
|
|||
}
|
||||
}
|
||||
|
||||
public void loadCards(SimpleCardsView showCards, BigCard bigCard, UUID gameId) {
|
||||
cards.loadCards(showCards, bigCard, gameId);
|
||||
showAndPositionWindow();
|
||||
}
|
||||
|
||||
public void loadCards(CardsView showCards, BigCard bigCard, UUID gameId) {
|
||||
loadCards(showCards, bigCard, gameId, true);
|
||||
}
|
||||
|
||||
public void loadCards(CardsView showCards, BigCard bigCard, UUID gameId, boolean revertOrder) {
|
||||
// TODO: remove oudated code with revertOrder (wait new release and delete if no bug reports for diff windows with cards, 2023-12-14)
|
||||
public void loadCardsAndShow(CardsView showCards, BigCard bigCard, UUID gameId, boolean revertOrder) {
|
||||
cards.loadCards(showCards, bigCard, gameId, revertOrder);
|
||||
|
||||
// additional info for grave windows
|
||||
|
|
|
|||
|
|
@ -72,8 +72,8 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
private static final String CMD_AUTO_ORDER_NAME_LAST = "cmdAutoOrderNameLast";
|
||||
private static final String CMD_AUTO_ORDER_RESET_ALL = "cmdAutoOrderResetAll";
|
||||
|
||||
private final Map<UUID, PlayAreaPanel> players = new HashMap<>();
|
||||
private final Map<UUID, Boolean> playersWhoLeft = new HashMap<>();
|
||||
private final Map<UUID, PlayAreaPanel> players = new LinkedHashMap<>();
|
||||
private final Map<UUID, Boolean> playersWhoLeft = new LinkedHashMap<>();
|
||||
|
||||
// non modal frames
|
||||
private final Map<UUID, CardInfoWindowDialog> exiles = new HashMap<>();
|
||||
|
|
@ -103,7 +103,7 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
private boolean menuNameSet = false;
|
||||
private boolean handCardsOfOpponentAvailable = false;
|
||||
|
||||
private Map<String, Card> loadedCards = new HashMap<>();
|
||||
private final Map<String, Card> loadedCards = new HashMap<>();
|
||||
|
||||
private int storedHeight;
|
||||
private Map<String, HoverButton> hoverButtons;
|
||||
|
|
@ -893,7 +893,7 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
if (windowDialog.isClosed()) {
|
||||
graveyardWindows.remove(player.getName());
|
||||
} else {
|
||||
windowDialog.loadCards(player.getGraveyard(), bigCard, gameId, false);
|
||||
windowDialog.loadCardsAndShow(player.getGraveyard(), bigCard, gameId, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -904,7 +904,7 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
if (windowDialog.isClosed()) {
|
||||
sideboardWindows.remove(player.getName());
|
||||
} else {
|
||||
windowDialog.loadCards(player.getSideboard(), bigCard, gameId, false);
|
||||
windowDialog.loadCardsAndShow(player.getSideboard(), bigCard, gameId, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -959,7 +959,7 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
MageFrame.getDesktop().add(exileWindow, JLayeredPane.PALETTE_LAYER);
|
||||
exileWindow.show();
|
||||
}
|
||||
exileWindow.loadCards(exile, bigCard, gameId);
|
||||
exileWindow.loadCardsAndShow(exile, bigCard, gameId);
|
||||
}
|
||||
|
||||
// update open or remove closed card hints windows
|
||||
|
|
@ -1334,7 +1334,7 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
graveyardWindows.put(playerName, newGraveyard);
|
||||
MageFrame.getDesktop().add(newGraveyard, JLayeredPane.PALETTE_LAYER);
|
||||
// use graveyards to sync selection (don't use player data here)
|
||||
newGraveyard.loadCards(graveyards.get(playerName), bigCard, gameId, false);
|
||||
newGraveyard.loadCardsAndShow(graveyards.get(playerName), bigCard, gameId, false);
|
||||
}
|
||||
|
||||
private void clearClosedCardHintsWindows() {
|
||||
|
|
@ -1387,7 +1387,7 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
sideboardWindows.put(playerView.getName(), windowDialog);
|
||||
MageFrame.getDesktop().add(windowDialog, JLayeredPane.PALETTE_LAYER);
|
||||
// use sideboards to sync selection (don't use player data here)
|
||||
windowDialog.loadCards(sideboards.get(playerView.getName()), bigCard, gameId, false);
|
||||
windowDialog.loadCardsAndShow(sideboards.get(playerView.getName()), bigCard, gameId, false);
|
||||
}
|
||||
|
||||
public void openTopLibraryWindow(String playerName) {
|
||||
|
|
@ -1448,10 +1448,10 @@ public final class GamePanel extends javax.swing.JPanel {
|
|||
case REVEAL:
|
||||
case REVEAL_TOP_LIBRARY:
|
||||
case COMPANION:
|
||||
cardInfoWindowDialog.loadCards((CardsView) cardsView, bigCard, gameId);
|
||||
cardInfoWindowDialog.loadCardsAndShow((CardsView) cardsView, bigCard, gameId, false);
|
||||
break;
|
||||
case LOOKED_AT:
|
||||
cardInfoWindowDialog.loadCards((SimpleCardsView) cardsView, bigCard, gameId);
|
||||
cardInfoWindowDialog.loadCardsAndShow(CardsViewUtil.convertSimple((SimpleCardsView) cardsView), bigCard, gameId, false);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ public class HandPanel extends JPanel {
|
|||
}
|
||||
|
||||
public void loadCards(CardsView cards, BigCard bigCard, UUID gameId) {
|
||||
hand.loadCards(cards, bigCard, gameId, true);
|
||||
hand.loadCards(cards, bigCard, gameId, false);
|
||||
}
|
||||
|
||||
private JPanel jPanel;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue