mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 12:48:00 +00:00
Support toggling want unique on the fly for Catalog
This commit is contained in:
@@ -33,6 +33,7 @@ import forge.itemmanager.ItemColumn;
|
||||
import forge.itemmanager.ItemManager.ContextMenuBuilder;
|
||||
import forge.itemmanager.ItemManagerConfig;
|
||||
import forge.limited.BoosterDraft;
|
||||
import forge.menu.FCheckBoxMenuItem;
|
||||
import forge.menu.FDropDownMenu;
|
||||
import forge.menu.FMenuItem;
|
||||
import forge.menu.FPopupMenu;
|
||||
@@ -320,6 +321,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
||||
});
|
||||
}
|
||||
}));
|
||||
((DeckEditorPage)getSelectedPage()).buildDeckMenu(this);
|
||||
}
|
||||
};
|
||||
menu.show(btnMoreOptions, 0, btnMoreOptions.getHeight());
|
||||
@@ -496,6 +498,9 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
||||
super(caption0, icon0);
|
||||
}
|
||||
|
||||
protected void buildDeckMenu(FPopupMenu menu) {
|
||||
}
|
||||
|
||||
protected abstract void initialize();
|
||||
}
|
||||
|
||||
@@ -740,7 +745,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
||||
cardManager.setPool(cardpool);
|
||||
break;
|
||||
default:
|
||||
cardManager.setPool(ItemPool.createFrom(FModel.getMagicDb().getCommonCards().getUniqueCards(), PaperCard.class), true);
|
||||
cardManager.setPool(ItemPool.createFrom(FModel.getMagicDb().getCommonCards().getAllCards(), PaperCard.class), true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -851,6 +856,21 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void buildDeckMenu(FPopupMenu menu) {
|
||||
if (cardManager.getConfig().getShowUniqueCardsOption()) {
|
||||
menu.addItem(new FCheckBoxMenuItem("Unique Cards Only", cardManager.getWantUnique(), new FEventHandler() {
|
||||
@Override
|
||||
public void handleEvent(FEvent e) {
|
||||
boolean wantUnique = !cardManager.getWantUnique();
|
||||
cardManager.setWantUnique(wantUnique);
|
||||
cardManager.refresh();
|
||||
cardManager.getConfig().setUniqueCardsOnly(wantUnique);
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected static class DeckSectionPage extends CardManagerPage {
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.w3c.dom.NodeList;
|
||||
public enum ItemManagerConfig {
|
||||
STRING_ONLY(SColumnUtil.getStringColumn(), false, false, true,
|
||||
null, null, 1, 0),
|
||||
CARD_CATALOG(SColumnUtil.getCatalogDefaultColumns(true), true, false, false,
|
||||
CARD_CATALOG(SColumnUtil.getCatalogDefaultColumns(true), true, true, false,
|
||||
null, null, 4, 0),
|
||||
DECK_EDITOR(SColumnUtil.getDeckEditorDefaultColumns(), false, false, true,
|
||||
GroupDef.DEFAULT, ColumnDef.CMC, 4, 1),
|
||||
|
||||
Reference in New Issue
Block a user