mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 18:58:00 +00:00
Add ItemFilter.java (not committed by accident)
This commit is contained in:
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -15022,6 +15022,7 @@ src/main/java/forge/gui/toolbox/itemmanager/filters/CardQuestWorldFilter.java -t
|
|||||||
src/main/java/forge/gui/toolbox/itemmanager/filters/CardSetFilter.java -text
|
src/main/java/forge/gui/toolbox/itemmanager/filters/CardSetFilter.java -text
|
||||||
src/main/java/forge/gui/toolbox/itemmanager/filters/CardToughnessFilter.java -text
|
src/main/java/forge/gui/toolbox/itemmanager/filters/CardToughnessFilter.java -text
|
||||||
src/main/java/forge/gui/toolbox/itemmanager/filters/CardTypeFilter.java -text
|
src/main/java/forge/gui/toolbox/itemmanager/filters/CardTypeFilter.java -text
|
||||||
|
src/main/java/forge/gui/toolbox/itemmanager/filters/ItemFilter.java -text
|
||||||
src/main/java/forge/gui/toolbox/itemmanager/filters/ListLabelFilter.java -text
|
src/main/java/forge/gui/toolbox/itemmanager/filters/ListLabelFilter.java -text
|
||||||
src/main/java/forge/gui/toolbox/itemmanager/filters/TextFieldFilter.java -text
|
src/main/java/forge/gui/toolbox/itemmanager/filters/TextFieldFilter.java -text
|
||||||
src/main/java/forge/gui/toolbox/itemmanager/filters/ToggleButtonsFilter.java -text
|
src/main/java/forge/gui/toolbox/itemmanager/filters/ToggleButtonsFilter.java -text
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
package forge.gui.toolbox.itemmanager.filters;
|
||||||
|
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
import forge.Command;
|
||||||
|
import forge.gui.toolbox.FLabel;
|
||||||
|
import forge.gui.toolbox.itemmanager.ItemManager;
|
||||||
|
import forge.item.InventoryItem;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TODO: Write javadoc for this type.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("serial")
|
||||||
|
public abstract class ItemFilter<T extends InventoryItem> extends JPanel {
|
||||||
|
private final ItemManager<T> itemManager;
|
||||||
|
|
||||||
|
public enum FilterTypes {
|
||||||
|
CardCMC,
|
||||||
|
CardColor,
|
||||||
|
CardFormat,
|
||||||
|
CardPower,
|
||||||
|
CardQuestWorld,
|
||||||
|
CardSet,
|
||||||
|
CardToughness,
|
||||||
|
CardType
|
||||||
|
}
|
||||||
|
|
||||||
|
protected ItemFilter(ItemManager<T> itemManager0) {
|
||||||
|
this.itemManager = itemManager0;
|
||||||
|
this.setOpaque(false);
|
||||||
|
this.addComponents();
|
||||||
|
this.add(new FLabel.Builder().text("X").fontSize(10).hoverable(true)
|
||||||
|
.tooltip("Remove filter").cmdClick(new Command() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
itemManager.removeFilter(ItemFilter.this);
|
||||||
|
ItemFilter.this.onRemoved();
|
||||||
|
}
|
||||||
|
}).build(), "top");
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void applyChange() {
|
||||||
|
itemManager.buildFilterPredicate();
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract FilterTypes getType();
|
||||||
|
protected abstract void addComponents();
|
||||||
|
protected abstract void onRemoved();
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user