X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fui%2Fdialogs%2FCmsFeedback.java;h=30e2ad34ff4e3d90edf653ffd4d7ec779e21de11;hb=03f646fd0d7e7ce393694c836c779bc67a4eef55;hp=3ee083394aa7f85c10d6c57e38c7a2288f737bdd;hpb=088c1b517a543e935d8ab65c3b2fd2d0269b551d;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui/src/org/argeo/cms/ui/dialogs/CmsFeedback.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/dialogs/CmsFeedback.java index 3ee083394..30e2ad34f 100644 --- a/org.argeo.cms.ui/src/org/argeo/cms/ui/dialogs/CmsFeedback.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/dialogs/CmsFeedback.java @@ -7,7 +7,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.argeo.cms.CmsMsg; import org.argeo.eclipse.ui.Selected; -import org.argeo.eclipse.ui.dialogs.LightweightDialog; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; @@ -18,6 +17,7 @@ import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; +/** A dialog feedback based on a {@link LightweightDialog}. */ public class CmsFeedback extends LightweightDialog { private final static Log log = LogFactory.getLog(CmsFeedback.class); @@ -31,7 +31,7 @@ public class CmsFeedback extends LightweightDialog { log.error(message, e); } - public static void show(String message, Throwable e) { + public static CmsFeedback show(String message, Throwable e) { // rethrow ThreaDeath in order to make sure that RAP will properly clean // up the UI thread if (e instanceof ThreadDeath) @@ -41,13 +41,17 @@ public class CmsFeedback extends LightweightDialog { CmsFeedback cmsFeedback = new CmsFeedback(null, message, e); cmsFeedback.setBlockOnOpen(false); cmsFeedback.open(); + return cmsFeedback; } catch (Throwable e1) { log.error("Cannot open error feedback (" + e.getMessage() + "), original error below", e); + return null; } } - public static void show(String message) { - new CmsFeedback(null, message, null).open(); + public static CmsFeedback show(String message) { + CmsFeedback cmsFeedback = new CmsFeedback(null, message, null); + cmsFeedback.open(); + return cmsFeedback; } /** Tries to find a display */