MCPcopy Create free account
hub / github.com/PCGen/pcgen / SkillTreeViewModel

Class SkillTreeViewModel

code/src/java/pcgen/gui2/tabs/skill/SkillTreeViewModel.java:53–312  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

51import org.apache.commons.lang3.StringUtils;
52
53public class SkillTreeViewModel
54 implements TreeViewModel<Skill>, DataView<Skill>, SkillBonusListener, ListSelectionListener
55{
56
57 private static final List<? extends DataViewColumn> COLUMNS =
58 Arrays.asList(new DefaultDataViewColumn("in_iskTotal", Integer.class, true),
59 new DefaultDataViewColumn("in_iskModifier", Integer.class, true),
60 new DefaultDataViewColumn("in_skillRanks", Float.class, true, true),
61 new DefaultDataViewColumn("in_classString", String.class, true),
62 new DefaultDataViewColumn("in_skillSkillCost", String.class,
63 SkillCost.CLASS.getCost() != SkillCost.CROSS_CLASS.getCost()),
64 new DefaultDataViewColumn("in_descrip", String.class), //$NON-NLS-1$
65 new DefaultDataViewColumn("in_source", String.class));
66 private final DefaultListFacade<TreeView<Skill>> treeviews;
67 private final CharacterFacade character;
68 private final CharacterLevelsFacade levels;
69 private final ListSelectionModel selectionModel;
70 private FilteredTreeViewTable<CharacterFacade, Skill> table;
71
72 public SkillTreeViewModel(CharacterFacade character, ListSelectionModel selectionModel)
73 {
74 this.character = character;
75 this.levels = character.getCharacterLevelsFacade();
76 this.selectionModel = selectionModel;
77
78 List<? extends TreeView<Skill>> views = Arrays.asList(SkillTreeView.NAME, SkillTreeView.TYPE_NAME,
79 SkillTreeView.KEYSTAT_NAME, SkillTreeView.KEYSTAT_TYPE_NAME, COST_NAME, COST_TYPE_NAME);
80 treeviews = new DefaultListFacade<>(views);
81 }
82
83 public void install(FilteredTreeViewTable<CharacterFacade, Skill> ftvt)
84 {
85 this.table = ftvt;
86 ftvt.setTreeViewModel(this);
87 levels.addSkillBonusListener(this);
88 selectionModel.addListSelectionListener(this);
89 }
90
91 public void uninstall()
92 {
93 table = null;
94 levels.removeSkillBonusListener(this);
95 selectionModel.removeListSelectionListener(this);
96 }
97
98 @Override
99 public ListFacade<? extends TreeView<Skill>> getTreeViews()
100 {
101 return treeviews;
102 }
103
104 @Override
105 public int getDefaultTreeViewIndex()
106 {
107 return 1;
108 }
109
110 @Override

Callers

nothing calls this directly

Calls 1

getCostMethod · 0.65

Tested by

no test coverage detected