[Esbox-commits] r2035 - branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/api/vm/vmware

eswartz at garage.maemo.org eswartz at garage.maemo.org
Thu Aug 27 23:32:09 EEST 2009


Author: eswartz
Date: 2009-08-27 23:32:08 +0300 (Thu, 27 Aug 2009)
New Revision: 2035

Modified:
   branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/api/vm/vmware/MaemoSDKVMInstaller.java
Log:
-- Directly show Build Machines page instead of the "you need a build machine" dialog
-- Respond to cancellation when unzipping

Modified: branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/api/vm/vmware/MaemoSDKVMInstaller.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/api/vm/vmware/MaemoSDKVMInstaller.java	2009-08-27 19:50:09 UTC (rev 2034)
+++ branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/api/vm/vmware/MaemoSDKVMInstaller.java	2009-08-27 20:32:08 UTC (rev 2035)
@@ -27,8 +27,10 @@
 import org.eclipse.core.runtime.Path;
 import org.eclipse.jface.dialogs.ProgressMonitorDialog;
 import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.window.Window;
+import org.eclipse.jface.preference.PreferenceDialog;
 import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.dialogs.PreferencesUtil;
+import org.maemo.esbox.internal.api.maemosdk.ui.preferences.MaemoSDKPreferenceIds;
 import org.maemo.esbox.internal.api.vm.vmware.MaemoSDKVMInfo.Status;
 import org.maemo.esbox.internal.scratchbox.sb1.ui.wizard.NewScratchbox1SDKWizard;
 import org.maemo.esbox.internal.scratchbox.sb1.ui.wizard.NewScratchbox1TargetWizard;
@@ -36,7 +38,6 @@
 import org.maemo.esbox.internal.vm.vmware.ui.wizards.MaemoSDKVMInstallData;
 import org.maemo.esbox.vm.core.IVirtualMachine;
 import org.maemo.esbox.vm.core.IVirtualMachineConfiguration;
-import org.maemo.esbox.vm.ui.SelectVirtualMachineDialog;
 import org.maemo.esbox.vm.vmware.IVMwareConfiguration;
 import org.maemo.mica.common.core.Policy;
 import org.maemo.mica.common.core.machine.IBuildMachine;
@@ -48,8 +49,6 @@
 import org.maemo.mica.internal.api.common.core.filesystem.FilesystemUtils;
 import org.maemo.mica.internal.api.linux.packages.core.aptinstall.AptInstallerHelper;
 
-import com.nokia.cpp.internal.api.utils.ui.WorkbenchUtils;
-
 /**
  * This class wraps the main methods used during installation of Maemo SDK
  * virtual image.
@@ -227,10 +226,13 @@
 										if (previousProgressValue < progressValue) {
 											previousProgressValue = progressValue;
 											monitor.worked(1);
+											if (monitor.isCanceled())
+												return;
 										}
 										monitor.subTask("Uncompressing " + zipEntry
 												+ "\t\t"
 												+ String.format(Locale.US, "%.2f", getProgress(lenght,totalRead)) + "%");
+										
 									}
 									fileOutputStream.close();
 									zipInputStream.closeEntry();
@@ -331,10 +333,18 @@
 		shell.getDisplay().syncExec(new Runnable() {
 
 			public void run() {
-				SelectVirtualMachineDialog dialog = new SelectVirtualMachineDialog(
-						WorkbenchUtils.getActiveShell());
-				int result = dialog.open();
-				if (result != Window.OK)
+				PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(
+						null,	/* do not tie to a shell to avoid #4438 */ 
+						MaemoSDKPreferenceIds.BUILD_MACHINE_PREFS_ID,
+						new String[] { 
+							MaemoSDKPreferenceIds.ESBOX_PREFERENCE_CATEGORY_ID,
+								MaemoSDKPreferenceIds.BUILD_MACHINE_PREFS_ID, 
+							},
+						null);
+				dialog.open();
+				
+				// check for valid build machine
+				if (MachineRegistry.getInstance().getCurrentBuildMachines().length == 0)
 					statuses[0] = Activator.createErrorStatus("Virtual image was not properly configured.", null);
 				else
 					statuses[0] = Activator.createStatus(IStatus.OK, "Virtual image configured.");



More information about the Esbox-commits mailing list