*/
protected Control createDialogArea(Composite parent) {
Composite composite = (Composite) super.createDialogArea(parent);
createMessageArea(composite);
final CheckboxTreeViewer treeViewer = createTreeViewer(composite);
GridData data = new GridData(GridData.FILL_BOTH);
data.widthHint = convertWidthInCharsToPixels(60);
data.heightHint = convertHeightInCharsToPixels(18);
Tree treeWidget = treeViewer.getTree();
treeWidget.setLayoutData(data);
treeWidget.setFont(composite.getFont());
if(null != m_selection) {
for(Iterator iter = m_selection.iterator(); iter.hasNext();) {
treeViewer.setSubtreeChecked(iter.next(), true);
}
}
if(null != m_focusedElement) {
treeViewer.setSelection(new StructuredSelection(m_focusedElement), true);
}
treeViewer.addCheckStateListener(new ICheckStateListener() {
public void checkStateChanged(CheckStateChangedEvent event) {
Object element = event.getElement();
boolean add = event.getChecked();
if(add) {
m_selection.add(element);
} else {
m_selection.remove(element);
}
treeViewer.setSubtreeChecked(element, add);
updateOKStatus();
}
});
applyDialogFont(composite);