X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fui%2Fdialogs%2FCmsFeedback.java;h=91dc7fb768ac62373814c50a66aa2136ddf6564d;hb=fea7cd546f9c04c00f961918919dd6307c32cc8e;hp=3ee083394aa7f85c10d6c57e38c7a2288f737bdd;hpb=b7606ca647d875808ee3fdd19240dc9d51f40ac6;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..91dc7fb76 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 @@ -18,6 +18,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 +32,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 +42,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 */