debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/newwizard/AbstractLaunchWizard.java
author dadubrow
Mon, 18 Oct 2010 16:58:49 -0500
changeset 2160 3a82092877ea
child 2163 f0a9f2d04d4a
permissions -rw-r--r--
initial commit for PS wizard
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2160
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     1
/*
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     3
* All rights reserved.
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     4
* This component and the accompanying materials are made available
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     6
* which accompanies this distribution, and is available
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     8
*
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
     9
* Initial Contributors:
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    11
*
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    12
* Contributors:
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    13
*
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    14
* Description: 
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    15
*
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    16
*/
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    17
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    18
package com.nokia.cdt.internal.debug.launch.newwizard;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    19
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    20
import java.text.MessageFormat;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    21
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    22
import org.eclipse.core.runtime.CoreException;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    23
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    24
import org.eclipse.jface.dialogs.Dialog;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    25
import org.eclipse.jface.dialogs.IDialogConstants;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    26
import org.eclipse.jface.dialogs.IPageChangedListener;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    27
import org.eclipse.jface.dialogs.PageChangedEvent;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    28
import org.eclipse.jface.layout.GridDataFactory;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    29
import org.eclipse.jface.wizard.IWizardContainer;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    30
import org.eclipse.jface.wizard.Wizard;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    31
import org.eclipse.jface.wizard.WizardDialog;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    32
import org.eclipse.swt.SWT;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    33
import org.eclipse.swt.events.SelectionAdapter;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    34
import org.eclipse.swt.events.SelectionEvent;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    35
import org.eclipse.swt.layout.GridLayout;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    36
import org.eclipse.swt.widgets.Button;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    37
import org.eclipse.swt.widgets.Composite;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    38
import org.eclipse.swt.widgets.Control;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    39
import org.eclipse.swt.widgets.Shell;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    40
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    41
import com.nokia.carbide.cpp.ui.CarbideUIPlugin;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    42
import com.nokia.carbide.cpp.ui.ICarbideSharedImages;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    43
import com.nokia.carbide.remoteconnections.interfaces.IService;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    44
import com.nokia.cdt.internal.debug.launch.LaunchPlugin;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    45
import com.nokia.cdt.internal.debug.launch.wizard.ILaunchCreationWizard;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    46
import com.nokia.cdt.internal.debug.launch.wizard.LaunchOptions;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    47
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    48
/**
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    49
 * New launch wizard for Carbide 3.0.
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    50
 * 
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    51
 * See https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=10419
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    52
 */
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    53
public abstract class AbstractLaunchWizard extends Wizard implements ILaunchCreationWizard {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    54
	 
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    55
	private LaunchWizardData launchData;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    56
	private AbstractUnifiedLaunchOptionsPage mainPage;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    57
	private Button advancedButton;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    58
	private boolean advancedEdit;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    59
	private IPageChangedListener pageChangedListener;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    60
	private boolean hasFinished;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    61
	
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    62
	public AbstractLaunchWizard(LaunchOptions launchOptions, IService dbgService, String title) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    63
		launchData = new LaunchWizardData(launchOptions, dbgService);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    64
		mainPage = createMainPage(launchData); 
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    65
		mainPage.initializeSettings();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    66
		setWindowTitle(title);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    67
    }
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    68
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    69
	protected abstract AbstractUnifiedLaunchOptionsPage createMainPage(LaunchWizardData data);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    70
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    71
	/* (non-Javadoc)
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    72
	 * @see org.eclipse.jface.wizard.Wizard#addPages()
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    73
	 */
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    74
	@Override
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    75
	public void addPages() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    76
		addPage(mainPage);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    77
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    78
	
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    79
	/* (non-Javadoc)
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    80
	 * @see org.eclipse.jface.wizard.Wizard#setContainer(org.eclipse.jface.wizard.IWizardContainer)
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    81
	 */
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    82
	@Override
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    83
	public void setContainer(final IWizardContainer wizardContainer) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    84
		super.setContainer(wizardContainer);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    85
		
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    86
		// Thanks, JFace, for making it so hard to know when the UI is ready
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    87
		if (wizardContainer instanceof WizardDialog && advancedButton == null) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    88
			pageChangedListener = new IPageChangedListener() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    89
				
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    90
				public void pageChanged(PageChangedEvent event) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    91
					addAdvancedButton();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    92
					((WizardDialog)getContainer()).removePageChangedListener(pageChangedListener);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    93
				}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    94
			};
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    95
			((WizardDialog)wizardContainer).addPageChangedListener(pageChangedListener);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    96
		}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    97
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    98
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
    99
	protected void addAdvancedButton() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   100
		if (advancedButton == null) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   101
			Composite parent = (Composite) ((Dialog) getContainer()).buttonBar;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   102
			if (parent != null) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   103
				
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   104
				advancedButton = new Button(parent, SWT.CHECK);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   105
				GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).indent(6, 0).applyTo(advancedButton);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   106
				((GridLayout) parent.getLayout()).numColumns++;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   107
				advancedButton.moveBelow(parent.getChildren()[0]);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   108
				
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   109
				advancedButton.setText(Messages.getString("LaunchWizard.AdvancedLabel")); //$NON-NLS-1$
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   110
				advancedButton.setToolTipText(MessageFormat.format(
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   111
						Messages.getString("LaunchWizard.AdvancedTip"), //$NON-NLS-1$
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   112
						launchData.getModeLabel()));
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   113
				advancedButton.addSelectionListener(new SelectionAdapter() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   114
					@Override
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   115
					public void widgetSelected(SelectionEvent e) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   116
						updateDebugEditButton();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   117
					}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   118
				});
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   119
			}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   120
			
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   121
			// Thanks, JFace, for deleting validation messages on the first display
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   122
			mainPage.validatePage();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   123
			updateDebugEditButton();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   124
		}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   125
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   126
	
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   127
	@Override
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   128
	public boolean canFinish() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   129
		if (advancedEdit)
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   130
			return true;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   131
		return super.canFinish();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   132
	}	
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   133
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   134
	protected void updateDebugEditButton() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   135
		Button finishButton = findFinishButton();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   136
		if (finishButton != null) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   137
			advancedEdit = advancedButton.getSelection();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   138
			if (advancedEdit) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   139
				finishButton.setText(Messages.getString("LaunchWizard.EditLabel")); //$NON-NLS-1$
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   140
				finishButton.setToolTipText(Messages.getString("LaunchWizard.EditTip")); //$NON-NLS-1$
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   141
				getContainer().updateButtons();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   142
			} else {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   143
				finishButton.setText(launchData.getModeLabel());
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   144
				finishButton.setToolTipText(Messages.getString("LaunchWizard.FinishTip")); //$NON-NLS-1$
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   145
				getContainer().updateButtons();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   146
			}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   147
		}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   148
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   149
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   150
	/**
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   151
	 * Thanks, SWT and JFace, for making this so difficult
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   152
	 * @return the Finish button
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   153
	 */
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   154
	private Button findFinishButton() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   155
		if (getContainer() instanceof Dialog) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   156
			return findFinishButton((Composite) ((Dialog) getContainer()).buttonBar);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   157
		}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   158
		return null;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   159
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   160
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   161
	/**
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   162
	 * @param buttonBar
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   163
	 * @return
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   164
	 */
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   165
	private Button findFinishButton(Composite parent) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   166
		for (Control kid : parent.getChildren()) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   167
			if (kid instanceof Button) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   168
				if (kid.getData() instanceof Integer && (Integer) kid.getData() == IDialogConstants.FINISH_ID) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   169
					return (Button) kid;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   170
				}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   171
			}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   172
			else if (kid instanceof Composite) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   173
				Button button = findFinishButton((Composite) kid);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   174
				if (button != null)
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   175
					return button;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   176
			}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   177
		}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   178
		return null;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   179
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   180
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   181
	@Override
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   182
	public boolean performFinish() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   183
		hasFinished = true;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   184
		return true;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   185
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   186
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   187
	public boolean shouldOpenLaunchConfigurationDialog() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   188
		return hasFinished && advancedEdit;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   189
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   190
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   191
	public ILaunchConfigurationWorkingCopy getLaunchConfiguration() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   192
		if (!hasFinished)
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   193
			return null;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   194
		
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   195
		ILaunchConfigurationWorkingCopy config = null;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   196
		try {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   197
			config = launchData.createConfiguration();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   198
		} catch (CoreException e) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   199
			LaunchPlugin.log(e);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   200
		}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   201
		
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   202
		return config;
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   203
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   204
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   205
	public void init() {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   206
		setDefaultPageImageDescriptor(CarbideUIPlugin.getSharedImages().getImageDescriptor(ICarbideSharedImages.IMG_NEW_LAUNCH_CONFIG_WIZARD_BANNER));
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   207
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   208
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   209
	public int openWizard(Shell shell) {
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   210
		WizardDialog dialog = new WizardDialog(shell, this);
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   211
		return dialog.open();
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   212
	}
3a82092877ea initial commit for PS wizard
dadubrow
parents:
diff changeset
   213
}