From 80aa6551648927e055f7a6fd4bb9d59398768f8e Mon Sep 17 00:00:00 2001 From: drdev Date: Sat, 25 Jan 2014 05:50:12 +0000 Subject: [PATCH] Add "Folder" column to DeckManagers --- .../java/forge/gui/deckeditor/DeckProxy.java | 4 ++-- .../gui/toolbox/itemmanager/DeckManager.java | 4 +++- .../toolbox/itemmanager/views/ItemColumn.java | 16 ++++++++++++++++ 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/forge-gui/src/main/java/forge/gui/deckeditor/DeckProxy.java b/forge-gui/src/main/java/forge/gui/deckeditor/DeckProxy.java index 2f44bb8aff6..4bcef18267a 100644 --- a/forge-gui/src/main/java/forge/gui/deckeditor/DeckProxy.java +++ b/forge-gui/src/main/java/forge/gui/deckeditor/DeckProxy.java @@ -49,11 +49,11 @@ public class DeckProxy implements InventoryItem { private final Function fnGetDeck; public DeckProxy(Deck deck, GameType type, IStorage storage) { - this(deck, type, null, storage, null); + this(deck, type, "", storage, null); } public DeckProxy(IHasName deck, Function fnGetDeck, GameType type, IStorage storage) { - this(deck, type, null, storage, fnGetDeck); + this(deck, type, "", storage, fnGetDeck); } private DeckProxy(IHasName deck, GameType type, String path, IStorage storage, Function fnGetDeck) { diff --git a/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/DeckManager.java b/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/DeckManager.java index 092dc78b8e8..71aafb6d02c 100644 --- a/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/DeckManager.java +++ b/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/DeckManager.java @@ -57,6 +57,7 @@ public final class DeckManager extends ItemManager { private Command cmdDelete, cmdSelect; private final Map columns = SColumnUtil.getColumns( ColumnDef.DECK_ACTIONS, + ColumnDef.DECK_FOLDER, ColumnDef.NAME, ColumnDef.DECK_COLOR, ColumnDef.DECK_FORMAT, @@ -74,7 +75,8 @@ public final class DeckManager extends ItemManager { this.gametype = gt; columns.get(ColumnDef.DECK_ACTIONS).setCellRenderer(new DeckActionsRenderer()); - columns.get(ColumnDef.NAME).setSortPriority(1); + columns.get(ColumnDef.DECK_FOLDER).setSortPriority(1); + columns.get(ColumnDef.NAME).setSortPriority(2); this.addSelectionListener(new ListSelectionListener() { @Override diff --git a/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/views/ItemColumn.java b/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/views/ItemColumn.java index 70399f4bb40..8f37a23aef3 100644 --- a/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/views/ItemColumn.java +++ b/forge-gui/src/main/java/forge/gui/toolbox/itemmanager/views/ItemColumn.java @@ -396,6 +396,19 @@ public class ItemColumn extends TableColumn { return toDeck(from.getKey()); } }), + DECK_FOLDER("Folder", "Folder", 80, -1, -1, SortState.ASC, new ItemCellRenderer(), + new Function, Comparable>() { + @Override + public Comparable apply(final Entry from) { + return toDeckFolder(from.getKey()); + } + }, + new Function, Object>() { + @Override + public Object apply(final Entry from) { + return toDeckFolder(from.getKey()); + } + }), DECK_COLOR("Color", "Color", 70, 70, 70, SortState.ASC, new ColorSetRenderer(), new Function, Comparable>() { @Override @@ -546,5 +559,8 @@ public class ItemColumn extends TableColumn { private static ColorSet toDeckColor(final InventoryItem i) { return i instanceof DeckProxy ? ((DeckProxy) i).getColor() : null; } + private static String toDeckFolder(final InventoryItem i) { + return i instanceof DeckProxy ? ((DeckProxy) i).getPath() + "/" : null; + } } }