Commit | Line | Data |
---|---|---|
3cdf3fd8 NR |
1 | package be.nikiroo.fanfix_swing.gui.browser; |
2 | ||
3 | import java.util.ArrayList; | |
4 | import java.util.List; | |
5 | ||
6 | import javax.swing.tree.DefaultMutableTreeNode; | |
7 | ||
8 | import be.nikiroo.fanfix.Instance; | |
9 | import be.nikiroo.fanfix.data.MetaData; | |
10 | ||
11 | public class TagsTab extends BasicTab<List<String>> { | |
12 | public TagsTab(int index, String listenerCommand) { | |
13 | super(index, listenerCommand); | |
14 | } | |
15 | ||
16 | @Override | |
17 | protected List<String> createEmptyData() { | |
18 | return new ArrayList<String>(); | |
19 | } | |
20 | ||
21 | @Override | |
22 | protected void fillData(List<String> data) { | |
23 | try { | |
24 | List<MetaData> metas = Instance.getInstance().getLibrary().getList(); | |
25 | for (MetaData meta : metas) { | |
26 | List<String> tags = meta.getTags(); | |
27 | if (tags != null) { | |
28 | for (String tag : tags) { | |
29 | if (!data.contains(tag)) { | |
30 | data.add(tag); | |
31 | } | |
32 | } | |
33 | } | |
34 | } | |
35 | } catch (Exception e) { | |
36 | // TODO | |
37 | e.printStackTrace(); | |
38 | } | |
39 | } | |
40 | ||
41 | @Override | |
42 | protected String keyToElement(String key) { | |
43 | return key; | |
44 | } | |
45 | ||
46 | @Override | |
47 | protected String keyToDisplay(String key) { | |
48 | return key; | |
49 | } | |
50 | ||
51 | @Override | |
52 | protected int loadData(DefaultMutableTreeNode root, List<String> tags, String filter) { | |
53 | for (String tag : tags) { | |
54 | if (checkFilter(filter, tag)) { | |
55 | DefaultMutableTreeNode sourceNode = new DefaultMutableTreeNode(tag); | |
56 | root.add(sourceNode); | |
57 | } | |
58 | } | |
59 | ||
60 | return tags.size(); | |
61 | } | |
62 | } |