38 import org.eclipse.swt.widgets.Control; |
38 import org.eclipse.swt.widgets.Control; |
39 import org.eclipse.swt.widgets.Shell; |
39 import org.eclipse.swt.widgets.Shell; |
40 |
40 |
41 import com.nokia.carbide.cpp.ui.CarbideUIPlugin; |
41 import com.nokia.carbide.cpp.ui.CarbideUIPlugin; |
42 import com.nokia.carbide.cpp.ui.ICarbideSharedImages; |
42 import com.nokia.carbide.cpp.ui.ICarbideSharedImages; |
43 import com.nokia.carbide.remoteconnections.interfaces.IService; |
|
44 import com.nokia.cdt.internal.debug.launch.LaunchPlugin; |
43 import com.nokia.cdt.internal.debug.launch.LaunchPlugin; |
45 import com.nokia.cdt.internal.debug.launch.wizard.ILaunchCreationWizard; |
44 import com.nokia.cdt.internal.debug.launch.wizard.ILaunchCreationWizard; |
46 import com.nokia.cdt.internal.debug.launch.wizard.LaunchOptions; |
45 import com.nokia.cdt.internal.debug.launch.wizard.LaunchOptions; |
47 |
46 |
48 /** |
47 /** |
50 * |
49 * |
51 * See https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=10419 |
50 * See https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=10419 |
52 */ |
51 */ |
53 public abstract class AbstractLaunchWizard extends Wizard implements ILaunchCreationWizard { |
52 public abstract class AbstractLaunchWizard extends Wizard implements ILaunchCreationWizard { |
54 |
53 |
55 private LaunchWizardData launchData; |
54 protected IWizardData launchData; |
56 private AbstractUnifiedLaunchOptionsPage mainPage; |
55 private AbstractUnifiedLaunchOptionsPage mainPage; |
57 private Button advancedButton; |
56 private Button advancedButton; |
58 private boolean advancedEdit; |
57 private boolean advancedEdit; |
59 private IPageChangedListener pageChangedListener; |
58 private IPageChangedListener pageChangedListener; |
60 private boolean hasFinished; |
59 private boolean hasFinished; |
61 |
60 |
62 public AbstractLaunchWizard(LaunchOptions launchOptions, IService dbgService, String title) { |
61 public AbstractLaunchWizard(LaunchOptions launchOptions, String title) { |
63 launchData = new LaunchWizardData(launchOptions, dbgService); |
62 launchData = createWizardData(launchOptions); |
64 mainPage = createMainPage(launchData); |
63 mainPage = createMainPage(launchData); |
65 mainPage.initializeSettings(); |
64 mainPage.initializeSettings(); |
66 setWindowTitle(title); |
65 setWindowTitle(title); |
67 } |
66 } |
68 |
67 |
69 protected abstract AbstractUnifiedLaunchOptionsPage createMainPage(LaunchWizardData data); |
68 protected abstract AbstractUnifiedLaunchOptionsPage createMainPage(IWizardData data); |
70 |
69 |
71 /* (non-Javadoc) |
70 protected abstract IWizardData createWizardData(LaunchOptions options); |
72 * @see org.eclipse.jface.wizard.Wizard#addPages() |
71 |
73 */ |
|
74 @Override |
72 @Override |
75 public void addPages() { |
73 public void addPages() { |
76 addPage(mainPage); |
74 addPage(mainPage); |
77 } |
75 } |
78 |
76 |
79 /* (non-Javadoc) |
|
80 * @see org.eclipse.jface.wizard.Wizard#setContainer(org.eclipse.jface.wizard.IWizardContainer) |
|
81 */ |
|
82 @Override |
77 @Override |
83 public void setContainer(final IWizardContainer wizardContainer) { |
78 public void setContainer(final IWizardContainer wizardContainer) { |
84 super.setContainer(wizardContainer); |
79 super.setContainer(wizardContainer); |
85 |
80 |
86 // Thanks, JFace, for making it so hard to know when the UI is ready |
81 // Thanks, JFace, for making it so hard to know when the UI is ready |