clean up core classes

This commit is contained in:
Maxmtg
2013-11-23 08:12:40 +00:00
parent 800b3f8272
commit 37849b88e2
5 changed files with 21 additions and 20 deletions

View File

@@ -102,9 +102,4 @@ public class StaticData {
return variantCards;
}
public List<PaperCard> getAllCards() {
List<PaperCard> cards = new ArrayList<PaperCard>(commonCards.getAllCards());
cards.addAll(variantCards.getAllCards());
return cards;
}
}

View File

@@ -321,6 +321,11 @@ public final class CardDb implements ICardDatabase {
return Lists.newArrayList(Iterables.filter(this.roAllCards, predicate));
}
@Override
public Iterator<PaperCard> iterator() {
return this.roAllCards.iterator();
}
public Predicate<? super PaperCard> wasPrintedInSets(List<String> setCodes) {
return new PredicateExistsInSets(setCodes);
}

View File

@@ -8,7 +8,7 @@ import com.google.common.base.Predicate;
import forge.item.PaperCard;
public interface ICardDatabase {
public interface ICardDatabase extends Iterable<PaperCard> {
PaperCard tryGetCard(String cardName);
PaperCard tryGetCard(String cardName, boolean fromLastSet);
PaperCard tryGetCard(String cardName, String edition);

View File

@@ -100,20 +100,18 @@ public final class ManaCost implements Comparable<ManaCost> {
return "{" + this.genericCost + "}";
}
final StringBuilder xb = new StringBuilder();
final StringBuilder sb = new StringBuilder();
if (this.genericCost > 0) {
sb.append("{" + this.genericCost + "}");
}
for (final ManaCostShard s : this.shards) {
if (s == ManaCostShard.X) {
xb.append(s.toString());
}
else {
sb.insert(0, s.toString());
} else {
sb.append(s.toString());
}
}
return xb.toString() + sb.toString();
return sb.toString();
}
/**

View File

@@ -17,6 +17,8 @@ import net.miginfocom.swing.MigLayout;
import org.apache.commons.lang3.tuple.Pair;
import com.google.common.collect.Iterables;
import forge.Command;
import forge.Singletons;
import forge.gui.WrapLayout;
@@ -125,18 +127,19 @@ public enum VWorkshopCatalog implements IVDoc<CWorkshopCatalog> {
}
this.cardManager = new CardManager(this.statLabels, true);
this.cardManager.setPool(ItemPool.createFrom(Singletons.getMagicDb().getAllCards(), PaperCard.class), true);
Iterable<PaperCard> allCards = Iterables.concat(Singletons.getMagicDb().getCommonCards(), Singletons.getMagicDb().getVariantCards());
this.cardManager.setPool(ItemPool.createFrom(allCards, PaperCard.class), true);
this.cardManagerContainer.setItemManager(this.cardManager);
this.cardManager.addSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
PaperCard card = cardManager.getSelectedItem();
CDetail.SINGLETON_INSTANCE.showCard(card);
CPicture.SINGLETON_INSTANCE.showImage(card);
CCardScript.SINGLETON_INSTANCE.showCard(card);
}
});
@Override
public void valueChanged(ListSelectionEvent e) {
PaperCard card = cardManager.getSelectedItem();
CDetail.SINGLETON_INSTANCE.showCard(card);
CPicture.SINGLETON_INSTANCE.showImage(card);
CCardScript.SINGLETON_INSTANCE.showCard(card);
}
});
}
private void _setupSpinner (JSpinner spinner) {