use of net.pms.PMS in project UniversalMediaServer by UniversalMediaServer.
the class TranscodingTab method addEngines.
public void addEngines() {
ArrayList<Player> disPlayers = new ArrayList<>();
ArrayList<Player> ordPlayers = new ArrayList<>();
PMS r = PMS.get();
for (String id : configuration.getEnginesAsList(r.getRegistry())) {
// boolean matched = false;
for (Player p : PlayerFactory.getAllPlayers()) {
if (p.id().equals(id)) {
ordPlayers.add(p);
if (p.isGPUAccelerationReady()) {
videoHWacceleration.setEnabled(true);
videoHWacceleration.setSelected(configuration.isGPUAcceleration());
}
// matched = true;
}
}
}
for (Player p : PlayerFactory.getAllPlayers()) {
if (!ordPlayers.contains(p)) {
ordPlayers.add(p);
disPlayers.add(p);
}
}
for (Player p : ordPlayers) {
TreeNodeSettings engine = new TreeNodeSettings(p.name(), p, null);
if (disPlayers.contains(p)) {
engine.setEnable(false);
}
JComponent jc = engine.getConfigPanel();
if (jc == null) {
jc = buildEmpty();
}
jc.addComponentListener(new ComponentAdapter() {
@Override
public void componentShown(ComponentEvent e) {
handleCardComponentChange(e.getComponent());
}
});
tabbedPanel.add(engine.id(), jc);
parent[p.purpose()].add(engine);
}
for (int i = 0; i < tree.getRowCount(); i++) {
tree.expandRow(i);
}
tree.setSelectionRow(0);
}