diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/renderer/LinkRenderer.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/renderer/LinkRenderer.java index f9f70c4362883517533820273ea9dbaf0cd87642..384223dfdbad72db3b27ee17f19e9f803e199308 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/renderer/LinkRenderer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/renderer/LinkRenderer.java @@ -32,7 +32,6 @@ import com.google.gwt.user.client.ui.Hyperlink; import com.google.gwt.user.client.ui.Widget; import ch.systemsx.cisd.openbis.generic.client.web.client.application.CommonViewContext.ClientStaticState; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; import ch.systemsx.cisd.openbis.generic.client.web.client.application.model.BaseEntityModel; import ch.systemsx.cisd.openbis.generic.client.web.client.application.util.IDelegatedAction; @@ -128,12 +127,6 @@ public class LinkRenderer return DOM.toString(anchor); } - public static interface IURLProvider - { - /** @return URL to which redicection should be made or null if no redirection should occur */ - String tryGetURL(); - } - /** * @return {@link Anchor} GWT widget that is displayed as a link with given <var>text</var> and * a <var>listener</var> registered on the click event. @@ -214,30 +207,36 @@ public class LinkRenderer return link; } + public static interface IURLProvider + { + /** @return URL to which redicection should be made or null if no redirection should occur */ + String tryGetURL(); + } + /** - * Sets the click listener which executes the specified action if we are in normal view mode - * when the click occurs and redirects to the provided URL otherwise. - * - * @param viewContext + * Sets the click listener which executes the specified action when the click occurs if we are + * in normal view mode and redirects to the provided URL in simple view mode. */ - public static Widget createLink(Button button, final IDelegatedAction normalModeAction, - final IURLProvider urlProvider, final IViewContext<?> viewContext) + @SuppressWarnings("deprecation") + public static Widget createButtonLink(Button button, + final IDelegatedAction normalViewModeAction, + final IURLProvider simpleViewModeUrlProvider) { button.addSelectionListener(new SelectionListener<ButtonEvent>() { @Override public void componentSelected(ButtonEvent ce) { - if (viewContext.isSimpleMode()) + if (ClientStaticState.isSimpleMode()) { - String url = urlProvider.tryGetURL(); + String url = simpleViewModeUrlProvider.tryGetURL(); if (url != null) { History.newItem(url); // redirects } } else { - normalModeAction.execute(); + normalViewModeAction.execute(); } } }); diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentPlateLocationsSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentPlateLocationsSection.java index aeff845ff3cbdf7a9670a0fe580dafbdd01ec4a1..486702d2ba9e615befa47dac3a06e87bbee39e69 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentPlateLocationsSection.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentPlateLocationsSection.java @@ -123,7 +123,7 @@ public class ExperimentPlateLocationsSection extends TabContent materialCriteria); } }; - return LinkRenderer.createLink(searchButton, normalModeAction, urlProvider, viewContext); + return LinkRenderer.createButtonLink(searchButton, normalModeAction, urlProvider); } private void showPlateMaterialReviewer() diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java index 4efbc1c4a8a73de95ef06cd83620e62ea4abac3e..370a46897a1e0660ad52b419c87eba2d70960fcd 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java @@ -480,7 +480,7 @@ public class PlateLayoutSampleSection extends TabContent final IViewContext<IScreeningClientServiceAsync> viewContext) { String plateLinkUrl = - ScreeningLinkExtractor.extractPlateMetadataBrowserLink(plate.getPermId()); + ScreeningLinkExtractor.createPlateMetadataBrowserLink(plate.getPermId()); return LinkRenderer.getLinkWidget(viewContext.getMessage(Dict.BUTTON_SHOW), new ClickHandler() { diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ui/columns/specific/ScreeningLinkExtractor.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ui/columns/specific/ScreeningLinkExtractor.java index b39b3696a641022594804121f5b38b928d7d75db..3de72b6ed3e651408531360024b2bcbee112b8a4 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ui/columns/specific/ScreeningLinkExtractor.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ui/columns/specific/ScreeningLinkExtractor.java @@ -46,7 +46,7 @@ public class ScreeningLinkExtractor extends LinkExtractor public final static String WELL_SEARCH_MATERIAL_ITEMS_PARAMETER_KEY = "items"; - public static final String extractPlateMetadataBrowserLink(String platePermId) + public static final String createPlateMetadataBrowserLink(String platePermId) { URLMethodWithParameters url = new URLMethodWithParameters(""); url.addParameter(BasicConstant.LOCATOR_ACTION_PARAMETER, PLATE_METADATA_BROWSER_ACTION);