mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 18:28:00 +00:00
Fixed sealed deck update problem.
This commit is contained in:
@@ -88,7 +88,9 @@ public final class DeckEditorLimited extends DeckEditorBase<CardPrinted, DeckGro
|
|||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() {
|
||||||
DeckEditorLimited.this.dispose();
|
DeckEditorLimited.this.dispose();
|
||||||
exitCommand.execute();
|
if (exitCommand != null) {
|
||||||
|
exitCommand.execute();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -112,7 +112,6 @@ public class DraftingProcess extends DeckEditorBase<CardPrinted, DeckGroup> {
|
|||||||
public final void showGui(final IBoosterDraft inBoosterDraft) {
|
public final void showGui(final IBoosterDraft inBoosterDraft) {
|
||||||
this.boosterDraft = inBoosterDraft;
|
this.boosterDraft = inBoosterDraft;
|
||||||
this.show(null);
|
this.show(null);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -338,6 +337,8 @@ public class DraftingProcess extends DeckEditorBase<CardPrinted, DeckGroup> {
|
|||||||
|
|
||||||
// close and open next screen
|
// close and open next screen
|
||||||
DraftingProcess.this.dispose();
|
DraftingProcess.this.dispose();
|
||||||
|
|
||||||
|
// This should be handled in the exit command of the editor, not here.
|
||||||
CSubmenuDraft.SINGLETON_INSTANCE.update();
|
CSubmenuDraft.SINGLETON_INSTANCE.update();
|
||||||
GuiUtils.closeOverlay();
|
GuiUtils.closeOverlay();
|
||||||
} /* saveDraft() */
|
} /* saveDraft() */
|
||||||
|
|||||||
@@ -18,13 +18,14 @@ import forge.Command;
|
|||||||
import forge.Constant;
|
import forge.Constant;
|
||||||
import forge.Singletons;
|
import forge.Singletons;
|
||||||
import forge.deck.Deck;
|
import forge.deck.Deck;
|
||||||
|
import forge.deck.DeckBase;
|
||||||
import forge.deck.DeckGroup;
|
import forge.deck.DeckGroup;
|
||||||
import forge.game.GameNew;
|
import forge.game.GameNew;
|
||||||
import forge.game.GameType;
|
|
||||||
import forge.game.limited.SealedDeck;
|
import forge.game.limited.SealedDeck;
|
||||||
import forge.gui.GuiUtils;
|
import forge.gui.GuiUtils;
|
||||||
|
import forge.gui.deckeditor.DeckEditorBase;
|
||||||
|
import forge.gui.deckeditor.DeckEditorLimited;
|
||||||
import forge.gui.home.ICSubmenu;
|
import forge.gui.home.ICSubmenu;
|
||||||
import forge.gui.home.utilities.CSubmenuDeckEditor;
|
|
||||||
import forge.gui.toolbox.FSkin;
|
import forge.gui.toolbox.FSkin;
|
||||||
import forge.item.CardPrinted;
|
import forge.item.CardPrinted;
|
||||||
import forge.item.ItemPool;
|
import forge.item.ItemPool;
|
||||||
@@ -42,7 +43,7 @@ public enum CSubmenuSealed implements ICSubmenu {
|
|||||||
|
|
||||||
private Map<String, Deck> aiDecks;
|
private Map<String, Deck> aiDecks;
|
||||||
|
|
||||||
private final Command cmdDeckExit = new Command() {
|
private final Command cmdExit = new Command() {
|
||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() {
|
||||||
update();
|
update();
|
||||||
@@ -67,7 +68,7 @@ public enum CSubmenuSealed implements ICSubmenu {
|
|||||||
view.populate();
|
view.populate();
|
||||||
CSubmenuSealed.SINGLETON_INSTANCE.update();
|
CSubmenuSealed.SINGLETON_INSTANCE.update();
|
||||||
|
|
||||||
VSubmenuSealed.SINGLETON_INSTANCE.getLstDecks().setExitCommand(cmdDeckExit);
|
VSubmenuSealed.SINGLETON_INSTANCE.getLstDecks().setExitCommand(cmdExit);
|
||||||
VSubmenuSealed.SINGLETON_INSTANCE.getLstDecks().setSelectCommand(cmdDeckSelect);
|
VSubmenuSealed.SINGLETON_INSTANCE.getLstDecks().setSelectCommand(cmdDeckSelect);
|
||||||
|
|
||||||
VSubmenuSealed.SINGLETON_INSTANCE.getBtnBuildDeck().addMouseListener(
|
VSubmenuSealed.SINGLETON_INSTANCE.getBtnBuildDeck().addMouseListener(
|
||||||
@@ -148,7 +149,8 @@ public enum CSubmenuSealed implements ICSubmenu {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** */
|
/** */
|
||||||
private void setupSealed() {
|
@SuppressWarnings("unchecked")
|
||||||
|
private <T extends DeckBase> void setupSealed() {
|
||||||
ArrayList<String> sealedTypes = new ArrayList<String>();
|
ArrayList<String> sealedTypes = new ArrayList<String>();
|
||||||
sealedTypes.add("Full Cardpool");
|
sealedTypes.add("Full Cardpool");
|
||||||
sealedTypes.add("Block / Set");
|
sealedTypes.add("Block / Set");
|
||||||
@@ -204,6 +206,12 @@ public enum CSubmenuSealed implements ICSubmenu {
|
|||||||
sealed.addAiDeck(sd.buildAIDeck(sDeck.toForgeCardList()));
|
sealed.addAiDeck(sd.buildAIDeck(sDeck.toForgeCardList()));
|
||||||
Singletons.getModel().getDecks().getSealed().add(sealed);
|
Singletons.getModel().getDecks().getSealed().add(sealed);
|
||||||
|
|
||||||
CSubmenuDeckEditor.SINGLETON_INSTANCE.showDeckEditor(GameType.Sealed, sealed);
|
DeckEditorBase<?, T> editor = (DeckEditorBase<?, T>)
|
||||||
|
new DeckEditorLimited(Singletons.getModel().getDecks().getSealed());
|
||||||
|
|
||||||
|
editor.show(cmdExit);
|
||||||
|
editor.getController().setModel((T) sealed);
|
||||||
|
editor.setAlwaysOnTop(true);
|
||||||
|
editor.setVisible(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,9 @@
|
|||||||
package forge.gui.home.utilities;
|
package forge.gui.home.utilities;
|
||||||
|
|
||||||
import forge.Command;
|
import forge.Command;
|
||||||
import forge.Singletons;
|
|
||||||
import forge.deck.DeckBase;
|
import forge.deck.DeckBase;
|
||||||
import forge.game.GameType;
|
|
||||||
import forge.gui.deckeditor.DeckEditorBase;
|
import forge.gui.deckeditor.DeckEditorBase;
|
||||||
import forge.gui.deckeditor.DeckEditorConstructed;
|
import forge.gui.deckeditor.DeckEditorConstructed;
|
||||||
import forge.gui.deckeditor.DeckEditorLimited;
|
|
||||||
import forge.gui.home.ICSubmenu;
|
import forge.gui.home.ICSubmenu;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -33,7 +30,7 @@ public enum CSubmenuDeckEditor implements ICSubmenu {
|
|||||||
@Override
|
@Override
|
||||||
public Command getMenuCommand() {
|
public Command getMenuCommand() {
|
||||||
return new Command() { @Override
|
return new Command() { @Override
|
||||||
public void execute() { showDeckEditor(GameType.Constructed, null); } };
|
public void execute() { showDeckEditor(); } };
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@@ -43,28 +40,13 @@ public enum CSubmenuDeckEditor implements ICSubmenu {
|
|||||||
public void update() { }
|
public void update() { }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param <T>  
|
* Shows constructed mode editor.
|
||||||
* @param gt0   GameType
|
* @param <T> extends DeckBase
|
||||||
* @param d0   Deck
|
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public <T extends DeckBase> void showDeckEditor(GameType gt0, T d0) {
|
private <T extends DeckBase> void showDeckEditor() {
|
||||||
|
DeckEditorBase<?, T> editor = (DeckEditorBase<?, T>) new DeckEditorConstructed();
|
||||||
DeckEditorBase<?, T> editor = null;
|
|
||||||
if (gt0 == GameType.Constructed) {
|
|
||||||
editor = (DeckEditorBase<?, T>) new DeckEditorConstructed();
|
|
||||||
} else if (gt0 == GameType.Draft) {
|
|
||||||
editor = (DeckEditorBase<?, T>) new DeckEditorLimited(Singletons.getModel().getDecks().getDraft());
|
|
||||||
} else if (gt0 == GameType.Sealed) {
|
|
||||||
editor = (DeckEditorBase<?, T>) new DeckEditorLimited(Singletons.getModel().getDecks().getSealed());
|
|
||||||
}
|
|
||||||
|
|
||||||
editor.show(null);
|
editor.show(null);
|
||||||
|
|
||||||
if (d0 != null) {
|
|
||||||
editor.getController().setModel(d0);
|
|
||||||
}
|
|
||||||
|
|
||||||
editor.setAlwaysOnTop(true);
|
editor.setAlwaysOnTop(true);
|
||||||
editor.setVisible(true);
|
editor.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user