public PluginPanel(List<PluginInfo> pluginInfoList) {
setPreferredSize(new Dimension(600, 600));
setLayout(new BorderLayout(2, 2));
JSplitPane sp = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
sp.setBorder(new EmptyBorder(6, 6, 6, 6));
sp.setResizeWeight(0.5);
pluginTable = new PluginTable(pluginInfoList);
pluginTable.addListSelectionListener(e -> {
PluginInfo info = pluginTable.getCurrentUpdateInfo();
updateInfoPanel(info);
});
sp.setTopComponent(new JScrollPane(pluginTable));
sp.setBottomComponent(createInfoBox());
add(sp, BorderLayout.CENTER);
alwaysShow = new JCheckBox("Always check for updates on startup.", PluginManager.getInstance().isAutoUpdateEnabled());
alwaysShow.addActionListener(event -> {
PluginManager.getInstance().setAutoUpdateEnabled(alwaysShow.isSelected());
});
alwaysShow.setAlignmentX(0.0f);
add(alwaysShow, BorderLayout.SOUTH);
}