1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-09 17:25:38 +02:00

Bug 368552 - Hook up finish button.

This commit is contained in:
Doug Schaefer 2012-01-27 16:09:46 -05:00
parent 7585db1990
commit 453f71f4c4
2 changed files with 18 additions and 6 deletions

View file

@ -3,6 +3,7 @@ package org.eclipse.cdt.ui.wizards;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.wizard.IWizardPage;
import org.eclipse.jface.wizard.Wizard;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.INewWizard;
@ -77,8 +78,13 @@ public class NewCDTProjectWizard extends Wizard implements INewWizard {
@Override
public boolean canFinish() {
// TODO make sure we have everything in place first.
return false;
IWizardPage page = mainPage;
while (page != null) {
if (!page.isPageComplete())
return false;
page = page.getNextPage();
}
return true;
}
}

View file

@ -89,6 +89,7 @@ public class TemplateSelectionPage extends WizardPage {
private final TemplateEngineUI uiEngine = TemplateEngineUI.getDefault();
private TreeViewer templateTree;
private Template selectedTemplate;
private IWizardPage[] nextPages;
public TemplateSelectionPage() {
@ -177,21 +178,22 @@ public class TemplateSelectionPage extends WizardPage {
templateTree.addSelectionChangedListener(new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
selectedTemplate = null;
nextPages = null;
IStructuredSelection selection = (IStructuredSelection)templateTree.getSelection();
Object selObj = selection.getFirstElement();
if (selObj instanceof Node) {
Object object = ((Node)selObj).getObject();
if (object instanceof Template) {
IWizard wizard = getWizard();
nextPages = ((Template)object).getTemplateWizardPages(TemplateSelectionPage.this,
selectedTemplate = (Template)object;
nextPages = selectedTemplate.getTemplateWizardPages(TemplateSelectionPage.this,
wizard.getNextPage(TemplateSelectionPage.this), wizard);
setPageComplete(true);
} else {
nextPages = null;
setPageComplete(false);
}
} else {
nextPages = null;
setPageComplete(false);
}
}
@ -202,9 +204,13 @@ public class TemplateSelectionPage extends WizardPage {
setControl(comp);
}
public Template getSelectedTemplate() {
return selectedTemplate;
}
@Override
public boolean isPageComplete() {
return true;
return selectedTemplate != null;
}
@Override