mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
- change FControl state from int into an enum
- ensure All Decks and Deck Generation tabs only show up in the Constructed deck editor
This commit is contained in:
@@ -67,26 +67,21 @@ public enum FControl {
|
|||||||
|
|
||||||
private List<Shortcut> shortcuts;
|
private List<Shortcut> shortcuts;
|
||||||
private JLayeredPane display;
|
private JLayeredPane display;
|
||||||
private int state = -1;
|
private Screens state = Screens.UNKNOWN;
|
||||||
|
|
||||||
private WindowListener waDefault, waConcede, waLeaveBazaar, waLeaveEditor;
|
private WindowListener waDefault, waConcede, waLeaveBazaar, waLeaveEditor;
|
||||||
|
|
||||||
/** */
|
public static enum Screens {
|
||||||
public static final int HOME_SCREEN = 0;
|
UNKNOWN,
|
||||||
/** */
|
HOME_SCREEN,
|
||||||
public static final int MATCH_SCREEN = 1;
|
MATCH_SCREEN,
|
||||||
/** */
|
DECK_EDITOR_CONSTRUCTED,
|
||||||
public static final int DECK_EDITOR_CONSTRUCTED = 2;
|
QUEST_BAZAAR,
|
||||||
/** */
|
DECK_EDITOR_LIMITED,
|
||||||
public static final int QUEST_BAZAAR = 3;
|
DECK_EDITOR_QUEST,
|
||||||
/** */
|
QUEST_CARD_SHOP,
|
||||||
public static final int DECK_EDITOR_LIMITED = 4;
|
DRAFTING_PROCESS
|
||||||
/** */
|
}
|
||||||
public static final int DECK_EDITOR_QUEST = 5;
|
|
||||||
/** */
|
|
||||||
public static final int QUEST_CARD_SHOP = 6;
|
|
||||||
/** */
|
|
||||||
public static final int DRAFTING_PROCESS = 7;
|
|
||||||
|
|
||||||
private final SoundSystem soundSystem = new SoundSystem();
|
private final SoundSystem soundSystem = new SoundSystem();
|
||||||
|
|
||||||
@@ -127,7 +122,7 @@ public enum FControl {
|
|||||||
Singletons.getView().getFrame().setDefaultCloseOperation(
|
Singletons.getView().getFrame().setDefaultCloseOperation(
|
||||||
WindowConstants.DO_NOTHING_ON_CLOSE);
|
WindowConstants.DO_NOTHING_ON_CLOSE);
|
||||||
|
|
||||||
changeState(FControl.HOME_SCREEN);
|
changeState(Screens.HOME_SCREEN);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -137,7 +132,7 @@ public enum FControl {
|
|||||||
Singletons.getView().getFrame().setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
|
Singletons.getView().getFrame().setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
|
||||||
|
|
||||||
if (CDeckEditorUI.SINGLETON_INSTANCE.getCurrentEditorController().exit()) {
|
if (CDeckEditorUI.SINGLETON_INSTANCE.getCurrentEditorController().exit()) {
|
||||||
changeState(FControl.HOME_SCREEN);
|
changeState(Screens.HOME_SCREEN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -185,17 +180,11 @@ public enum FControl {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
|
||||||
* changeState.
|
|
||||||
* </p>
|
|
||||||
* Switches between display states in top level JFrame.
|
* Switches between display states in top level JFrame.
|
||||||
*
|
|
||||||
* @param i0
|
|
||||||
*   State index: 0 for home, 1 for match, etc.
|
|
||||||
*/
|
*/
|
||||||
public void changeState(final int i0) {
|
public void changeState(Screens screen) {
|
||||||
clearChildren(JLayeredPane.DEFAULT_LAYER);
|
clearChildren(JLayeredPane.DEFAULT_LAYER);
|
||||||
this.state = i0;
|
this.state = screen;
|
||||||
|
|
||||||
Singletons.getView().getFrame().removeWindowListener(waDefault);
|
Singletons.getView().getFrame().removeWindowListener(waDefault);
|
||||||
Singletons.getView().getFrame().removeWindowListener(waConcede);
|
Singletons.getView().getFrame().removeWindowListener(waConcede);
|
||||||
@@ -203,7 +192,7 @@ public enum FControl {
|
|||||||
Singletons.getView().getFrame().removeWindowListener(waLeaveEditor);
|
Singletons.getView().getFrame().removeWindowListener(waLeaveEditor);
|
||||||
|
|
||||||
// Fire up new state
|
// Fire up new state
|
||||||
switch (i0) {
|
switch (screen) {
|
||||||
case HOME_SCREEN:
|
case HOME_SCREEN:
|
||||||
SOverlayUtils.hideTargetingOverlay();
|
SOverlayUtils.hideTargetingOverlay();
|
||||||
VHomeUI.SINGLETON_INSTANCE.populate();
|
VHomeUI.SINGLETON_INSTANCE.populate();
|
||||||
@@ -242,6 +231,7 @@ public enum FControl {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
throw new RuntimeException("unhandled screen: " + screen);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -251,7 +241,7 @@ public enum FControl {
|
|||||||
*
|
*
|
||||||
* @return {@link java.lang.Integer}
|
* @return {@link java.lang.Integer}
|
||||||
* */
|
* */
|
||||||
public int getState() {
|
public Screens getState() {
|
||||||
return this.state;
|
return this.state;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -313,7 +303,6 @@ public enum FControl {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public SoundSystem getSoundSystem() {
|
public SoundSystem getSoundSystem() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return soundSystem;
|
return soundSystem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actShowStack = new AbstractAction() {
|
final Action actShowStack = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
SDisplayUtil.showTab(EDocID.REPORT_STACK.getDoc());
|
SDisplayUtil.showTab(EDocID.REPORT_STACK.getDoc());
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -59,7 +59,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actShowCombat = new AbstractAction() {
|
final Action actShowCombat = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
SDisplayUtil.showTab(EDocID.REPORT_COMBAT.getDoc());
|
SDisplayUtil.showTab(EDocID.REPORT_COMBAT.getDoc());
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -68,7 +68,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actShowConsole = new AbstractAction() {
|
final Action actShowConsole = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
SDisplayUtil.showTab(EDocID.REPORT_LOG.getDoc());
|
SDisplayUtil.showTab(EDocID.REPORT_LOG.getDoc());
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -77,7 +77,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actShowPlayers = new AbstractAction() {
|
final Action actShowPlayers = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
SDisplayUtil.showTab(EDocID.REPORT_PLAYERS.getDoc());
|
SDisplayUtil.showTab(EDocID.REPORT_PLAYERS.getDoc());
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -86,7 +86,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actShowDev = new AbstractAction() {
|
final Action actShowDev = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
if (Singletons.getModel().getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED)) {
|
if (Singletons.getModel().getPreferences().getPrefBoolean(FPref.DEV_MODE_ENABLED)) {
|
||||||
SDisplayUtil.showTab(EDocID.DEV_MODE.getDoc());
|
SDisplayUtil.showTab(EDocID.DEV_MODE.getDoc());
|
||||||
}
|
}
|
||||||
@@ -97,7 +97,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actConcede = new AbstractAction() {
|
final Action actConcede = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
CDock.SINGLETON_INSTANCE.concede();
|
CDock.SINGLETON_INSTANCE.concede();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -106,7 +106,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actEndTurn = new AbstractAction() {
|
final Action actEndTurn = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
CDock.SINGLETON_INSTANCE.endTurn();
|
CDock.SINGLETON_INSTANCE.endTurn();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -115,7 +115,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actAllAttack = new AbstractAction() {
|
final Action actAllAttack = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
CDock.SINGLETON_INSTANCE.alphaStrike();
|
CDock.SINGLETON_INSTANCE.alphaStrike();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -124,7 +124,7 @@ public class KeyboardShortcuts {
|
|||||||
final Action actTgtOverlay = new AbstractAction() {
|
final Action actTgtOverlay = new AbstractAction() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(final ActionEvent e) {
|
public void actionPerformed(final ActionEvent e) {
|
||||||
if (Singletons.getControl().getState() != 1) { return; }
|
if (Singletons.getControl().getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
CDock.SINGLETON_INSTANCE.toggleTargeting();
|
CDock.SINGLETON_INSTANCE.toggleTargeting();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ public class MatchController {
|
|||||||
CMatchUI.SINGLETON_INSTANCE.initMatch(currentGame.getRegisteredPlayers(), localHuman);
|
CMatchUI.SINGLETON_INSTANCE.initMatch(currentGame.getRegisteredPlayers(), localHuman);
|
||||||
CDock.SINGLETON_INSTANCE.onGameStarts(currentGame, localHuman);
|
CDock.SINGLETON_INSTANCE.onGameStarts(currentGame, localHuman);
|
||||||
Singletons.getModel().getPreferences().actuateMatchPreferences();
|
Singletons.getModel().getPreferences().actuateMatchPreferences();
|
||||||
Singletons.getControl().changeState(FControl.MATCH_SCREEN);
|
Singletons.getControl().changeState(FControl.Screens.MATCH_SCREEN);
|
||||||
SDisplayUtil.showTab(EDocID.REPORT_LOG.getDoc());
|
SDisplayUtil.showTab(EDocID.REPORT_LOG.getDoc());
|
||||||
|
|
||||||
// set all observers
|
// set all observers
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ import forge.gui.CardContainer;
|
|||||||
import forge.gui.GuiUtils;
|
import forge.gui.GuiUtils;
|
||||||
import forge.gui.deckeditor.SEditorIO.EditorPreference;
|
import forge.gui.deckeditor.SEditorIO.EditorPreference;
|
||||||
import forge.gui.deckeditor.controllers.ACEditorBase;
|
import forge.gui.deckeditor.controllers.ACEditorBase;
|
||||||
|
import forge.gui.deckeditor.controllers.CCardCatalog;
|
||||||
import forge.gui.deckeditor.controllers.CProbabilities;
|
import forge.gui.deckeditor.controllers.CProbabilities;
|
||||||
import forge.gui.deckeditor.controllers.CStatistics;
|
import forge.gui.deckeditor.controllers.CStatistics;
|
||||||
import forge.gui.deckeditor.tables.EditorTableModel;
|
import forge.gui.deckeditor.tables.EditorTableModel;
|
||||||
@@ -125,6 +126,7 @@ public enum CDeckEditorUI implements CardContainer {
|
|||||||
childController.getTableDeck().setWantElasticColumns(wantElastic);
|
childController.getTableDeck().setWantElasticColumns(wantElastic);
|
||||||
childController.getTableCatalog().setWantUnique(wantUnique);
|
childController.getTableCatalog().setWantUnique(wantUnique);
|
||||||
childController.getTableDeck().setWantUnique(wantUnique);
|
childController.getTableDeck().setWantUnique(wantUnique);
|
||||||
|
CCardCatalog.SINGLETON_INSTANCE.applyCurrentFilter();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
package forge.gui.deckeditor;
|
package forge.gui.deckeditor;
|
||||||
|
|
||||||
import javax.swing.SwingWorker;
|
import javax.swing.SwingUtilities;
|
||||||
|
|
||||||
import forge.gui.deckeditor.controllers.CCardCatalog;
|
|
||||||
import forge.gui.deckeditor.views.VCardCatalog;
|
import forge.gui.deckeditor.views.VCardCatalog;
|
||||||
import forge.gui.framework.IVTopLevelUI;
|
import forge.gui.framework.IVTopLevelUI;
|
||||||
import forge.gui.framework.SLayoutIO;
|
import forge.gui.framework.SLayoutIO;
|
||||||
@@ -33,15 +32,12 @@ public enum VDeckEditorUI implements IVTopLevelUI {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void populate() {
|
public void populate() {
|
||||||
final SwingWorker<Void, Void> w = new SwingWorker<Void, Void>() {
|
|
||||||
@Override
|
|
||||||
public Void doInBackground() {
|
|
||||||
SLayoutIO.loadLayout(null);
|
SLayoutIO.loadLayout(null);
|
||||||
|
SwingUtilities.invokeLater(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
VCardCatalog.SINGLETON_INSTANCE.focusTable();
|
VCardCatalog.SINGLETON_INSTANCE.focusTable();
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
};
|
});
|
||||||
CCardCatalog.SINGLETON_INSTANCE.applyCurrentFilter();
|
|
||||||
w.execute();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,10 +17,17 @@
|
|||||||
*/
|
*/
|
||||||
package forge.gui.deckeditor.controllers;
|
package forge.gui.deckeditor.controllers;
|
||||||
|
|
||||||
|
import javax.swing.SwingUtilities;
|
||||||
|
|
||||||
import forge.deck.DeckBase;
|
import forge.deck.DeckBase;
|
||||||
import forge.gui.deckeditor.tables.DeckController;
|
import forge.gui.deckeditor.tables.DeckController;
|
||||||
import forge.gui.deckeditor.tables.EditorTableView;
|
import forge.gui.deckeditor.tables.EditorTableView;
|
||||||
|
import forge.gui.framework.DragCell;
|
||||||
|
import forge.gui.framework.ICDoc;
|
||||||
|
import forge.gui.framework.IVDoc;
|
||||||
|
import forge.gui.framework.SRearrangingUtil;
|
||||||
import forge.item.InventoryItem;
|
import forge.item.InventoryItem;
|
||||||
|
import forge.view.FView;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Maintains a generically typed architecture for various editing
|
* Maintains a generically typed architecture for various editing
|
||||||
@@ -38,7 +45,6 @@ import forge.item.InventoryItem;
|
|||||||
* @param <TModel> extends {@link forge.deck.DeckBase}
|
* @param <TModel> extends {@link forge.deck.DeckBase}
|
||||||
*/
|
*/
|
||||||
public abstract class ACEditorBase<TItem extends InventoryItem, TModel extends DeckBase> {
|
public abstract class ACEditorBase<TItem extends InventoryItem, TModel extends DeckBase> {
|
||||||
|
|
||||||
public interface ContextMenuBuilder {
|
public interface ContextMenuBuilder {
|
||||||
/**
|
/**
|
||||||
* Adds move-related items to the context menu
|
* Adds move-related items to the context menu
|
||||||
@@ -130,4 +136,33 @@ public abstract class ACEditorBase<TItem extends InventoryItem, TModel extends D
|
|||||||
this.tblCatalog = table0;
|
this.tblCatalog = table0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Removes the specified tab and returns its parent for later re-adding
|
||||||
|
*/
|
||||||
|
protected DragCell removeTab (IVDoc<? extends ICDoc> tab) {
|
||||||
|
final DragCell parent;
|
||||||
|
if (tab.getParentCell() == null) {
|
||||||
|
parent = null;
|
||||||
|
} else {
|
||||||
|
parent = tab.getParentCell();
|
||||||
|
parent.removeDoc(tab);
|
||||||
|
tab.setParentCell(null);
|
||||||
|
|
||||||
|
if (parent.getDocs().size() > 0) {
|
||||||
|
// if specified tab was first child of its parent, the new first tab needs re-selecting.
|
||||||
|
parent.setSelected(parent.getDocs().get(0));
|
||||||
|
} else {
|
||||||
|
// if the parent is now childless, fill in the resultant gap
|
||||||
|
SwingUtilities.invokeLater(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
SRearrangingUtil.fillGap(parent);
|
||||||
|
FView.SINGLETON_INSTANCE.removeDragCell(parent);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return parent;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ package forge.gui.deckeditor.controllers;
|
|||||||
|
|
||||||
import javax.swing.JOptionPane;
|
import javax.swing.JOptionPane;
|
||||||
import javax.swing.ListSelectionModel;
|
import javax.swing.ListSelectionModel;
|
||||||
import javax.swing.SwingUtilities;
|
|
||||||
|
|
||||||
import forge.Singletons;
|
import forge.Singletons;
|
||||||
import forge.control.FControl;
|
import forge.control.FControl;
|
||||||
@@ -37,13 +36,11 @@ import forge.gui.deckeditor.views.VCardCatalog;
|
|||||||
import forge.gui.deckeditor.views.VCurrentDeck;
|
import forge.gui.deckeditor.views.VCurrentDeck;
|
||||||
import forge.gui.deckeditor.views.VDeckgen;
|
import forge.gui.deckeditor.views.VDeckgen;
|
||||||
import forge.gui.framework.DragCell;
|
import forge.gui.framework.DragCell;
|
||||||
import forge.gui.framework.SRearrangingUtil;
|
|
||||||
import forge.gui.home.sanctioned.CSubmenuDraft;
|
import forge.gui.home.sanctioned.CSubmenuDraft;
|
||||||
import forge.item.CardDb;
|
import forge.item.CardDb;
|
||||||
import forge.item.CardPrinted;
|
import forge.item.CardPrinted;
|
||||||
import forge.item.InventoryItem;
|
import forge.item.InventoryItem;
|
||||||
import forge.item.ItemPoolView;
|
import forge.item.ItemPoolView;
|
||||||
import forge.view.FView;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Updates the deck editor UI as necessary draft selection mode.
|
* Updates the deck editor UI as necessary draft selection mode.
|
||||||
@@ -98,21 +95,8 @@ public class CEditorDraftingProcess extends ACEditorBase<CardPrinted, DeckGroup>
|
|||||||
this.getTableCatalog().setup(VCardCatalog.SINGLETON_INSTANCE, SColumnUtil.getCatalogDefaultColumns());
|
this.getTableCatalog().setup(VCardCatalog.SINGLETON_INSTANCE, SColumnUtil.getCatalogDefaultColumns());
|
||||||
this.getTableDeck().setup(VCurrentDeck.SINGLETON_INSTANCE, SColumnUtil.getDeckDefaultColumns());
|
this.getTableDeck().setup(VCurrentDeck.SINGLETON_INSTANCE, SColumnUtil.getDeckDefaultColumns());
|
||||||
|
|
||||||
/*
|
|
||||||
this.getTableCatalog().getTable().addMouseListener(this.pickWithMouse);
|
|
||||||
this.getTableCatalog().getTable().addKeyListener(new KeyAdapter() {
|
|
||||||
@Override
|
|
||||||
public void keyPressed(final KeyEvent e) {
|
|
||||||
if (e.getKeyChar() == ' ') {
|
|
||||||
CEditorDraftingProcess.this.addCard();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
*/
|
|
||||||
|
|
||||||
ccAddLabel = VCardCatalog.SINGLETON_INSTANCE.getBtnAdd().getText();
|
ccAddLabel = VCardCatalog.SINGLETON_INSTANCE.getBtnAdd().getText();
|
||||||
VCardCatalog.SINGLETON_INSTANCE.getBtnAdd().setText("Choose Card");
|
VCardCatalog.SINGLETON_INSTANCE.getBtnAdd().setText("Choose Card");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@@ -247,7 +231,7 @@ public class CEditorDraftingProcess extends ACEditorBase<CardPrinted, DeckGroup>
|
|||||||
Singletons.getModel().getDecks().getDraft().add(finishedDraft);
|
Singletons.getModel().getDecks().getDraft().add(finishedDraft);
|
||||||
}
|
}
|
||||||
|
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.HOME_SCREEN);
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.HOME_SCREEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
//========== Overridden from ACEditorBase
|
//========== Overridden from ACEditorBase
|
||||||
@@ -291,42 +275,11 @@ public class CEditorDraftingProcess extends ACEditorBase<CardPrinted, DeckGroup>
|
|||||||
|
|
||||||
VCurrentDeck.SINGLETON_INSTANCE.getPnlHeader().setVisible(false);
|
VCurrentDeck.SINGLETON_INSTANCE.getPnlHeader().setVisible(false);
|
||||||
|
|
||||||
if (VDeckgen.SINGLETON_INSTANCE.getParentCell() != null) {
|
deckGenParent = removeTab(VDeckgen.SINGLETON_INSTANCE);
|
||||||
deckGenParent = VDeckgen.SINGLETON_INSTANCE.getParentCell();
|
allDecksParent = removeTab(VAllDecks.SINGLETON_INSTANCE);
|
||||||
deckGenParent.removeDoc(VDeckgen.SINGLETON_INSTANCE);
|
|
||||||
VDeckgen.SINGLETON_INSTANCE.setParentCell(null);
|
|
||||||
|
|
||||||
// If Deck Gen was first tab, the new first tab needs re-selecting.
|
|
||||||
if (deckGenParent.getDocs().size() > 0) {
|
|
||||||
deckGenParent.setSelected(deckGenParent.getDocs().get(0));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (VAllDecks.SINGLETON_INSTANCE.getParentCell() != null) {
|
|
||||||
allDecksParent = VAllDecks.SINGLETON_INSTANCE.getParentCell();
|
|
||||||
allDecksParent.removeDoc(VAllDecks.SINGLETON_INSTANCE);
|
|
||||||
VAllDecks.SINGLETON_INSTANCE.setParentCell(null);
|
|
||||||
|
|
||||||
// If All Decks was first tab, the new first tab needs re-selecting.
|
|
||||||
if (allDecksParent.getDocs().size() > 0) {
|
|
||||||
allDecksParent.setSelected(allDecksParent.getDocs().get(0));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// set catalog table to single-selection only mode
|
// set catalog table to single-selection only mode
|
||||||
getTableCatalog().getTable().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
getTableCatalog().getTable().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
||||||
|
|
||||||
// Fill in gaps
|
|
||||||
SwingUtilities.invokeLater(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
for (final DragCell c : FView.SINGLETON_INSTANCE.getDragCells()) {
|
|
||||||
if (c.getDocs().size() == 0) {
|
|
||||||
SRearrangingUtil.fillGap(c);
|
|
||||||
FView.SINGLETON_INSTANCE.removeDragCell(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@@ -357,7 +310,6 @@ public class CEditorDraftingProcess extends ACEditorBase<CardPrinted, DeckGroup>
|
|||||||
// set catalog table back to free-selection mode
|
// set catalog table back to free-selection mode
|
||||||
getTableCatalog().getTable().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
|
getTableCatalog().getTable().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,8 +27,11 @@ import forge.gui.deckeditor.SEditorUtil;
|
|||||||
import forge.gui.deckeditor.tables.DeckController;
|
import forge.gui.deckeditor.tables.DeckController;
|
||||||
import forge.gui.deckeditor.tables.EditorTableView;
|
import forge.gui.deckeditor.tables.EditorTableView;
|
||||||
import forge.gui.deckeditor.tables.SColumnUtil;
|
import forge.gui.deckeditor.tables.SColumnUtil;
|
||||||
|
import forge.gui.deckeditor.views.VAllDecks;
|
||||||
import forge.gui.deckeditor.views.VCardCatalog;
|
import forge.gui.deckeditor.views.VCardCatalog;
|
||||||
import forge.gui.deckeditor.views.VCurrentDeck;
|
import forge.gui.deckeditor.views.VCurrentDeck;
|
||||||
|
import forge.gui.deckeditor.views.VDeckgen;
|
||||||
|
import forge.gui.framework.DragCell;
|
||||||
import forge.gui.home.sanctioned.CSubmenuDraft;
|
import forge.gui.home.sanctioned.CSubmenuDraft;
|
||||||
import forge.gui.home.sanctioned.CSubmenuSealed;
|
import forge.gui.home.sanctioned.CSubmenuSealed;
|
||||||
import forge.item.CardPrinted;
|
import forge.item.CardPrinted;
|
||||||
@@ -46,6 +49,8 @@ import forge.util.IStorage;
|
|||||||
public final class CEditorLimited extends ACEditorBase<CardPrinted, DeckGroup> {
|
public final class CEditorLimited extends ACEditorBase<CardPrinted, DeckGroup> {
|
||||||
|
|
||||||
private final DeckController<DeckGroup> controller;
|
private final DeckController<DeckGroup> controller;
|
||||||
|
private DragCell allDecksParent = null;
|
||||||
|
private DragCell deckGenParent = null;
|
||||||
|
|
||||||
//========== Constructor
|
//========== Constructor
|
||||||
|
|
||||||
@@ -169,6 +174,9 @@ public final class CEditorLimited extends ACEditorBase<CardPrinted, DeckGroup> {
|
|||||||
|
|
||||||
VCardCatalog.SINGLETON_INSTANCE.getPnlHeader().setVisible(true);
|
VCardCatalog.SINGLETON_INSTANCE.getPnlHeader().setVisible(true);
|
||||||
VCardCatalog.SINGLETON_INSTANCE.getLblTitle().setText("Deck Editor: Limited Mode");
|
VCardCatalog.SINGLETON_INSTANCE.getLblTitle().setText("Deck Editor: Limited Mode");
|
||||||
|
|
||||||
|
deckGenParent = removeTab(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
allDecksParent = removeTab(VAllDecks.SINGLETON_INSTANCE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@@ -181,6 +189,15 @@ public final class CEditorLimited extends ACEditorBase<CardPrinted, DeckGroup> {
|
|||||||
if (okToExit) {
|
if (okToExit) {
|
||||||
CSubmenuDraft.SINGLETON_INSTANCE.update();
|
CSubmenuDraft.SINGLETON_INSTANCE.update();
|
||||||
CSubmenuSealed.SINGLETON_INSTANCE.update();
|
CSubmenuSealed.SINGLETON_INSTANCE.update();
|
||||||
|
|
||||||
|
//Re-add tabs
|
||||||
|
if (deckGenParent != null) {
|
||||||
|
deckGenParent.addDoc(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
if (allDecksParent != null) {
|
||||||
|
allDecksParent.addDoc(VAllDecks.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return okToExit;
|
return okToExit;
|
||||||
|
|||||||
@@ -37,8 +37,11 @@ import forge.gui.deckeditor.tables.EditorTableView;
|
|||||||
import forge.gui.deckeditor.tables.SColumnUtil;
|
import forge.gui.deckeditor.tables.SColumnUtil;
|
||||||
import forge.gui.deckeditor.tables.SColumnUtil.ColumnName;
|
import forge.gui.deckeditor.tables.SColumnUtil.ColumnName;
|
||||||
import forge.gui.deckeditor.tables.TableColumnInfo;
|
import forge.gui.deckeditor.tables.TableColumnInfo;
|
||||||
|
import forge.gui.deckeditor.views.VAllDecks;
|
||||||
import forge.gui.deckeditor.views.VCardCatalog;
|
import forge.gui.deckeditor.views.VCardCatalog;
|
||||||
import forge.gui.deckeditor.views.VCurrentDeck;
|
import forge.gui.deckeditor.views.VCurrentDeck;
|
||||||
|
import forge.gui.deckeditor.views.VDeckgen;
|
||||||
|
import forge.gui.framework.DragCell;
|
||||||
import forge.gui.home.quest.CSubmenuQuestDecks;
|
import forge.gui.home.quest.CSubmenuQuestDecks;
|
||||||
import forge.gui.toolbox.FLabel;
|
import forge.gui.toolbox.FLabel;
|
||||||
import forge.item.CardPrinted;
|
import forge.item.CardPrinted;
|
||||||
@@ -61,6 +64,8 @@ import forge.quest.QuestController;
|
|||||||
public final class CEditorQuest extends ACEditorBase<CardPrinted, Deck> {
|
public final class CEditorQuest extends ACEditorBase<CardPrinted, Deck> {
|
||||||
private final QuestController questData;
|
private final QuestController questData;
|
||||||
private final DeckController<Deck> controller;
|
private final DeckController<Deck> controller;
|
||||||
|
private DragCell allDecksParent = null;
|
||||||
|
private DragCell deckGenParent = null;
|
||||||
private boolean sideboardMode = false;
|
private boolean sideboardMode = false;
|
||||||
|
|
||||||
private Map<CardPrinted, Integer> decksUsingMyCards;
|
private Map<CardPrinted, Integer> decksUsingMyCards;
|
||||||
@@ -68,7 +73,7 @@ public final class CEditorQuest extends ACEditorBase<CardPrinted, Deck> {
|
|||||||
private final Function<Entry<InventoryItem, Integer>, Comparable<?>> fnDeckCompare = new Function<Entry<InventoryItem, Integer>, Comparable<?>>() {
|
private final Function<Entry<InventoryItem, Integer>, Comparable<?>> fnDeckCompare = new Function<Entry<InventoryItem, Integer>, Comparable<?>>() {
|
||||||
@Override
|
@Override
|
||||||
public Comparable<?> apply(final Entry<InventoryItem, Integer> from) {
|
public Comparable<?> apply(final Entry<InventoryItem, Integer> from) {
|
||||||
final Integer iValue = CEditorQuest.this.decksUsingMyCards.get(from.getKey());
|
final Integer iValue = decksUsingMyCards.get(from.getKey());
|
||||||
return iValue == null ? Integer.valueOf(0) : iValue;
|
return iValue == null ? Integer.valueOf(0) : iValue;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -76,7 +81,7 @@ public final class CEditorQuest extends ACEditorBase<CardPrinted, Deck> {
|
|||||||
private final Function<Entry<InventoryItem, Integer>, Object> fnDeckGet = new Function<Entry<InventoryItem, Integer>, Object>() {
|
private final Function<Entry<InventoryItem, Integer>, Object> fnDeckGet = new Function<Entry<InventoryItem, Integer>, Object>() {
|
||||||
@Override
|
@Override
|
||||||
public Object apply(final Entry<InventoryItem, Integer> from) {
|
public Object apply(final Entry<InventoryItem, Integer> from) {
|
||||||
final Integer iValue = CEditorQuest.this.decksUsingMyCards.get(from.getKey());
|
final Integer iValue = decksUsingMyCards.get(from.getKey());
|
||||||
return iValue == null ? "" : iValue.toString();
|
return iValue == null ? "" : iValue.toString();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -290,6 +295,9 @@ public final class CEditorQuest extends ACEditorBase<CardPrinted, Deck> {
|
|||||||
switchEditorMode(sideboardMode);
|
switchEditorMode(sideboardMode);
|
||||||
} });
|
} });
|
||||||
|
|
||||||
|
deckGenParent = removeTab(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
allDecksParent = removeTab(VAllDecks.SINGLETON_INSTANCE);
|
||||||
|
|
||||||
this.getDeckController().setModel(deck);
|
this.getDeckController().setModel(deck);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -302,6 +310,14 @@ public final class CEditorQuest extends ACEditorBase<CardPrinted, Deck> {
|
|||||||
if (okToExit) {
|
if (okToExit) {
|
||||||
Singletons.getModel().getQuest().save();
|
Singletons.getModel().getQuest().save();
|
||||||
CSubmenuQuestDecks.SINGLETON_INSTANCE.update();
|
CSubmenuQuestDecks.SINGLETON_INSTANCE.update();
|
||||||
|
//Re-add tabs
|
||||||
|
if (deckGenParent != null) {
|
||||||
|
deckGenParent.addDoc(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
if (allDecksParent != null) {
|
||||||
|
allDecksParent.addDoc(VAllDecks.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return okToExit;
|
return okToExit;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -43,8 +43,11 @@ import forge.gui.deckeditor.tables.EditorTableView;
|
|||||||
import forge.gui.deckeditor.tables.SColumnUtil;
|
import forge.gui.deckeditor.tables.SColumnUtil;
|
||||||
import forge.gui.deckeditor.tables.SColumnUtil.ColumnName;
|
import forge.gui.deckeditor.tables.SColumnUtil.ColumnName;
|
||||||
import forge.gui.deckeditor.tables.TableColumnInfo;
|
import forge.gui.deckeditor.tables.TableColumnInfo;
|
||||||
|
import forge.gui.deckeditor.views.VAllDecks;
|
||||||
import forge.gui.deckeditor.views.VCardCatalog;
|
import forge.gui.deckeditor.views.VCardCatalog;
|
||||||
import forge.gui.deckeditor.views.VCurrentDeck;
|
import forge.gui.deckeditor.views.VCurrentDeck;
|
||||||
|
import forge.gui.deckeditor.views.VDeckgen;
|
||||||
|
import forge.gui.framework.DragCell;
|
||||||
import forge.gui.home.quest.CSubmenuQuestDecks;
|
import forge.gui.home.quest.CSubmenuQuestDecks;
|
||||||
import forge.gui.toolbox.FLabel;
|
import forge.gui.toolbox.FLabel;
|
||||||
import forge.gui.toolbox.FSkin;
|
import forge.gui.toolbox.FSkin;
|
||||||
@@ -95,6 +98,8 @@ public final class CEditorQuestCardShop extends ACEditorBase<InventoryItem, Deck
|
|||||||
private final ItemPool<InventoryItem> fullCatalogCards =
|
private final ItemPool<InventoryItem> fullCatalogCards =
|
||||||
ItemPool.createFrom(CardDb.instance().getAllTraditionalCards(), InventoryItem.class);
|
ItemPool.createFrom(CardDb.instance().getAllTraditionalCards(), InventoryItem.class);
|
||||||
private boolean showingFullCatalog = false;
|
private boolean showingFullCatalog = false;
|
||||||
|
private DragCell allDecksParent = null;
|
||||||
|
private DragCell deckGenParent = null;
|
||||||
|
|
||||||
// get pricelist:
|
// get pricelist:
|
||||||
private final ReadPriceList r = new ReadPriceList();
|
private final ReadPriceList r = new ReadPriceList();
|
||||||
@@ -484,6 +489,9 @@ public final class CEditorQuestCardShop extends ACEditorBase<InventoryItem, Deck
|
|||||||
+ "% of their value.<br>" + maxSellingPrice + "</html>");
|
+ "% of their value.<br>" + maxSellingPrice + "</html>");
|
||||||
|
|
||||||
VCardCatalog.SINGLETON_INSTANCE.getStatLabel(SEditorUtil.StatTypes.PACK).setVisible(true);
|
VCardCatalog.SINGLETON_INSTANCE.getStatLabel(SEditorUtil.StatTypes.PACK).setVisible(true);
|
||||||
|
|
||||||
|
deckGenParent = removeTab(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
allDecksParent = removeTab(VAllDecks.SINGLETON_INSTANCE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
@@ -516,6 +524,14 @@ public final class CEditorQuestCardShop extends ACEditorBase<InventoryItem, Deck
|
|||||||
|
|
||||||
VCardCatalog.SINGLETON_INSTANCE.getStatLabel(SEditorUtil.StatTypes.PACK).setVisible(false);
|
VCardCatalog.SINGLETON_INSTANCE.getStatLabel(SEditorUtil.StatTypes.PACK).setVisible(false);
|
||||||
|
|
||||||
|
//Re-add tabs
|
||||||
|
if (deckGenParent != null) {
|
||||||
|
deckGenParent.addDoc(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
if (allDecksParent != null) {
|
||||||
|
allDecksParent.addDoc(VAllDecks.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,8 +33,11 @@ import forge.gui.deckeditor.tables.EditorTableView;
|
|||||||
import forge.gui.deckeditor.tables.SColumnUtil;
|
import forge.gui.deckeditor.tables.SColumnUtil;
|
||||||
import forge.gui.deckeditor.tables.SColumnUtil.ColumnName;
|
import forge.gui.deckeditor.tables.SColumnUtil.ColumnName;
|
||||||
import forge.gui.deckeditor.tables.TableColumnInfo;
|
import forge.gui.deckeditor.tables.TableColumnInfo;
|
||||||
|
import forge.gui.deckeditor.views.VAllDecks;
|
||||||
import forge.gui.deckeditor.views.VCardCatalog;
|
import forge.gui.deckeditor.views.VCardCatalog;
|
||||||
import forge.gui.deckeditor.views.VCurrentDeck;
|
import forge.gui.deckeditor.views.VCurrentDeck;
|
||||||
|
import forge.gui.deckeditor.views.VDeckgen;
|
||||||
|
import forge.gui.framework.DragCell;
|
||||||
import forge.gui.framework.EDocID;
|
import forge.gui.framework.EDocID;
|
||||||
import forge.item.CardDb;
|
import forge.item.CardDb;
|
||||||
import forge.item.CardPrinted;
|
import forge.item.CardPrinted;
|
||||||
@@ -55,6 +58,8 @@ import forge.util.IStorage;
|
|||||||
*/
|
*/
|
||||||
public final class CEditorVariant extends ACEditorBase<CardPrinted, Deck> {
|
public final class CEditorVariant extends ACEditorBase<CardPrinted, Deck> {
|
||||||
private final DeckController<Deck> controller;
|
private final DeckController<Deck> controller;
|
||||||
|
private DragCell allDecksParent = null;
|
||||||
|
private DragCell deckGenParent = null;
|
||||||
private final Predicate<CardPrinted> cardPoolCondition;
|
private final Predicate<CardPrinted> cardPoolCondition;
|
||||||
private final EDocID exitToScreen;
|
private final EDocID exitToScreen;
|
||||||
|
|
||||||
@@ -166,6 +171,9 @@ public final class CEditorVariant extends ACEditorBase<CardPrinted, Deck> {
|
|||||||
|
|
||||||
SEditorUtil.resetUI();
|
SEditorUtil.resetUI();
|
||||||
|
|
||||||
|
deckGenParent = removeTab(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
allDecksParent = removeTab(VAllDecks.SINGLETON_INSTANCE);
|
||||||
|
|
||||||
this.controller.newModel();
|
this.controller.newModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,6 +185,19 @@ public final class CEditorVariant extends ACEditorBase<CardPrinted, Deck> {
|
|||||||
// Override the submenu save choice - tell it to go to "constructed".
|
// Override the submenu save choice - tell it to go to "constructed".
|
||||||
Singletons.getModel().getPreferences().setPref(FPref.SUBMENU_CURRENTMENU, exitToScreen.toString());
|
Singletons.getModel().getPreferences().setPref(FPref.SUBMENU_CURRENTMENU, exitToScreen.toString());
|
||||||
|
|
||||||
return SEditorIO.confirmSaveChanges();
|
if (!SEditorIO.confirmSaveChanges())
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Re-add tabs
|
||||||
|
if (deckGenParent != null) {
|
||||||
|
deckGenParent.addDoc(VDeckgen.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
if (allDecksParent != null) {
|
||||||
|
allDecksParent.addDoc(VAllDecks.SINGLETON_INSTANCE);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -220,23 +220,23 @@ public final class SLayoutIO {
|
|||||||
final String dir = NewConstants.LAYOUT_DIR;
|
final String dir = NewConstants.LAYOUT_DIR;
|
||||||
|
|
||||||
switch(FControl.SINGLETON_INSTANCE.getState()) {
|
switch(FControl.SINGLETON_INSTANCE.getState()) {
|
||||||
case FControl.HOME_SCREEN:
|
case HOME_SCREEN:
|
||||||
fileDefault = dir + "home_default.xml";
|
fileDefault = dir + "home_default.xml";
|
||||||
filePreferred = dir + "home_preferred.xml";
|
filePreferred = dir + "home_preferred.xml";
|
||||||
break;
|
break;
|
||||||
case FControl.MATCH_SCREEN:
|
case MATCH_SCREEN:
|
||||||
fileDefault = dir + "match_default.xml";
|
fileDefault = dir + "match_default.xml";
|
||||||
filePreferred = dir + "match_preferred.xml";
|
filePreferred = dir + "match_preferred.xml";
|
||||||
break;
|
break;
|
||||||
case FControl.DECK_EDITOR_CONSTRUCTED:
|
case DECK_EDITOR_CONSTRUCTED:
|
||||||
case FControl.DECK_EDITOR_LIMITED:
|
case DECK_EDITOR_LIMITED:
|
||||||
case FControl.DECK_EDITOR_QUEST:
|
case DECK_EDITOR_QUEST:
|
||||||
case FControl.DRAFTING_PROCESS:
|
case DRAFTING_PROCESS:
|
||||||
case FControl.QUEST_CARD_SHOP:
|
case QUEST_CARD_SHOP:
|
||||||
fileDefault = dir + "editor_default.xml";
|
fileDefault = dir + "editor_default.xml";
|
||||||
filePreferred = dir + "editor_preferred.xml";
|
filePreferred = dir + "editor_preferred.xml";
|
||||||
break;
|
break;
|
||||||
case FControl.QUEST_BAZAAR:
|
case QUEST_BAZAAR:
|
||||||
fileDefault = dir + "bazaar_default.xml";
|
fileDefault = dir + "bazaar_default.xml";
|
||||||
filePreferred = dir + "bazaar_preferred.xml";
|
filePreferred = dir + "bazaar_preferred.xml";
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -62,8 +62,8 @@ public enum CHomeUI implements ICDoc {
|
|||||||
VHomeUI.SINGLETON_INSTANCE.getLblEditor().setCommand(new Command() {
|
VHomeUI.SINGLETON_INSTANCE.getLblEditor().setCommand(new Command() {
|
||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() {
|
||||||
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_CONSTRUCTED);
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorConstructed());
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorConstructed());
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_CONSTRUCTED);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -49,8 +49,8 @@ public enum CSubmenuQuestDecks implements ICDoc {
|
|||||||
if (!SSubmenuQuestUtil.checkActiveQuest("Create a Deck.")) {
|
if (!SSubmenuQuestUtil.checkActiveQuest("Create a Deck.")) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_QUEST);
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorQuest(Singletons.getModel().getQuest()));
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorQuest(Singletons.getModel().getQuest()));
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_QUEST);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -250,9 +250,9 @@ public class SSubmenuQuestUtil {
|
|||||||
if (!checkActiveQuest("visit the Spell Shop.")) {
|
if (!checkActiveQuest("visit the Spell Shop.")) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_QUEST);
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(
|
||||||
new CEditorQuestCardShop(Singletons.getModel().getQuest()));
|
new CEditorQuestCardShop(Singletons.getModel().getQuest()));
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_QUEST);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** */
|
/** */
|
||||||
@@ -260,7 +260,7 @@ public class SSubmenuQuestUtil {
|
|||||||
if (!checkActiveQuest("Visit the Bazzar.")) {
|
if (!checkActiveQuest("Visit the Bazzar.")) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Singletons.getControl().changeState(FControl.QUEST_BAZAAR);
|
Singletons.getControl().changeState(FControl.Screens.QUEST_BAZAAR);
|
||||||
Singletons.getView().getFrame().validate();
|
Singletons.getView().getFrame().validate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ public enum CSubmenuDraft implements ICDoc {
|
|||||||
draft.showGui(new BoosterDraft(CardPoolLimitation.Custom));
|
draft.showGui(new BoosterDraft(CardPoolLimitation.Custom));
|
||||||
}
|
}
|
||||||
|
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_LIMITED);
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DRAFTING_PROCESS);
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(draft);
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(draft);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -227,8 +227,8 @@ public enum CSubmenuSealed implements ICDoc {
|
|||||||
final ACEditorBase<? extends InventoryItem, T> editor = (ACEditorBase<? extends InventoryItem, T>) new CEditorLimited(
|
final ACEditorBase<? extends InventoryItem, T> editor = (ACEditorBase<? extends InventoryItem, T>) new CEditorLimited(
|
||||||
Singletons.getModel().getDecks().getSealed());
|
Singletons.getModel().getDecks().getSealed());
|
||||||
|
|
||||||
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_LIMITED);
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(editor);
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(editor);
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_LIMITED);
|
|
||||||
editor.getDeckController().setModel((T) sealed);
|
editor.getDeckController().setModel((T) sealed);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -79,8 +79,9 @@ public enum CSubmenuArchenemy implements ICDoc {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorVariant(Singletons.getModel().getDecks().getScheme(),predSchemes,EDocID.HOME_ARCHENEMY));
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_CONSTRUCTED);
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_CONSTRUCTED);
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(
|
||||||
|
new CEditorVariant(Singletons.getModel().getDecks().getScheme(),predSchemes,EDocID.HOME_ARCHENEMY));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -78,9 +78,9 @@ public enum CSubmenuPlanechase implements ICDoc {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorVariant(Singletons.getModel().getDecks().getPlane(),predPlanes,EDocID.HOME_PLANECHASE));
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_CONSTRUCTED);
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_CONSTRUCTED);
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(
|
||||||
|
new CEditorVariant(Singletons.getModel().getDecks().getPlane(), predPlanes, EDocID.HOME_PLANECHASE));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ public class ControlWinLose {
|
|||||||
public void actionOnQuit() {
|
public void actionOnQuit() {
|
||||||
// Reset other stuff
|
// Reset other stuff
|
||||||
saveOptions();
|
saveOptions();
|
||||||
Singletons.getControl().changeState(FControl.HOME_SCREEN);
|
Singletons.getControl().changeState(FControl.Screens.HOME_SCREEN);
|
||||||
SOverlayUtils.hideOverlay();
|
SOverlayUtils.hideOverlay();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -301,7 +301,7 @@ public class QuestWinLose extends ControlWinLose {
|
|||||||
Singletons.getModel().getPreferences().writeMatchPreferences();
|
Singletons.getModel().getPreferences().writeMatchPreferences();
|
||||||
Singletons.getModel().getPreferences().save();
|
Singletons.getModel().getPreferences().save();
|
||||||
|
|
||||||
Singletons.getControl().changeState(FControl.HOME_SCREEN);
|
Singletons.getControl().changeState(FControl.Screens.HOME_SCREEN);
|
||||||
|
|
||||||
SOverlayUtils.hideOverlay();
|
SOverlayUtils.hideOverlay();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -282,7 +282,7 @@ public enum TargetingOverlay {
|
|||||||
@Override
|
@Override
|
||||||
public void paintComponent(final Graphics g) {
|
public void paintComponent(final Graphics g) {
|
||||||
// No need for this except in match view
|
// No need for this except in match view
|
||||||
if (FControl.SINGLETON_INSTANCE.getState() != 1) { return; }
|
if (FControl.SINGLETON_INSTANCE.getState() != FControl.Screens.MATCH_SCREEN) { return; }
|
||||||
|
|
||||||
super.paintComponent(g);
|
super.paintComponent(g);
|
||||||
|
|
||||||
|
|||||||
@@ -425,31 +425,29 @@ public class DeckLister extends JPanel implements ILocalRepaint {
|
|||||||
switch (this.gametype) {
|
switch (this.gametype) {
|
||||||
case Quest:
|
case Quest:
|
||||||
final CEditorQuest qEditor = new CEditorQuest(Singletons.getModel().getQuest());
|
final CEditorQuest qEditor = new CEditorQuest(Singletons.getModel().getQuest());
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(qEditor);
|
|
||||||
qEditor.load(d0);
|
qEditor.load(d0);
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_QUEST);
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_QUEST);
|
||||||
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(qEditor);
|
||||||
break;
|
break;
|
||||||
case Constructed:
|
case Constructed:
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(new CEditorConstructed());
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_CONSTRUCTED);
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_CONSTRUCTED);
|
final CEditorConstructed cEditor = new CEditorConstructed();
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.getCurrentEditorController().getDeckController().load(d0.getName());
|
cEditor.getDeckController().load(d0.getName());
|
||||||
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(cEditor);
|
||||||
break;
|
break;
|
||||||
case Sealed:
|
case Sealed:
|
||||||
final ACEditorBase<?, T> sEditor = (ACEditorBase<?, T>)
|
final ACEditorBase<?, T> sEditor = (ACEditorBase<?, T>)
|
||||||
new CEditorLimited(Singletons.getModel().getDecks().getSealed());
|
new CEditorLimited(Singletons.getModel().getDecks().getSealed());
|
||||||
|
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(sEditor);
|
|
||||||
|
|
||||||
sEditor.getDeckController().load(d0.getName());
|
sEditor.getDeckController().load(d0.getName());
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_LIMITED);
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_LIMITED);
|
||||||
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(sEditor);
|
||||||
break;
|
break;
|
||||||
case Draft:
|
case Draft:
|
||||||
final ACEditorBase<?, T> dEditor = (ACEditorBase<?, T>)
|
final ACEditorBase<?, T> dEditor = (ACEditorBase<?, T>)
|
||||||
new CEditorLimited(Singletons.getModel().getDecks().getDraft());
|
new CEditorLimited(Singletons.getModel().getDecks().getDraft());
|
||||||
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(dEditor);
|
|
||||||
|
|
||||||
dEditor.getDeckController().load(d0.getName());
|
dEditor.getDeckController().load(d0.getName());
|
||||||
FControl.SINGLETON_INSTANCE.changeState(FControl.DECK_EDITOR_LIMITED);
|
FControl.SINGLETON_INSTANCE.changeState(FControl.Screens.DECK_EDITOR_LIMITED);
|
||||||
|
CDeckEditorUI.SINGLETON_INSTANCE.setCurrentEditorController(dEditor);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ public enum FView {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// All is ready to go - fire up home screen and discard splash frame.
|
// All is ready to go - fire up home screen and discard splash frame.
|
||||||
Singletons.getControl().changeState(FControl.HOME_SCREEN);
|
Singletons.getControl().changeState(FControl.Screens.HOME_SCREEN);
|
||||||
//CMainMenu.SINGLETON_INSTANCE.selectPrevious();
|
//CMainMenu.SINGLETON_INSTANCE.selectPrevious();
|
||||||
|
|
||||||
FView.this.frmSplash.dispose();
|
FView.this.frmSplash.dispose();
|
||||||
@@ -203,7 +203,7 @@ public enum FView {
|
|||||||
|
|
||||||
/** @return {@link forge.view.ViewBazaarUI} */
|
/** @return {@link forge.view.ViewBazaarUI} */
|
||||||
public ViewBazaarUI getViewBazaar() {
|
public ViewBazaarUI getViewBazaar() {
|
||||||
if (Singletons.getControl().getState() != FControl.QUEST_BAZAAR) {
|
if (Singletons.getControl().getState() != FControl.Screens.QUEST_BAZAAR) {
|
||||||
throw new IllegalArgumentException("FView$getViewBazaar\n"
|
throw new IllegalArgumentException("FView$getViewBazaar\n"
|
||||||
+ "may only be called while the bazaar UI is showing.");
|
+ "may only be called while the bazaar UI is showing.");
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user