	public Control createContents(Composite parent) {
		Composite client = new Composite(parent, SWT.NULL);
		GridLayout layout = new GridLayout();
		layout.numColumns = 3;
		layout.marginWidth = layout.marginHeight = 0;
		client.setLayout(layout);
		client.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		Composite leftPanel = new Composite(client, SWT.NULL);
		GridLayout leftLayout = new GridLayout();
		leftLayout.numColumns = 1;
		leftLayout.marginWidth = leftLayout.marginHeight = 0;
		leftPanel.setLayout(leftLayout);
		leftPanel.setLayoutData(new GridData(GridData.FILL_BOTH));
		Label label = new Label(leftPanel, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.jobsLabel")); 
		createJobViewer(leftPanel);
		Composite centerPanel = new Composite(client, SWT.NULL);
		GridLayout centerLayout = new GridLayout();
		centerLayout.numColumns = 1;
		centerLayout.marginWidth = centerLayout.marginHeight = 0;
		centerPanel.setLayout(centerLayout);
		centerPanel.setLayoutData(new GridData(GridData.FILL_BOTH));
		label = new Label(centerPanel, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.siteLabel")); 
		createSiteViewer(centerPanel);
		Composite rightPanel = new Composite(client, SWT.NULL);
		GridLayout rightLayout = new GridLayout();
		rightLayout.numColumns = 1;
		rightLayout.marginWidth = rightLayout.marginHeight = 0;
		rightPanel.setLayout(rightLayout);
		rightPanel.setLayoutData(new GridData(GridData.FILL_VERTICAL));
		new Label(rightPanel, SWT.NULL);
		Composite buttonContainer = new Composite(rightPanel, SWT.NULL);
		GridLayout blayout = new GridLayout();
		blayout.marginWidth = blayout.marginHeight = 0;
		buttonContainer.setLayout(blayout);
		buttonContainer.setLayoutData(new GridData(GridData.FILL_VERTICAL));
		addButton = new Button(buttonContainer, SWT.PUSH);
		addButton.setText(UpdateUI.getString("InstallWizard.TargetPage.new")); 
		addButton.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent e) {
				addTargetLocation();
			}
		});
		addButton.setEnabled(false);
		addButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
		SWTUtil.setButtonDimensionHint(addButton);
		deleteButton = new Button(buttonContainer, SWT.PUSH);
		deleteButton.setText(UpdateUI.getString("InstallWizard.TargetPage.delete")); 
		deleteButton.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent e) {
				try {
					removeSelection();
				}
				catch (CoreException ex) {
					UpdateUI.logException(ex);
				}
			}
		});
		deleteButton.setEnabled(false);
		deleteButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
		SWTUtil.setButtonDimensionHint(deleteButton);		
		Composite status = new Composite(client, SWT.NULL);
		GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
		gd.horizontalSpan = 3;
		status.setLayoutData(gd);
		layout = new GridLayout();
		layout.numColumns = 2;
		status.setLayout(layout);
		label = new Label(status, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.requiredSpace")); 
		requiredSpaceLabel = new Label(status, SWT.NULL);
		requiredSpaceLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		label = new Label(status, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.availableSpace")); 
		availableSpaceLabel = new Label(status, SWT.NULL);
		availableSpaceLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		WorkbenchHelp.setHelp(client, "org.eclipse.update.ui.MultiTargetPage2"); 
		Dialog.applyDialogFont(parent);
		return client;
	}

	public Control createContents(Composite parent) {
		Composite client = new Composite(parent, SWT.NULL);
		GridLayout layout = new GridLayout();
		layout.numColumns = 3;
		layout.marginWidth = layout.marginHeight = 0;
		client.setLayout(layout);
		client.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		Composite leftPanel = new Composite(client, SWT.NULL);
		GridLayout leftLayout = new GridLayout();
		leftLayout.numColumns = 1;
		leftLayout.marginWidth = leftLayout.marginHeight = 0;
		leftPanel.setLayout(leftLayout);
		leftPanel.setLayoutData(new GridData(GridData.FILL_BOTH));
		Label label = new Label(leftPanel, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.jobsLabel")); 
		createJobViewer(leftPanel);
		Composite centerPanel = new Composite(client, SWT.NULL);
		GridLayout centerLayout = new GridLayout();
		centerLayout.numColumns = 1;
		centerLayout.marginWidth = centerLayout.marginHeight = 0;
		centerPanel.setLayout(centerLayout);
		centerPanel.setLayoutData(new GridData(GridData.FILL_BOTH));
		label = new Label(centerPanel, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.siteLabel")); 
		createSiteViewer(centerPanel);
		Composite rightPanel = new Composite(client, SWT.NULL);
		GridLayout rightLayout = new GridLayout();
		rightLayout.numColumns = 1;
		rightLayout.marginWidth = rightLayout.marginHeight = 0;
		rightPanel.setLayout(rightLayout);
		rightPanel.setLayoutData(new GridData(GridData.FILL_VERTICAL));
		new Label(rightPanel, SWT.NULL);
		Composite buttonContainer = new Composite(rightPanel, SWT.NULL);
		GridLayout blayout = new GridLayout();
		blayout.marginWidth = blayout.marginHeight = 0;
		buttonContainer.setLayout(blayout);
		buttonContainer.setLayoutData(new GridData(GridData.FILL_VERTICAL));
		addButton = new Button(buttonContainer, SWT.PUSH);
		addButton.setText(UpdateUI.getString("InstallWizard.TargetPage.new")); 
		addButton.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent e) {
				addTargetLocation();
			}
		});
		addButton.setEnabled(false);
		addButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
		SWTUtil.setButtonDimensionHint(addButton);
		deleteButton = new Button(buttonContainer, SWT.PUSH);
		deleteButton.setText(UpdateUI.getString("InstallWizard.TargetPage.delete")); 
		deleteButton.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent e) {
				try {
					removeSelection();
				}
				catch (CoreException ex) {
					UpdateUI.logException(ex);
				}
			}
		});
		deleteButton.setEnabled(false);
		deleteButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
		SWTUtil.setButtonDimensionHint(deleteButton);		
		Composite status = new Composite(client, SWT.NULL);
		GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
		gd.horizontalSpan = 3;
		status.setLayoutData(gd);
		layout = new GridLayout();
		layout.numColumns = 2;
		status.setLayout(layout);
		label = new Label(status, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.requiredSpace")); 
		requiredSpaceLabel = new Label(status, SWT.NULL);
		requiredSpaceLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		label = new Label(status, SWT.NULL);
		label.setText(UpdateUI.getString("InstallWizard.TargetPage.availableSpace")); 
		availableSpaceLabel = new Label(status, SWT.NULL);
		availableSpaceLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		WorkbenchHelp.setHelp(client, "org.eclipse.update.ui.MultiTargetPage2"); 
		Dialog.applyDialogFont(parent);
		return client;
	}
