[jboss-cvs] jbosside/core/plugins/org.jboss.ide.eclipse.firstrun/src/main/org/jboss/ide/eclipse/firstrun/wizard ...
Robert Stryker
rawblem at gmail.com
Mon Nov 13 19:05:11 EST 2006
User: rawb
Date: 06/11/13 19:05:11
Modified: core/plugins/org.jboss.ide.eclipse.firstrun/src/main/org/jboss/ide/eclipse/firstrun/wizard
FirstRunWizard.java
Log:
The API has been changed. Three new boolean methods have been added. hasPossibleChanges() returns whether a page performs changes to a workspace
shouldShow() designates whether the page should show anyway, so long as one page hasPossibleChanges()
isDefaultPage() designates that this page should show even if 0 pages return true for hasPossibleChanges()
Revision Changes Path
1.8 +25 -11 jbosside/core/plugins/org.jboss.ide.eclipse.firstrun/src/main/org/jboss/ide/eclipse/firstrun/wizard/FirstRunWizard.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: FirstRunWizard.java
===================================================================
RCS file: /cvsroot/jboss/jbosside/core/plugins/org.jboss.ide.eclipse.firstrun/src/main/org/jboss/ide/eclipse/firstrun/wizard/FirstRunWizard.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- FirstRunWizard.java 13 Nov 2006 23:39:50 -0000 1.7
+++ FirstRunWizard.java 14 Nov 2006 00:05:11 -0000 1.8
@@ -46,20 +46,21 @@
public class FirstRunWizard extends Wizard {
private String workspaceLatest;
- private FirstRunWizardPageConfigElement[] pageObjects;
+ private FirstRunWizardPageConfigElement[] pages = null;
+ private int numPagesWithChanges = -1;
public FirstRunWizard(String workspaceLatest) {
this.workspaceLatest = workspaceLatest;
- pageObjects = getExtensions();
+ fillAcceptablePages();
}
public int numPages() {
- return pageObjects.length;
+ return pages.length;
}
public boolean performFinish() {
- if( getPageCount() == 0 )
+ if( numPagesWithChanges == 0 )
return true;
IRunnableWithProgress op = new IRunnableWithProgress() {
@@ -105,15 +106,24 @@
}
public void addPages() {
- int num = getNumPagesWithChanges();
- if( num != 0 ) {
+ AbstractFirstRunPage page;
+ for( int i = 0; i < pages.length; i++ ) {
+ page = pages[i].getPage();
+ page.initialize();
+ addPage(page);
+ }
+ }
+
+ protected void fillAcceptablePages() {
+ ArrayList list = new ArrayList();
+ FirstRunWizardPageConfigElement[] pageObjects = getExtensions();
+ numPagesWithChanges = getNumPagesWithChanges(pageObjects);
+ if( numPagesWithChanges != 0 ) {
// there are pages that need to be shown...
for( int i = 0; i < pageObjects.length; i++ ) {
AbstractFirstRunPage page = pageObjects[i].getPage();
if( page.shouldShow() ) {
- // If it demands to be shown, show it
- page.initialize();
- addPage(page);
+ list.add(pageObjects[i]);
}
}
} else {
@@ -121,14 +131,18 @@
for( int i = 0; i < pageObjects.length; i++ ) {
AbstractFirstRunPage page = pageObjects[i].getPage();
if( page.isDefaultPage() ) {
- page.initialize();
- addPage(page);
+ list.add(pageObjects[i]);
}
}
}
+ pages = (FirstRunWizardPageConfigElement[]) list.toArray(new FirstRunWizardPageConfigElement[list.size()]);
}
public int getNumPagesWithChanges() {
+ return numPagesWithChanges;
+ }
+
+ protected int getNumPagesWithChanges(FirstRunWizardPageConfigElement[] pageObjects) {
int total = 0;
for( int i = 0; i < pageObjects.length; i++ ) {
AbstractFirstRunPage page = pageObjects[i].getPage();
More information about the jboss-cvs-commits
mailing list