mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 02:08:00 +00:00
Fix NPE when trying to remove card
This commit is contained in:
@@ -339,17 +339,14 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
//hide deck header on while drafting
|
//hide deck header on while drafting
|
||||||
setDeck(new Deck());
|
setDeck(new Deck());
|
||||||
deckHeader.setVisible(false);
|
deckHeader.setVisible(false);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
if (newDeck == null) {
|
if (newDeck == null) {
|
||||||
editorType.getController().newModel();
|
editorType.getController().newModel();
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
editorType.getController().setDeck(newDeck);
|
editorType.getController().setDeck(newDeck);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
if (editorType == EditorType.Draft || editorType == EditorType.QuestDraft) {
|
if (editorType == EditorType.Draft || editorType == EditorType.QuestDraft) {
|
||||||
tabPages[0].hideTab(); //hide Draft Pack page if editing existing draft deck
|
tabPages[0].hideTab(); //hide Draft Pack page if editing existing draft deck
|
||||||
}
|
}
|
||||||
@@ -897,8 +894,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
public void handleEvent(FEvent e) {
|
public void handleEvent(FEvent e) {
|
||||||
if (max == 1) {
|
if (max == 1) {
|
||||||
callback.run(max);
|
callback.run(max);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
final Localizer localizer = Localizer.getInstance();
|
final Localizer localizer = Localizer.getInstance();
|
||||||
GuiChoose.getInteger(cardManager.getSelectedItem() + " - " + verb + " " + localizer.getMessage("lblHowMany"), 1, max, 20, callback);
|
GuiChoose.getInteger(cardManager.getSelectedItem() + " - " + verb + " " + localizer.getMessage("lblHowMany"), 1, max, 20, callback);
|
||||||
}
|
}
|
||||||
@@ -1150,8 +1146,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
default:
|
default:
|
||||||
// Do nothing
|
// Do nothing
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
//if a commander has been set, only show cards that match its color identity
|
//if a commander has been set, only show cards that match its color identity
|
||||||
switch (editorType) {
|
switch (editorType) {
|
||||||
case Commander:
|
case Commander:
|
||||||
@@ -1176,8 +1171,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
default:
|
default:
|
||||||
if (cardManager.getWantUnique()) {
|
if (cardManager.getWantUnique()) {
|
||||||
cardManager.setPool(editorType.applyCardFilter(FModel.getUniqueCardsNoAlt(), additionalFilter), true);
|
cardManager.setPool(editorType.applyCardFilter(FModel.getUniqueCardsNoAlt(), additionalFilter), true);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
cardManager.setPool(editorType.applyCardFilter(FModel.getAllCardsNoAlt(), additionalFilter), true);
|
cardManager.setPool(editorType.applyCardFilter(FModel.getAllCardsNoAlt(), additionalFilter), true);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1250,8 +1244,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
CardPreferences.save();
|
CardPreferences.save();
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
menu.addItem(new FMenuItem(localizer.getMessage("lblRemoveFavorites"), Forge.hdbuttons ? FSkinImage.HDSTAR_OUTLINE : FSkinImage.STAR_OUTLINE, new FEventHandler() {
|
menu.addItem(new FMenuItem(localizer.getMessage("lblRemoveFavorites"), Forge.hdbuttons ? FSkinImage.HDSTAR_OUTLINE : FSkinImage.STAR_OUTLINE, new FEventHandler() {
|
||||||
@Override
|
@Override
|
||||||
public void handleEvent(FEvent e) {
|
public void handleEvent(FEvent e) {
|
||||||
@@ -1376,8 +1369,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
protected void updateCaption() {
|
protected void updateCaption() {
|
||||||
if (deckSection == DeckSection.Commander) {
|
if (deckSection == DeckSection.Commander) {
|
||||||
caption = captionPrefix; //don't display count for commander section since it won't be more than 1
|
caption = captionPrefix; //don't display count for commander section since it won't be more than 1
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
caption = captionPrefix + " (" + parentScreen.getDeck().get(deckSection).countAll() + ")";
|
caption = captionPrefix + " (" + parentScreen.getDeck().get(deckSection).countAll() + ")";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1767,8 +1759,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
if (isStored) {
|
if (isStored) {
|
||||||
if (isModelInSyncWithFolder()) {
|
if (isModelInSyncWithFolder()) {
|
||||||
setSaved(true);
|
setSaved(true);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
notifyModelChanged();
|
notifyModelChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1779,8 +1770,7 @@ public class FDeckEditor extends TabPageScreen<FDeckEditor> {
|
|||||||
}
|
}
|
||||||
if (model != null) {
|
if (model != null) {
|
||||||
editor.setDeck(model.getHumanDeck());
|
editor.setDeck(model.getHumanDeck());
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
editor.setDeck(null);
|
editor.setDeck(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -525,6 +525,9 @@ public abstract class ItemManager<T extends InventoryItem> extends FContainer im
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void addItem(final T item, int qty) {
|
public void addItem(final T item, int qty) {
|
||||||
|
if (pool == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
pool.add(item, qty);
|
pool.add(item, qty);
|
||||||
if (isUnfiltered()) {
|
if (isUnfiltered()) {
|
||||||
model.addItem(item, qty);
|
model.addItem(item, qty);
|
||||||
|
|||||||
@@ -80,8 +80,7 @@ public final class ItemManagerModel<T extends InventoryItem> {
|
|||||||
if (data.count(item0) > 0) {
|
if (data.count(item0) > 0) {
|
||||||
if (isInfinite()) {
|
if (isInfinite()) {
|
||||||
data.removeAll(item0);
|
data.removeAll(item0);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
data.remove(item0, qty);
|
data.remove(item0, qty);
|
||||||
}
|
}
|
||||||
isListInSync = false;
|
isListInSync = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user