diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AbstractPluginViewContext.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AbstractPluginViewContext.java index 318f2ee6987f9c18a6cbb8e58e3d9516534cfb0a..a951d4fcf519e5f34cea0bf00750213a04453476 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AbstractPluginViewContext.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/AbstractPluginViewContext.java @@ -102,11 +102,6 @@ public abstract class AbstractPluginViewContext<T extends IClientServiceAsync> i return commonViewContext.getPageController(); } - public final String getBasicPageTitle() - { - return commonViewContext.getBasicPageTitle(); - } - public final IClientPluginFactoryProvider getClientPluginFactoryProvider() { return commonViewContext.getClientPluginFactoryProvider(); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/CommonViewContext.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/CommonViewContext.java index b7e179e201375bf94a8c39d47f5e9400a67c2027..28a0549b9c5334c9d52f0972df5fac628b7efe49 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/CommonViewContext.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/CommonViewContext.java @@ -48,15 +48,23 @@ public final class CommonViewContext implements IViewContext<ICommonClientServic { private static boolean simpleMode; - public static void init(final boolean isSimpleMode) + private static String pageTitleSuffix; + + public static void init(final boolean isSimpleMode, final String aPageTitleSuffix) { simpleMode = isSimpleMode; + pageTitleSuffix = aPageTitleSuffix; } public static boolean isSimpleMode() { return simpleMode; } + + public static String getPageTitleSuffix() + { + return pageTitleSuffix; + } } private static final String TECHNOLOGY_NAME = "common"; @@ -79,8 +87,6 @@ public final class CommonViewContext implements IViewContext<ICommonClientServic private final IProfilingTable profilingTable; - private final String basicPageTitle; - CommonViewContext(final ICommonClientServiceAsync service, final IGenericImageBundle imageBundle, final IPageController pageController, boolean isLoggingEnabled, boolean isSimpleMode, String basicPageTitle) @@ -89,12 +95,11 @@ public final class CommonViewContext implements IViewContext<ICommonClientServic this.imageBundle = imageBundle; this.pageController = pageController; this.profilingTable = ProfilingTable.create(isLoggingEnabled); - this.basicPageTitle = basicPageTitle; messageProvider = new CompositeMessageProvider(); messageProvider.add(new DictonaryBasedMessageProvider(TECHNOLOGY_NAME)); viewModel = new GenericViewModel(); locatorHandlerRegistry = new ViewLocatorResolverRegistry(); - ClientStaticState.init(isSimpleMode); + ClientStaticState.init(isSimpleMode, basicPageTitle); } final void setClientPluginFactoryProvider( @@ -133,8 +138,7 @@ public final class CommonViewContext implements IViewContext<ICommonClientServic } private DisplaySettingsManager createDisplaySettingsManager( - final DisplaySettings displaySettings, - WebClientConfiguration webClientConfigurationDTO) + final DisplaySettings displaySettings, WebClientConfiguration webClientConfigurationDTO) { IDelegatedAction settingsUpdater = new IDelegatedAction() { @@ -165,11 +169,6 @@ public final class CommonViewContext implements IViewContext<ICommonClientServic return pageController; } - public final String getBasicPageTitle() - { - return basicPageTitle; - } - public final IClientPluginFactoryProvider getClientPluginFactoryProvider() { return clientPluginFactoryProvider; diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/IViewContext.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/IViewContext.java index 599de2071c6b6f1a294e0a140b2e2f5430077dd7..4eafa948e3b021cb838f5a05ad2cd2228146894d 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/IViewContext.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/IViewContext.java @@ -48,8 +48,6 @@ public interface IViewContext<T extends IClientServiceAsync> extends IMessagePro public IPageController getPageController(); - public String getBasicPageTitle(); - public IClientPluginFactoryProvider getClientPluginFactoryProvider(); public ICommonClientServiceAsync getCommonService(); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/SearchWidget.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/SearchWidget.java index 19154300c7bdcfd8b7e8f44028286b1bfbacfcb3..07f341fa0d319207a36092114b92d7636dd87a98 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/SearchWidget.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/SearchWidget.java @@ -195,7 +195,7 @@ public final class SearchWidget extends LayoutContainer } private static AbstractTabItemFactory createTabFactory( - final MatchingEntitiesPanel matchingEntitiesPanel, String title, + final MatchingEntitiesPanel matchingEntitiesPanel, final String title, IViewContext<?> viewContext) { final ITabItem tab = @@ -222,6 +222,12 @@ public final class SearchWidget extends LayoutContainer { return new HelpPageIdentifier(HelpPageDomain.SEARCH, HelpPageAction.ACTION); } + + @Override + public String getTabTitle() + { + return title; + } }; } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ShowRelatedDatasetsDialog.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ShowRelatedDatasetsDialog.java index be5ed22ea7b8f163961e2e0463ec52a1570d3b45..412f4beb0d59aa69416aa385b92031c72b170bcd 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ShowRelatedDatasetsDialog.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ShowRelatedDatasetsDialog.java @@ -66,7 +66,8 @@ public final class ShowRelatedDatasetsDialog extends return RelatedDataSetGrid.BROWSER_ID + XDOM.getUniqueId(); } - private String getTabTitle() + @Override + public String getTabTitle() { return "Related Data Sets"; } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AbstractTabItemFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AbstractTabItemFactory.java index 599732b908074fd8071a2fe738d44b205505952d..109c7351b246235f7180c1c86b31827db123338c 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AbstractTabItemFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/AbstractTabItemFactory.java @@ -46,6 +46,11 @@ public abstract class AbstractTabItemFactory */ public abstract HelpPageIdentifier getHelpPageIdentifier(); + /** + * Returns a short description of contents of the tab that can be used in tab or page title. + */ + public abstract String getTabTitle(); + /** * True if the tab should become active. */ diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java index 324fca296b6142daf97b92ad950894164499f8df..45d21d8d6d75a8b067fb9a0f6d3545a6e03250df 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/ComponentProvider.java @@ -81,28 +81,26 @@ public final class ComponentProvider return viewContext.getMessage(key); } - private ITabItem createTab(String dictionaryMsgKey, IDisposableComponent component) + private ITabItem createTab(String title, IDisposableComponent component) { - String title = getMessage(dictionaryMsgKey); return DefaultTabItem.create(title, component, viewContext); } // creates a tab which requires confirmation before it can be closed - private ITabItem createRegistrationTab(final String titleMessageKey, + private ITabItem createRegistrationTab(final String title, DatabaseModificationAwareComponent component) { - return DefaultTabItem.create(getMessage(titleMessageKey), component, viewContext, true); + return DefaultTabItem.create(title, component, viewContext, true); } /** * Creates a tab with the specified component. The tab is unaware of database modifications and * will not be automatically refreshed if changes occur. */ - private ITabItem createSimpleTab(String dictionaryMsgKey, Component component, + private ITabItem createSimpleTab(String title, Component component, boolean isCloseConfirmationNeeded) { - return DefaultTabItem.createUnaware(getMessage(dictionaryMsgKey), component, - isCloseConfirmationNeeded); + return DefaultTabItem.createUnaware(title, component, isCloseConfirmationNeeded); } public AbstractTabItemFactory getSampleBrowser(final String initialGroupOrNull, @@ -116,7 +114,7 @@ public final class ComponentProvider IDisposableComponent browser = SampleBrowserGrid.create(viewContext, initialGroupOrNull, initialSampleTypeOrNull); - return createTab(Dict.SAMPLE_BROWSER, browser); + return createTab(getMessage(Dict.SAMPLE_BROWSER), browser); } @Override @@ -130,6 +128,21 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + StringBuilder sb = new StringBuilder(); + if (initialGroupOrNull != null) + { + sb.append(getMessage(Dict.GROUP) + "=" + initialGroupOrNull); + } + if (initialSampleTypeOrNull != null) + { + sb.append("type=" + initialSampleTypeOrNull); + } + return getMessage(Dict.SAMPLE_BROWSER) + " " + sb.toString(); + } }; } @@ -153,7 +166,7 @@ public final class ComponentProvider IDisposableComponent browser = MaterialBrowserGrid.createWithTypeChooser(viewContext, initialMaterialTypeOrNull); - return createTab(Dict.MATERIAL_BROWSER, browser); + return createTab(getMessage(Dict.MATERIAL_BROWSER), browser); } @Override @@ -168,6 +181,17 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.MATERIAL, HelpPageAction.BROWSE); } + @Override + public String getTabTitle() + { + StringBuilder sb = new StringBuilder(); + if (initialMaterialTypeOrNull != null) + { + sb.append("type=" + initialMaterialTypeOrNull); + } + return getMessage(Dict.MATERIAL_BROWSER) + " " + sb.toString(); + } + }; } @@ -179,7 +203,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = GroupGrid.create(viewContext); - return createTab(Dict.GROUP_BROWSER, component); + return createTab(getTabTitle(), component); } @Override @@ -193,6 +217,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.GROUP, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.GROUP_BROWSER); + } }; } @@ -204,7 +234,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = AuthorizationGroupGrid.create(viewContext); - return createTab(Dict.AUTHORIZATION_GROUP_BROWSER, component); + return createTab(getTabTitle(), component); } @Override @@ -219,6 +249,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.AUTHORIZATION_GROUPS, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.AUTHORIZATION_GROUP_BROWSER); + } }; } @@ -230,7 +266,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = RoleAssignmentGrid.create(viewContext); - return createTab(Dict.ROLE_ASSIGNMENT_BROWSER, component); + return createTab(getTabTitle(), component); } @Override @@ -244,6 +280,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.ROLES, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.ROLE_ASSIGNMENT_BROWSER); + } }; } @@ -255,7 +297,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = PersonGrid.create(viewContext); - return createTab(Dict.PERSON_BROWSER, component); + return createTab(getTabTitle(), component); } @Override @@ -269,6 +311,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.USERS, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.PERSON_BROWSER); + } }; } @@ -281,7 +329,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = SampleRegistrationPanel.create(viewContext, context); - return createRegistrationTab(Dict.SAMPLE_REGISTRATION, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -295,6 +343,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.SAMPLE_REGISTRATION); + } }; } @@ -312,7 +366,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = ExperimentRegistrationPanel.create(viewContext, context); - return createRegistrationTab(Dict.EXPERIMENT_REGISTRATION, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -327,6 +381,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.EXPERIMENT, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.EXPERIMENT_REGISTRATION); + } }; } @@ -345,7 +405,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = SampleBatchRegisterUpdatePanel.create(viewContext, update); - return createRegistrationTab(Dict.SAMPLE_BATCH_REGISTRATION, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -359,6 +419,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.IMPORT); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.SAMPLE_BATCH_REGISTRATION); + } }; } @@ -373,7 +439,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = SampleBatchRegisterUpdatePanel.create(viewContext, true); - return createRegistrationTab(Dict.SAMPLE_BATCH_UPDATE, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -388,6 +454,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.BATCH_UPDATE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.SAMPLE_BATCH_UPDATE); + } }; } @@ -400,7 +472,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = DataSetBatchUpdatePanel.create(viewContext); - return createRegistrationTab(Dict.DATA_SET_BATCH_UPDATE, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -415,6 +487,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.DATA_SET, HelpPageAction.BATCH_UPDATE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.DATA_SET_BATCH_UPDATE); + } }; } @@ -427,7 +505,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = MaterialBatchRegistrationPanel.create(viewContext); - return createRegistrationTab(Dict.MATERIAL_IMPORT, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -441,6 +519,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.MATERIAL, HelpPageAction.IMPORT); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.MATERIAL_IMPORT); + } }; } @@ -452,7 +536,7 @@ public final class ComponentProvider public ITabItem create() { Component component = new VocabularyRegistrationForm(viewContext); - return createSimpleTab(Dict.VOCABULARY_REGISTRATION, component, true); + return createSimpleTab(getTabTitle(), component, true); } @Override @@ -467,6 +551,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.VOCABULARY, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.VOCABULARY_REGISTRATION); + } }; } @@ -479,7 +569,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = ProjectRegistrationForm.create(viewContext); - return createRegistrationTab(Dict.PROJECT_REGISTRATION, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -493,6 +583,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.PROJECT, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.PROJECT_REGISTRATION); + } }; } @@ -504,7 +600,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = VocabularyGrid.create(viewContext); - return createTab(Dict.VOCABULARY_BROWSER, component); + return createTab(getTabTitle(), component); } @Override @@ -518,6 +614,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.VOCABULARY, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.VOCABULARY_BROWSER); + } }; } @@ -529,7 +631,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = ProjectGrid.create(viewContext); - return createTab(Dict.PROJECT_BROWSER, component); + return createTab(getTabTitle(), component); } @Override @@ -543,6 +645,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.PROJECT, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.PROJECT_BROWSER); + } }; } @@ -557,7 +665,7 @@ public final class ComponentProvider IDisposableComponent browser = ExperimentBrowserGrid.create(viewContext, initialProjectOrNull, initialExperimentTypeOrNull); - return createTab(Dict.EXPERIMENT_BROWSER, browser); + return createTab(getTabTitle(), browser); } @Override @@ -571,6 +679,13 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.EXPERIMENT, HelpPageAction.BROWSE); } + + // FIXME + @Override + public String getTabTitle() + { + return getMessage(Dict.EXPERIMENT_BROWSER); + } }; } @@ -587,7 +702,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = PropertyTypeGrid.create(viewContext); - return createTab(Dict.PROPERTY_TYPES, component); + return createTab(getTabTitle(), component); } @Override @@ -602,6 +717,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.PROPERTY_TYPE, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.PROPERTY_TYPES); + } }; } @@ -614,7 +735,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = PropertyTypeRegistrationForm.create(viewContext); - return createRegistrationTab(Dict.PROPERTY_TYPE_REGISTRATION, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -629,6 +750,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.PROPERTY_TYPE, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.PROPERTY_TYPE_REGISTRATION); + } }; } @@ -640,7 +767,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = PropertyTypeAssignmentGrid.create(viewContext); - return createTab(Dict.PROPERTY_TYPE_ASSIGNMENTS, component); + return createTab(getTabTitle(), component); } @Override @@ -654,6 +781,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.ASSIGNMENT, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.PROPERTY_TYPE_ASSIGNMENTS); + } }; } @@ -681,7 +814,7 @@ public final class ComponentProvider } private AbstractTabItemFactory getPropertyTypeAssignmentForm(final EntityKind entityKind, - final String messageKey) + final String tabTitleMessageKey) { return new AbstractTabItemFactory() { @@ -690,7 +823,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = PropertyTypeAssignmentForm.create(viewContext, entityKind); - return createRegistrationTab(messageKey, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -705,6 +838,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.ASSIGNMENT, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(tabTitleMessageKey); + } }; } @@ -716,7 +855,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent browser = DataSetSearchHitGrid.create(viewContext); - return createTab(Dict.DATA_SET_SEARCH, browser); + return createTab(getTabTitle(), browser); } @Override @@ -730,6 +869,13 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.DATA_SET, HelpPageAction.SEARCH); } + + // FIXME + @Override + public String getTabTitle() + { + return getMessage(Dict.DATA_SET_SEARCH); + } }; } @@ -741,7 +887,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent browser = SampleSearchHitGrid.create(viewContext); - return createTab(Dict.SAMPLE_SEARCH, browser); + return createTab(getTabTitle(), browser); } @Override @@ -755,6 +901,13 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.SEARCH); } + + // FIXME + @Override + public String getTabTitle() + { + return getMessage(Dict.SAMPLE_SEARCH); + } }; } @@ -766,7 +919,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = SampleTypeGrid.create(viewContext); - return createTab(Dict.SAMPLE_TYPES, component); + return createTab(getTabTitle(), component); } @Override @@ -781,6 +934,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.SAMPLE_TYPE, HelpPageAction.BROWSE); } + @Override + public String getTabTitle() + { + return getMessage(Dict.SAMPLE_TYPES); + } + }; } @@ -792,7 +951,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = MaterialTypeGrid.create(viewContext); - return createTab(Dict.MATERIAL_TYPES, component); + return createTab(getTabTitle(), component); } @Override @@ -807,6 +966,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.MATERIAL_TYPE, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.MATERIAL_TYPES); + } }; } @@ -818,7 +983,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = ExperimentTypeGrid.create(viewContext); - return createTab(Dict.EXPERIMENT_TYPES, component); + return createTab(getTabTitle(), component); } @Override @@ -833,6 +998,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.EXPERIMENT_TYPE, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.EXPERIMENT_TYPES); + } }; } @@ -844,7 +1015,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = DataSetTypeGrid.create(viewContext); - return createTab(Dict.DATA_SET_TYPES, component); + return createTab(getTabTitle(), component); } @Override @@ -859,6 +1030,12 @@ public final class ComponentProvider return new HelpPageIdentifier(HelpPageDomain.DATA_SET_TYPE, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.DATA_SET_TYPES); + } }; } @@ -871,7 +1048,7 @@ public final class ComponentProvider { DatabaseModificationAwareComponent component = DataSetUploadForm.create(viewContext); - return createRegistrationTab(Dict.DATA_SET_UPLOAD, component); + return createRegistrationTab(getTabTitle(), component); } @Override @@ -885,6 +1062,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.DATA_SET, HelpPageAction.REGISTER); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.DATA_SET_UPLOAD); + } }; } @@ -896,7 +1079,7 @@ public final class ComponentProvider public ITabItem create() { IDisposableComponent component = FileFormatTypeGrid.create(viewContext); - return createTab(Dict.FILE_FORMAT_TYPES, component); + return createTab(getTabTitle(), component); } @Override @@ -910,6 +1093,12 @@ public final class ComponentProvider { return new HelpPageIdentifier(HelpPageDomain.FILE_TYPE, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.FILE_FORMAT_TYPES); + } }; } @@ -930,8 +1119,7 @@ public final class ComponentProvider @Override public ITabItem create() { - return createSimpleTab(Dict.LOGGING_CONSOLE, - LoggingConsole.create(viewContext), false); + return createSimpleTab(getTabTitle(), LoggingConsole.create(viewContext), false); } @Override @@ -948,6 +1136,12 @@ public final class ComponentProvider return LoggingConsole.ID; } + @Override + public String getTabTitle() + { + return getMessage(Dict.LOGGING_CONSOLE); + } + }; } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/DispatcherHelper.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/DispatcherHelper.java index 3a2715792cb0e25b6bee3c21f530ccb825b5bde9..66a55ecaf1b49e1c8d8e1dca6fe3fbf73df0edce 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/DispatcherHelper.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/framework/DispatcherHelper.java @@ -19,6 +19,9 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.framework import com.extjs.gxt.ui.client.event.EventType; import com.extjs.gxt.ui.client.mvc.AppEvent; import com.extjs.gxt.ui.client.mvc.Dispatcher; +import com.google.gwt.user.client.Window; + +import ch.systemsx.cisd.openbis.generic.client.web.client.application.CommonViewContext; /** * A helper for using {@link Dispatcher}. @@ -49,6 +52,8 @@ public final class DispatcherHelper { AppEvent event = createEvent(AppEvents.NAVI_EVENT, tabItemFactory); Dispatcher.get().dispatch(event); + Window.setTitle(tabItemFactory.getTabTitle() + " " + + CommonViewContext.ClientStaticState.getPageTitleSuffix()); } private final static AppEvent createEvent(EventType eventType, Object data) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/DataSetSearchLocatorResolver.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/DataSetSearchLocatorResolver.java index 39d1dd8ea1a7d2e354e4af75a29480a9b8b90b49..c0aabb40622f3f6d88e8b5e076cde41b8d8595e1 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/DataSetSearchLocatorResolver.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/DataSetSearchLocatorResolver.java @@ -97,5 +97,11 @@ public class DataSetSearchLocatorResolver { return new HelpPageIdentifier(HelpPageDomain.DATA_SET, HelpPageAction.SEARCH); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.DATA_SET_SEARCH); + } } } \ No newline at end of file diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/SampleSearchLocatorResolver.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/SampleSearchLocatorResolver.java index 67db705835889fceb769c8bb7554e7f44b8abaf1..87a6c54fe90c87caef566f00f03cc0761968a74f 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/SampleSearchLocatorResolver.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/locator/SampleSearchLocatorResolver.java @@ -155,5 +155,11 @@ public class SampleSearchLocatorResolver { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.SEARCH); } + + @Override + public String getTabTitle() + { + return getMessage(Dict.SAMPLE_SEARCH); + } } } \ No newline at end of file diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/menu/TabActionMenuItemFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/menu/TabActionMenuItemFactory.java index 69607940a1a2da47ac92cb7a785101c6c89d582a..bc853a2fe908b250d6f6bb1db02adedf3735f05b 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/menu/TabActionMenuItemFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/menu/TabActionMenuItemFactory.java @@ -25,8 +25,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpP import ch.systemsx.cisd.openbis.generic.client.web.client.application.util.IMessageProvider; /** - * - * * @author Franz-Josef Elmer */ public class TabActionMenuItemFactory @@ -59,8 +57,7 @@ public class TabActionMenuItemFactory @Override public ITabItem create() { - String tabItemText = viewContext.getMessage(tabLabelKey); - return DefaultTabItem.create(tabItemText, definition + return DefaultTabItem.create(getTabTitle(), definition .createComponent(viewContext), viewContext, false); } @@ -69,6 +66,12 @@ public class TabActionMenuItemFactory { return HelpPageIdentifier.createSpecific(definition.getHelpPageTitle()); } + + @Override + public String getTabTitle() + { + return viewContext.getMessage(tabLabelKey); + } }); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/AuthorizationGroupGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/AuthorizationGroupGrid.java index 97df485249d3c1cd96a20bdbbb302569e320fa74..45d062708ba1e0a5ad62ac80884e794e29c42279 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/AuthorizationGroupGrid.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/AuthorizationGroupGrid.java @@ -202,7 +202,8 @@ public class AuthorizationGroupGrid extends AbstractSimpleBrowserGrid<Authorizat } @Override - protected void showEntityViewer(final AuthorizationGroup group, boolean editMode, boolean inBackground) + protected void showEntityViewer(final AuthorizationGroup group, boolean editMode, + boolean inBackground) { final AbstractTabItemFactory tabFactory = new AbstractTabItemFactory() { @@ -211,9 +212,7 @@ public class AuthorizationGroupGrid extends AbstractSimpleBrowserGrid<Authorizat { IDisposableComponent component = PersonGrid.createForAuthorizationGroup(viewContext, group); - String tabTitle = - viewContext.getMessage(Dict.AUTHORIZATION_GROUP_USERS, group.getCode()); - return DefaultTabItem.create(tabTitle, component, viewContext); + return DefaultTabItem.create(getTabTitle(), component, viewContext); } @Override @@ -228,6 +227,12 @@ public class AuthorizationGroupGrid extends AbstractSimpleBrowserGrid<Authorizat return new HelpPageIdentifier(HelpPageDomain.AUTHORIZATION_GROUPS, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return viewContext.getMessage(Dict.AUTHORIZATION_GROUP_USERS, group.getCode()); + } }; tabFactory.setInBackground(inBackground); DispatcherHelper.dispatchNaviEvent(tabFactory); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/attachment/AttachmentBrowser.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/attachment/AttachmentBrowser.java index 076d72f542265d22c7660f7e5c417525df699647..90068f0dca61ed3d9857ffca917f6ce0cdb78848 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/attachment/AttachmentBrowser.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/attachment/AttachmentBrowser.java @@ -296,9 +296,8 @@ public class AttachmentBrowser extends AbstractSimpleBrowserGrid<AttachmentVersi @Override public ITabItem create() { - final String tabTitle = helper.createTabTitle(); final Component component = helper.createVersionsPanel(versions); - return DefaultTabItem.createUnaware(tabTitle, component, false); + return DefaultTabItem.createUnaware(getTabTitle(), component, false); } @Override @@ -312,6 +311,12 @@ public class AttachmentBrowser extends AbstractSimpleBrowserGrid<AttachmentVersi { return new HelpPageIdentifier(HelpPageDomain.ATTACHMENTS, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return helper.createTabTitle(); + } }; tabFactory.setInBackground(inBackground); DispatcherHelper.dispatchNaviEvent(tabFactory); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/DataSetReportGenerator.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/DataSetReportGenerator.java index 9c271d76735d220dfdfaaf967218c1889ac259ab..41255f6c68f1ef80c09efbf04568f54750a29843 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/DataSetReportGenerator.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/DataSetReportGenerator.java @@ -85,9 +85,7 @@ public class DataSetReportGenerator @Override public ITabItem create() { - final String reportTitle = - service.getLabel() + " (" + reportDate + ")"; - return DefaultTabItem.create(reportTitle, reportComponent, + return DefaultTabItem.create(getTabTitle(), reportComponent, viewContext); } @@ -105,6 +103,12 @@ public class DataSetReportGenerator HelpPageAction.REPORT); } + @Override + public String getTabTitle() + { + return service.getLabel() + " (" + reportDate + ")"; + } + }; DispatcherHelper.dispatchNaviEvent(tabFactory); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabAction.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabAction.java index 324aa455cfbb40dc3d903895bfd9ee7fc738b30a..3f0161c93c0b3480c20a36bb89ea5adf99dc52ea 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabAction.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabAction.java @@ -16,8 +16,6 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.listener; -import com.google.gwt.user.client.Window; - import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DispatcherHelper; @@ -69,12 +67,6 @@ public final class OpenEntityDetailsTabAction implements IDelegatedAction createClientPlugin.createEntityViewer(entityType, entity); tabView.setInBackground(keyPressed); - if (viewContext.isSimpleMode()) - { - Window.setTitle(entityKind.getDescription() + ": " + entity.getCode() + " [" - + entityType + "]" + " - " + viewContext.getBasicPageTitle()); - } - DispatcherHelper.dispatchNaviEvent(tabView); } } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabHelper.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabHelper.java index 1e6e5f6e9514d96489efe285792bfbe7ff7a7860..81d5db2fb8961e2d43d5c812d4e1dd76b06a004b 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabHelper.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/listener/OpenEntityDetailsTabHelper.java @@ -102,7 +102,7 @@ public class OpenEntityDetailsTabHelper { final DatabaseModificationAwareComponent viewer = ProjectViewer.create(viewContext.getCommonViewContext(), projectId); - return DefaultTabItem.create(getViewerTitle(), viewer, viewContext, false); + return DefaultTabItem.create(getTabTitle(), viewer, viewContext, false); } @Override @@ -111,7 +111,8 @@ public class OpenEntityDetailsTabHelper return ProjectViewer.createId(projectId); } - private String getViewerTitle() + @Override + public String getTabTitle() { return AbstractViewer.getTitle(viewContext, Dict.PROJECT, project); } @@ -121,6 +122,7 @@ public class OpenEntityDetailsTabHelper { return new HelpPageIdentifier(HelpPageDomain.PROJECT, HelpPageAction.VIEW); } + }; tabFactory.setInBackground(keyPressed); DispatcherHelper.dispatchNaviEvent(tabFactory); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/project/ProjectGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/project/ProjectGrid.java index 306211ba14822e13c707b0e5c2bf5593306083e7..00e65a442ccef2e67d5a443dfc14c0129e5e8fff 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/project/ProjectGrid.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/project/ProjectGrid.java @@ -207,7 +207,7 @@ public class ProjectGrid extends AbstractSimpleBrowserGrid<Project> { final DatabaseModificationAwareComponent viewer = ProjectViewer.create(viewContext, projectId); - return DefaultTabItem.create(getViewerTitle(), viewer, viewContext, false); + return DefaultTabItem.create(getTabTitle(), viewer, viewContext, false); } @Override @@ -216,7 +216,8 @@ public class ProjectGrid extends AbstractSimpleBrowserGrid<Project> return ProjectViewer.createId(projectId); } - private String getViewerTitle() + @Override + public String getTabTitle() { return AbstractViewer.getTitle(viewContext, Dict.PROJECT, project); } @@ -226,6 +227,7 @@ public class ProjectGrid extends AbstractSimpleBrowserGrid<Project> { return new HelpPageIdentifier(HelpPageDomain.PROJECT, HelpPageAction.VIEW); } + }; } else { @@ -236,7 +238,7 @@ public class ProjectGrid extends AbstractSimpleBrowserGrid<Project> { DatabaseModificationAwareComponent component = ProjectEditForm.create(viewContext, projectId); - return DefaultTabItem.create(getEditTitle(), component, viewContext, true); + return DefaultTabItem.create(getTabTitle(), component, viewContext, true); } @Override @@ -245,7 +247,8 @@ public class ProjectGrid extends AbstractSimpleBrowserGrid<Project> return ProjectEditForm.createId(projectId); } - private String getEditTitle() + @Override + public String getTabTitle() { return AbstractRegistrationForm.getEditTitle(viewContext, Dict.PROJECT, project); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/vocabulary/VocabularyGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/vocabulary/VocabularyGrid.java index da26f99e68b77f2633e6ae7cb427fd033dafdff1..6b58b11c341d3c34e7da710d231c3c5ba905f05a 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/vocabulary/VocabularyGrid.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/vocabulary/VocabularyGrid.java @@ -227,10 +227,7 @@ public class VocabularyGrid extends AbstractSimpleBrowserGrid<Vocabulary> { IDisposableComponent component = VocabularyTermGrid.create(viewContext, vocabulary); - String tabTitle = - viewContext.getMessage(Dict.VOCABULARY_TERMS_BROWSER, vocabulary - .getCode()); - return DefaultTabItem.create(tabTitle, component, viewContext); + return DefaultTabItem.create(getTabTitle(), component, viewContext); } @Override @@ -244,6 +241,13 @@ public class VocabularyGrid extends AbstractSimpleBrowserGrid<Vocabulary> { return new HelpPageIdentifier(HelpPageDomain.TERM, HelpPageAction.BROWSE); } + + @Override + public String getTabTitle() + { + return viewContext.getMessage(Dict.VOCABULARY_TERMS_BROWSER, vocabulary + .getCode()); + } }; tabFactory.setInBackground(inBackground); DispatcherHelper.dispatchNaviEvent(tabFactory); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java index 45cd81773cfecb181f894957bb1a386d422f2109..b707d2c17fde522c299bfa7f5ad832bdc5458973 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java @@ -124,8 +124,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV { final DemoSampleViewer sampleViewer = new DemoSampleViewer(getViewContext(), sampleId); - return DefaultTabItem.createUnaware(identifiable.getCode(), sampleViewer, - false); + return DefaultTabItem.createUnaware(getTabTitle(), sampleViewer, false); } @Override @@ -139,6 +138,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return identifiable.getCode(); + } }; } @@ -168,7 +173,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV @Override public ITabItem create() { - return createDummyTab(identifiable.getCode()); + return createDummyTab(getTabTitle()); } @Override @@ -182,6 +187,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.EDIT); } + + @Override + public String getTabTitle() + { + return identifiable.getCode(); + } }; } @@ -204,7 +215,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV @Override public ITabItem create() { - return createDummyTab(identifiable.getCode()); + return createDummyTab(getTabTitle()); } @Override @@ -219,6 +230,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV return new HelpPageIdentifier(HelpPageDomain.EXPERIMENT, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return identifiable.getCode(); + } }; } } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/module/TopMenuItemDemoModuleMenu.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/module/TopMenuItemDemoModuleMenu.java index e325c242a6c65e78427584d7c5cc28a167c25772..f070c4212ad9a7c8085f0ac96fdf92f6f4a5f4ee 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/module/TopMenuItemDemoModuleMenu.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/module/TopMenuItemDemoModuleMenu.java @@ -52,8 +52,8 @@ public class TopMenuItemDemoModuleMenu extends MenuItem @Override public ITabItem create() { - return DefaultTabItem.create(viewContext.getMessage(Dict.STATISTICS_DEMO_TAB_HEADER), - StatisticsWidget.create(viewContext), viewContext, false); + return DefaultTabItem.create(getTabTitle(), StatisticsWidget.create(viewContext), + viewContext, false); } @Override @@ -67,6 +67,12 @@ public class TopMenuItemDemoModuleMenu extends MenuItem { return HelpPageIdentifier.createSpecific("Experiment Statistics"); } + + @Override + public String getTabTitle() + { + return viewContext.getMessage(Dict.STATISTICS_DEMO_TAB_HEADER); + } } public static enum ActionMenuKind implements IActionMenuItem diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java index fa4530924903e148c3f8787eb516b9a09be0f230..817f51f127dde3382c56369fd69526249a31695c 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java @@ -154,8 +154,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { final DatabaseModificationAwareComponent sampleViewer = GenericSampleViewer.create(getViewContext(), identifiable); - return DefaultTabItem.create(getViewerTitle(Dict.SAMPLE, identifiable), - sampleViewer, getViewContext(), false); + return DefaultTabItem.create(getTabTitle(), sampleViewer, getViewContext(), + false); } @Override @@ -169,6 +169,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return getViewerTitle(Dict.SAMPLE, identifiable); + } }; } @@ -199,8 +205,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { DatabaseModificationAwareComponent component = GenericSampleEditForm.create(getViewContext(), identifiable); - String title = getEditorTitle(Dict.SAMPLE, identifiable); - return DefaultTabItem.create(title, component, getViewContext(), true); + return DefaultTabItem.create(getTabTitle(), component, getViewContext(), + true); } @Override @@ -214,6 +220,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { return new HelpPageIdentifier(HelpPageDomain.SAMPLE, HelpPageAction.EDIT); } + + @Override + public String getTabTitle() + { + return getEditorTitle(Dict.SAMPLE, identifiable); + } }; } @@ -241,8 +253,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { final DatabaseModificationAwareComponent materialViewer = GenericMaterialViewer.create(getViewContext(), techId); - return DefaultTabItem.create(getViewerTitle(Dict.MATERIAL, identifiable), - materialViewer, getViewContext(), false); + return DefaultTabItem.create(getTabTitle(), materialViewer, + getViewContext(), false); } @Override @@ -256,6 +268,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { return new HelpPageIdentifier(HelpPageDomain.MATERIAL, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return getViewerTitle(Dict.MATERIAL, identifiable); + } }; } @@ -270,8 +288,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener DatabaseModificationAwareComponent component = GenericMaterialEditForm .create(getViewContext(), identifiable, true); - String title = getEditorTitle(Dict.MATERIAL, identifiable); - return DefaultTabItem.create(title, component, getViewContext(), true); + return DefaultTabItem.create(getTabTitle(), component, getViewContext(), + true); } @Override @@ -285,6 +303,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { return new HelpPageIdentifier(HelpPageDomain.MATERIAL, HelpPageAction.EDIT); } + + @Override + public String getTabTitle() + { + return getEditorTitle(Dict.MATERIAL, identifiable); + } }; } } @@ -309,8 +333,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener final DatabaseModificationAwareComponent experimentViewer = GenericExperimentViewer.create(getViewContext(), experimentType, experimentId); - return DefaultTabItem.create(getViewerTitle(Dict.EXPERIMENT, experimentId), - experimentViewer, getViewContext(), false); + return DefaultTabItem.create(getTabTitle(), experimentViewer, + getViewContext(), false); } @Override @@ -325,6 +349,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener return new HelpPageIdentifier(HelpPageDomain.EXPERIMENT, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return getViewerTitle(Dict.EXPERIMENT, experimentId); + } }; } @@ -347,8 +377,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { DatabaseModificationAwareComponent component = GenericExperimentEditForm.create(getViewContext(), identifiable); - String title = getEditorTitle(Dict.EXPERIMENT, identifiable); - return DefaultTabItem.create(title, component, getViewContext(), true); + return DefaultTabItem.create(getTabTitle(), component, getViewContext(), + true); } @Override @@ -364,6 +394,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener return new HelpPageIdentifier(HelpPageDomain.EXPERIMENT, HelpPageAction.EDIT); } + + @Override + public String getTabTitle() + { + return getEditorTitle(Dict.EXPERIMENT, identifiable); + } }; } } @@ -383,8 +419,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { final DatabaseModificationAwareComponent dataSetViewer = GenericDataSetViewer.create(getViewContext(), identifiable); - return DefaultTabItem.create(getViewerTitle(Dict.DATA_SET, identifiable), - dataSetViewer, getViewContext(), false); + return DefaultTabItem.create(getTabTitle(), dataSetViewer, + getViewContext(), false); } @Override @@ -398,6 +434,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { return new HelpPageIdentifier(HelpPageDomain.DATA_SET, HelpPageAction.VIEW); } + + @Override + public String getTabTitle() + { + return getViewerTitle(Dict.DATA_SET, identifiable); + } }; } @@ -411,8 +453,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { DatabaseModificationAwareComponent component = GenericDataSetEditForm.create(getViewContext(), identifiable); - String title = getEditorTitle(Dict.DATA_SET, identifiable); - return DefaultTabItem.create(title, component, getViewContext(), true); + return DefaultTabItem.create(getTabTitle(), component, getViewContext(), + true); } @Override @@ -426,6 +468,12 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { return new HelpPageIdentifier(HelpPageDomain.DATA_SET, HelpPageAction.EDIT); } + + @Override + public String getTabTitle() + { + return getEditorTitle(Dict.DATA_SET, identifiable); + } }; } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/query/client/web/client/application/locator/QueryLocatorResolver.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/query/client/web/client/application/locator/QueryLocatorResolver.java index 9b849f96be9cbc1922e0474796e2fdb742a6fcfb..84a4c9842ad4a251a701b6dba89b708e9b220721 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/query/client/web/client/application/locator/QueryLocatorResolver.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/query/client/web/client/application/locator/QueryLocatorResolver.java @@ -73,8 +73,7 @@ public class QueryLocatorResolver extends AbstractViewLocatorResolver @Override public ITabItem create() { - String tabItemText = viewContext.getMessage(tabLabelKey); - return DefaultTabItem.create(tabItemText, component, viewContext, false); + return DefaultTabItem.create(getTabTitle(), component, viewContext, false); } @Override @@ -82,6 +81,12 @@ public class QueryLocatorResolver extends AbstractViewLocatorResolver { return HelpPageIdentifier.createSpecific(definition.getHelpPageTitle()); } + + @Override + public String getTabTitle() + { + return viewContext.getMessage(tabLabelKey); + } }; DispatcherHelper.dispatchNaviEvent(tabItemFactory); }