mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-09 01:05:38 +02:00
Bug 368552 - Hook up finish button.
This commit is contained in:
parent
7585db1990
commit
453f71f4c4
2 changed files with 18 additions and 6 deletions
|
@ -3,6 +3,7 @@ package org.eclipse.cdt.ui.wizards;
|
||||||
import org.eclipse.core.resources.ResourcesPlugin;
|
import org.eclipse.core.resources.ResourcesPlugin;
|
||||||
import org.eclipse.jface.dialogs.Dialog;
|
import org.eclipse.jface.dialogs.Dialog;
|
||||||
import org.eclipse.jface.viewers.IStructuredSelection;
|
import org.eclipse.jface.viewers.IStructuredSelection;
|
||||||
|
import org.eclipse.jface.wizard.IWizardPage;
|
||||||
import org.eclipse.jface.wizard.Wizard;
|
import org.eclipse.jface.wizard.Wizard;
|
||||||
import org.eclipse.swt.widgets.Composite;
|
import org.eclipse.swt.widgets.Composite;
|
||||||
import org.eclipse.ui.INewWizard;
|
import org.eclipse.ui.INewWizard;
|
||||||
|
@ -77,8 +78,13 @@ public class NewCDTProjectWizard extends Wizard implements INewWizard {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canFinish() {
|
public boolean canFinish() {
|
||||||
// TODO make sure we have everything in place first.
|
IWizardPage page = mainPage;
|
||||||
|
while (page != null) {
|
||||||
|
if (!page.isPageComplete())
|
||||||
return false;
|
return false;
|
||||||
|
page = page.getNextPage();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -89,6 +89,7 @@ public class TemplateSelectionPage extends WizardPage {
|
||||||
private final TemplateEngineUI uiEngine = TemplateEngineUI.getDefault();
|
private final TemplateEngineUI uiEngine = TemplateEngineUI.getDefault();
|
||||||
|
|
||||||
private TreeViewer templateTree;
|
private TreeViewer templateTree;
|
||||||
|
private Template selectedTemplate;
|
||||||
private IWizardPage[] nextPages;
|
private IWizardPage[] nextPages;
|
||||||
|
|
||||||
public TemplateSelectionPage() {
|
public TemplateSelectionPage() {
|
||||||
|
@ -177,21 +178,22 @@ public class TemplateSelectionPage extends WizardPage {
|
||||||
templateTree.addSelectionChangedListener(new ISelectionChangedListener() {
|
templateTree.addSelectionChangedListener(new ISelectionChangedListener() {
|
||||||
@Override
|
@Override
|
||||||
public void selectionChanged(SelectionChangedEvent event) {
|
public void selectionChanged(SelectionChangedEvent event) {
|
||||||
|
selectedTemplate = null;
|
||||||
|
nextPages = null;
|
||||||
IStructuredSelection selection = (IStructuredSelection)templateTree.getSelection();
|
IStructuredSelection selection = (IStructuredSelection)templateTree.getSelection();
|
||||||
Object selObj = selection.getFirstElement();
|
Object selObj = selection.getFirstElement();
|
||||||
if (selObj instanceof Node) {
|
if (selObj instanceof Node) {
|
||||||
Object object = ((Node)selObj).getObject();
|
Object object = ((Node)selObj).getObject();
|
||||||
if (object instanceof Template) {
|
if (object instanceof Template) {
|
||||||
IWizard wizard = getWizard();
|
IWizard wizard = getWizard();
|
||||||
nextPages = ((Template)object).getTemplateWizardPages(TemplateSelectionPage.this,
|
selectedTemplate = (Template)object;
|
||||||
|
nextPages = selectedTemplate.getTemplateWizardPages(TemplateSelectionPage.this,
|
||||||
wizard.getNextPage(TemplateSelectionPage.this), wizard);
|
wizard.getNextPage(TemplateSelectionPage.this), wizard);
|
||||||
setPageComplete(true);
|
setPageComplete(true);
|
||||||
} else {
|
} else {
|
||||||
nextPages = null;
|
|
||||||
setPageComplete(false);
|
setPageComplete(false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
nextPages = null;
|
|
||||||
setPageComplete(false);
|
setPageComplete(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -202,9 +204,13 @@ public class TemplateSelectionPage extends WizardPage {
|
||||||
setControl(comp);
|
setControl(comp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Template getSelectedTemplate() {
|
||||||
|
return selectedTemplate;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isPageComplete() {
|
public boolean isPageComplete() {
|
||||||
return true;
|
return selectedTemplate != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Add table
Reference in a new issue