* Creates permanent GUI elements (source, algorithm combos, placeholder for the
* editors).
*/
private void createComponents(Composite parent)
{
final WorkbenchCorePlugin core = WorkbenchCorePlugin.getDefault();
parent.setLayout(new FillLayout());
this.scroller = new CScrolledComposite(parent, SWT.H_SCROLL | SWT.V_SCROLL);
scroller.setExpandHorizontal(true);
scroller.setExpandVertical(false);
final Composite innerComposite = GUIFactory.createSpacer(scroller);
final GridLayout gridLayout = (GridLayout) innerComposite.getLayout();
gridLayout.numColumns = 2;
gridLayout.makeColumnsEqualWidth = false;
scroller.setContent(innerComposite);
// Initialize sources, descriptors and source combo.
final ProcessingComponentSuite suite = core.getComponentSuite();
sourceViewer = createComboViewer(innerComposite, "Source", suite.getSources());
sourceViewer.addSelectionChangedListener(sourceSelectionListener);
sources = Maps.newHashMap();