Index: openide/dialogs/apichanges.xml
===================================================================
RCS file: /shared/data/ccvs/repository/openide/dialogs/apichanges.xml,v
retrieving revision 1.4
diff -u -r1.4 apichanges.xml
--- openide/dialogs/apichanges.xml 22 May 2005 07:14:42 -0000 1.4
+++ openide/dialogs/apichanges.xml 29 Nov 2005 08:14:26 -0000
@@ -17,6 +17,23 @@
Dialogs API
+
+
+ Interface AsynchronousInstantiatingIterator
added
+
+
+
+
+
+ The AsynchronousInstantiatingIterator
allows to implement
+ asynchronous instantating of newly created objects. Wizard's framework
+ esures that the method AsynchronousInstantiatingIterator.instantiate()
+ will be called ouside of an event queue.
+
+
+
+
+
Interface AsynchronousValidationgPanel
added
Index: openide/dialogs/manifest.mf
===================================================================
RCS file: /shared/data/ccvs/repository/openide/dialogs/manifest.mf,v
retrieving revision 1.5
diff -u -r1.5 manifest.mf
--- openide/dialogs/manifest.mf 10 Nov 2005 05:55:11 -0000 1.5
+++ openide/dialogs/manifest.mf 29 Nov 2005 08:14:26 -0000
@@ -1,5 +1,5 @@
Manifest-Version: 1.0
OpenIDE-Module: org.openide.dialogs
-OpenIDE-Module-Specification-Version: 6.4
+OpenIDE-Module-Specification-Version: 6.5
OpenIDE-Module-Localizing-Bundle: org/openide/Bundle.properties
Index: openide/dialogs/nbproject/project.xml
===================================================================
RCS file: /shared/data/ccvs/repository/openide/dialogs/nbproject/project.xml,v
retrieving revision 1.4
diff -u -r1.4 project.xml
--- openide/dialogs/nbproject/project.xml 25 May 2005 23:56:55 -0000 1.4
+++ openide/dialogs/nbproject/project.xml 29 Nov 2005 08:14:26 -0000
@@ -18,7 +18,7 @@
org.openide.dialogs
- org.openide.util
+ org.openide.awt
@@ -26,7 +26,7 @@
- org.openide.awt
+ org.openide.util
Index: openide/dialogs/src/org/openide/Bundle.properties
===================================================================
RCS file: /shared/data/ccvs/repository/openide/dialogs/src/org/openide/Bundle.properties,v
retrieving revision 1.2
diff -u -r1.2 Bundle.properties
--- openide/dialogs/src/org/openide/Bundle.properties 17 May 2005 00:15:01 -0000 1.2
+++ openide/dialogs/src/org/openide/Bundle.properties 29 Nov 2005 08:14:26 -0000
@@ -100,3 +100,7 @@
#Property - wizard panel image alignment
#NOI18N
STRING_WizardImageAlignment=South
+
+# MSG_WizardDescriptor_FinishInProgress=In progress ...
+MSG_WizardDescriptor_FinishInProgress=
+CTL_InstantiateProgress_Title=Instantiating new objects
Index: openide/dialogs/src/org/openide/WizardDescriptor.java
===================================================================
RCS file: /shared/data/ccvs/repository/openide/dialogs/src/org/openide/WizardDescriptor.java,v
retrieving revision 1.15
diff -u -r1.15 WizardDescriptor.java
--- openide/dialogs/src/org/openide/WizardDescriptor.java 20 Oct 2005 07:28:04 -0000 1.15
+++ openide/dialogs/src/org/openide/WizardDescriptor.java 29 Nov 2005 08:14:27 -0000
@@ -12,11 +12,13 @@
*/
package org.openide;
+import java.lang.reflect.InvocationTargetException;
import org.openide.awt.HtmlBrowser;
import org.openide.util.HelpCtx;
import org.openide.util.Mutex;
import org.openide.util.NbBundle;
import org.openide.util.RequestProcessor;
+import org.openide.util.RequestProcessor.Task;
import org.openide.util.Utilities;
import org.openide.util.WeakListeners;
@@ -1175,11 +1177,10 @@
panels.current().storeSettings(settings);
if (panels instanceof InstantiatingIterator) {
- // PENDING: disable all buttons to indicate that instantiate runs
- // PENDING: write something to errorMessage (e.g. Wait to finishing.)
showWaitCursor();
try {
+ assert ! (panels instanceof AsynchronousInstantiatingIterator) || ! SwingUtilities.isEventDispatchThread () : "Cannot invoked within EDT if AsynchronousInstantiatingIterator!";
newObjects = ((InstantiatingIterator) panels).instantiate();
} finally {
@@ -1461,6 +1462,26 @@
*/
public void uninitialize(WizardDescriptor wizard);
}
+
+ /**
+ * Iterator for a wizard that needs to somehow instantiate new objects outside ATW queue.
+ * (This interface can replace
+ * TemplateWizard.Iterator
+ * in a template's declaration.)
+ * @since org.openide/1 6.5
+ */
+ public interface AsynchronousInstantiatingIterator extends InstantiatingIterator {
+
+ /**
+ * Is called in separate thread when the Finish button
+ * are clicked and allows implement asynchronous
+ * instantating of newly created objects.
+ *
+ * @throws WizardValidationException when validation fails
+ */
+ public Set /*