mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 10:48:00 +00:00
Add PaperCard renderer for DualListBox
This commit is contained in:
@@ -8,6 +8,7 @@ import forge.card.CardRenderer;
|
||||
import forge.card.CardZoom;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
import forge.item.PaperCard;
|
||||
import forge.screens.match.views.VPrompt;
|
||||
import forge.screens.match.views.VStack;
|
||||
import forge.toolbox.FEvent.FEventHandler;
|
||||
@@ -110,6 +111,9 @@ public class DualListBox<T> extends FDialog {
|
||||
if (item instanceof Card) {
|
||||
renderer = new CardItemRenderer();
|
||||
}
|
||||
else if (item instanceof PaperCard) {
|
||||
renderer = new PaperCardItemRenderer();
|
||||
}
|
||||
else if (item instanceof SpellAbility) {
|
||||
renderer = new SpellAbilityItemRenderer();
|
||||
}
|
||||
@@ -369,6 +373,34 @@ public class DualListBox<T> extends FDialog {
|
||||
CardRenderer.drawCardListItem(g, font, foreColor, (Card)value, 0, null, x, y, w, h);
|
||||
}
|
||||
}
|
||||
//special renderer for paper cards
|
||||
private class PaperCardItemRenderer extends ItemRenderer {
|
||||
@Override
|
||||
public FSkinFont getDefaultFont() {
|
||||
return FSkinFont.get(14);
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getItemHeight() {
|
||||
return CardRenderer.getCardListItemHeight();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean tap(T value, float x, float y, int count) {
|
||||
return CardRenderer.cardListItemTap((PaperCard)value, x, y, count);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean longPress(T value, float x, float y) {
|
||||
CardZoom.show((PaperCard)value);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawValue(Graphics g, T value, FSkinFont font, FSkinColor foreColor, boolean pressed, float x, float y, float w, float h) {
|
||||
CardRenderer.drawCardListItem(g, font, foreColor, (PaperCard)value, 0, null, x, y, w, h);
|
||||
}
|
||||
}
|
||||
|
||||
private class ChoiceList extends FList<T> {
|
||||
private List<Integer> selectedIndices = new ArrayList<Integer>();
|
||||
|
||||
Reference in New Issue
Block a user