diff options
author | Sergey Grant | 2015-09-22 01:05:51 +0000 |
---|---|---|
committer | Sergey Grant | 2015-09-22 01:05:51 +0000 |
commit | 185b2f2ceedbfec5af3c4fff3f01efa60e2b60eb (patch) | |
tree | dae62bd2de31b177638114917ee01b6a9efe13c3 | |
parent | 9b3572e496319993d7f08b76470945a511bcade6 (diff) | |
download | eclipse.pde.ui-185b2f2ceedbfec5af3c4fff3f01efa60e2b60eb.tar.gz eclipse.pde.ui-185b2f2ceedbfec5af3c4fff3f01efa60e2b60eb.tar.xz eclipse.pde.ui-185b2f2ceedbfec5af3c4fff3f01efa60e2b60eb.zip |
Bug 477865 - API Baseline Wizard Finish Button Unconditionally disabledI20150922-0800
New instance of a page created every time the wizard is navigated and
so the Finish condition is never satisfied
Signed-off-by: Sergey Grant <sergeygrant@google.com>
Change-Id: I6ea5e2aba421cbba71fad00283515f6d533f6734
-rw-r--r-- | apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/SelectApiBaselineTypeWizardPage.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/SelectApiBaselineTypeWizardPage.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/SelectApiBaselineTypeWizardPage.java index 8d826e0b23..4cd645e087 100644 --- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/SelectApiBaselineTypeWizardPage.java +++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/SelectApiBaselineTypeWizardPage.java @@ -29,6 +29,8 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.ui.PlatformUI; public class SelectApiBaselineTypeWizardPage extends WizardPage { + private TargetBasedApiBaselineWizardPage targetPage; + private DirectoryBasedApiBaselineWizardPage directoryPage; protected SelectApiBaselineTypeWizardPage() { super(WizardMessages.ApiProfileWizardPage_1); @@ -87,11 +89,18 @@ public class SelectApiBaselineTypeWizardPage extends WizardPage { public IWizardPage getNextPage() { IWizardPage next = null; if (locationIsTarget.getSelection()) { - next = new TargetBasedApiBaselineWizardPage(null); + if (targetPage == null) { + targetPage = new TargetBasedApiBaselineWizardPage(null); + ((Wizard) getWizard()).addPage(targetPage); + } + next = targetPage; } else if (locationIsDirectory.getSelection()) { - next = new DirectoryBasedApiBaselineWizardPage(null); + if (directoryPage == null) { + directoryPage = new DirectoryBasedApiBaselineWizardPage(null); + ((Wizard) getWizard()).addPage(directoryPage); + } + next = directoryPage; } - ((Wizard) getWizard()).addPage(next); return next; } |