From 7c4d064aad2e2fbf6b1a89913f4fa826e95c6255 Mon Sep 17 00:00:00 2001 From: kohleman <kohleman> Date: Mon, 25 Jan 2010 15:04:33 +0000 Subject: [PATCH] [LMS-1208] changed the question mark to an info icon SVN: 14430 --- .../ui/field/PropertyFieldFactory.java | 4 ++- .../application/ui/widget/FieldUtil.java | 28 ++++++++----------- .../cisd/openbis/public/css/openbis.css | 6 +++- 3 files changed, 20 insertions(+), 18 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/PropertyFieldFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/PropertyFieldFactory.java index e3da8724c6f..e6fa76e123b 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/PropertyFieldFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/field/PropertyFieldFactory.java @@ -19,6 +19,7 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.field; import java.util.Date; import com.extjs.gxt.ui.client.widget.form.Field; +import com.google.gwt.user.client.ui.AbstractImagePrototype; import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; @@ -48,7 +49,8 @@ public class PropertyFieldFactory String description = pt.getDescription(); if (StringUtils.isBlank(description) == false) { - FieldUtil.addInfoIcon(field, description); + AbstractImagePrototype infoIcon = AbstractImagePrototype.create(viewContext.getImageBundle().getInfoIcon()); + FieldUtil.addInfoIcon(field, description, infoIcon.createImage()); } return fieldHolder; } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java index a8a9c25dcb1..52ee8a3ea5f 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/widget/FieldUtil.java @@ -25,14 +25,10 @@ import com.extjs.gxt.ui.client.widget.MessageBox; import com.extjs.gxt.ui.client.widget.WidgetComponent; import com.extjs.gxt.ui.client.widget.form.Field; import com.extjs.gxt.ui.client.widget.form.TextField; -import com.google.gwt.event.dom.client.ClickEvent; -import com.google.gwt.event.dom.client.ClickHandler; import com.google.gwt.user.client.Command; import com.google.gwt.user.client.DeferredCommand; import com.google.gwt.user.client.Element; -import com.google.gwt.user.client.ui.Widget; - -import ch.systemsx.cisd.openbis.generic.client.web.client.application.renderer.LinkRenderer; +import com.google.gwt.user.client.ui.Image; /** * Utilities for {@link Field} class. @@ -41,7 +37,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.renderer.L */ public class FieldUtil { - private static final String INFO_LINK_LABEL = "[?]"; private static final int[] INFO_LINK_FIELD_OFFSETS = new int[] { 20, 3 }; @@ -108,8 +103,9 @@ public class FieldUtil /** * Adds '?' to the field and allows to display chosen message in the info box. + * @param image */ - public static void addInfoIcon(final Field<?> field, final String message) + public static void addInfoIcon(final Field<?> field, final String message, final Image image) { // WORKAROUND: Based on GXT functionality for displaying error icon, until there is no // dedicated mechanism for showing info icons in GXT @@ -117,15 +113,15 @@ public class FieldUtil { public void handleEvent(BaseEvent be) { - final Widget detailsLink = - LinkRenderer.getLinkWidget(INFO_LINK_LABEL, new ClickHandler() - { - public void onClick(ClickEvent event) - { - MessageBox.info("Info", message, null); - } - }); - final WidgetComponent info = new WidgetComponent(detailsLink); + final WidgetComponent info = new WidgetComponent(image); + info.setStyleName("hands"); + info.sinkEvents(Events.OnClick.getEventCode()); + info.addListener(Events.OnClick, new Listener<BaseEvent>(){ + public void handleEvent(BaseEvent e) + { + MessageBox.info("Info", message, null); + }}); + Element parent = field.el().getParent().dom; info.render(parent); info.setStyleAttribute("display", "block"); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/css/openbis.css b/openbis/source/java/ch/systemsx/cisd/openbis/public/css/openbis.css index 17dcd47b640..4e2041944d0 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/public/css/openbis.css +++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/css/openbis.css @@ -228,4 +228,8 @@ body,div,td { .cisd-hidden { visibility: hidden !important; -} \ No newline at end of file +} + +.hands { + cursor:hand; +} -- GitLab