in plugins/org.apache.karaf.eik.ui/src/main/java/org/apache/karaf/eik/ui/KarafConfigurationTab.java [434:476]
private void createAvailableFeaturesControls(final Group group) {
GridData gd;
availableFeaturesViewer = CheckboxTableViewer.newCheckList(group, SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
final Table tree = availableFeaturesViewer.getTable();
final TableColumn column1 = new TableColumn(tree, SWT.LEFT);
column1.setText("Feature");
column1.setWidth(250);
final TableColumn column2 = new TableColumn(tree, SWT.LEFT);
column2.setText("Version");
column2.setWidth(150);
final TableColumn column3 = new TableColumn(tree, SWT.LEFT);
column3.setText("Repository");
column3.setWidth(150);
gd = new GridData(GridData.FILL_BOTH);
gd.heightHint = 200;
tree.setLayoutData(gd);
tree.setHeaderVisible(true);
availableFeaturesViewer.setContentProvider(new AvailableFeaturesContentProvider());
availableFeaturesViewer.setLabelProvider(new AvailableFeaturesLabelProvider());
availableFeaturesViewer.setInput(null);
availableFeaturesViewer.addCheckStateListener(new ICheckStateListener() {
@Override
public void checkStateChanged(final CheckStateChangedEvent event) {
final AvailableFeature f = (AvailableFeature) event.getElement();
if (event.getChecked()) {
if (!bootFeaturesList.contains(f.getFeatureName())) {
bootFeaturesList.add(f.getFeatureName());
bootFeaturesViewer.refresh();
}
} else {
bootFeaturesList.remove(f.getFeatureName());
bootFeaturesViewer.refresh();
}
KarafConfigurationTab.this.updateLaunchConfigurationDialog();
}
});
}