diff options
author | Andrew Eidsness | 2014-05-26 11:13:20 +0000 |
---|---|---|
committer | Andrew Eidsness | 2014-05-26 11:14:07 +0000 |
commit | 955ddbdd756d2e4d621c42437c27e82be8db293c (patch) | |
tree | fa97641c116876d2e4c34803bb6cd0008b65e5a9 /extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui | |
parent | 5636682d02fec36b226e043dc22b92a94140196f (diff) | |
download | org.eclipse.papyrus-955ddbdd756d2e4d621c42437c27e82be8db293c.tar.gz org.eclipse.papyrus-955ddbdd756d2e4d621c42437c27e82be8db293c.tar.xz org.eclipse.papyrus-955ddbdd756d2e4d621c42437c27e82be8db293c.zip |
Remove use of new SWT.Shell()
SWT uses the Shell for internal management of windows. Among other
things, this means that modal dialogs are only modal within a single
Shell.
This patch changes a few locations where new shell's were being created
on the fly. I've modified these locations to use the dialog's currently
active shell instead.
Change-Id: Id88312a0b6da4d638f017727b734d75ffcd2df87
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Diffstat (limited to 'extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui')
-rw-r--r-- | extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui/src/org/eclipse/papyrus/cpp/codegen/ui/handlers/GenerateCodeHandler.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui/src/org/eclipse/papyrus/cpp/codegen/ui/handlers/GenerateCodeHandler.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui/src/org/eclipse/papyrus/cpp/codegen/ui/handlers/GenerateCodeHandler.java index 9f463b7ac17..4b1e7d08e19 100644 --- a/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui/src/org/eclipse/papyrus/cpp/codegen/ui/handlers/GenerateCodeHandler.java +++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen.ui/src/org/eclipse/papyrus/cpp/codegen/ui/handlers/GenerateCodeHandler.java @@ -30,7 +30,7 @@ import org.eclipse.papyrus.cpp.codegen.transformation.CppModelElementsCreator; import org.eclipse.papyrus.cpp.codegen.ui.Activator; import org.eclipse.papyrus.cpp.codegen.utils.ClassUtils; import org.eclipse.papyrus.cpp.codegen.utils.LocateCppProject; -import org.eclipse.swt.widgets.Shell; +import org.eclipse.swt.widgets.Display; import org.eclipse.uml2.uml.Classifier; import org.eclipse.uml2.uml.Package; import org.eclipse.uml2.uml.PackageableElement; @@ -131,8 +131,14 @@ public class GenerateCodeHandler extends CmdHandler { generate(mec, pe, new BasicEList<PackageableElement>(), true); if (AcceleoDriver.hasErrors() && !Headless) { - MessageDialog.openInformation(new Shell(), "Errors during code generation", //$NON-NLS-1$ - "Errors occured during code generation. Please check the error log"); //$NON-NLS-1$ + Display.getDefault().syncExec(new Runnable() { + @Override + public void run() { + MessageDialog.openInformation(Display.getCurrent().getActiveShell(), + "Errors during code generation", //$NON-NLS-1$ + "Errors occured during code generation. Please check the error log"); //$NON-NLS-1$ + } + }); } } return null; |