X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=swt%2Forg.argeo.app.ui%2Fsrc%2Forg%2Fargeo%2Fapp%2Fui%2FDefaultEditionLayer.java;h=dfccbe2870d101f3467e11ec2439c080228a6777;hp=a1dc5cbaa171b1c6b2366d44c76d00eeeb5b248b;hb=745663105f60541454e75d4e4e31153698ebd92e;hpb=f081325ceacb7790b4e68ce5bfca7adbf3ca2b48 diff --git a/swt/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java b/swt/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java index a1dc5cb..dfccbe2 100644 --- a/swt/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java +++ b/swt/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java @@ -31,6 +31,7 @@ public class DefaultEditionLayer implements SuiteLayer { private boolean fixedEntryArea = false; private boolean singleTab = false; private Localized title = null; + private Localized singleTabTitle = null; @Override public Control createUiPart(Composite parent, Content context) { @@ -161,6 +162,29 @@ public class DefaultEditionLayer implements SuiteLayer { title = new Localized.Untranslated(titleStr); } } + + String singleTabTitleStr = (String) properties.get(SuiteLayer.Property.singleTabTitle.name()); + if (singleTabTitleStr != null) { + if (singleTabTitleStr.startsWith("%")) { + singleTabTitle = new Localized() { + + @Override + public String name() { + return singleTabTitleStr; + } + + @Override + public ClassLoader getL10nClassLoader() { + return bundleContext != null + ? bundleContext.getBundle().adapt(BundleWiring.class).getClassLoader() + : getClass().getClassLoader(); + } + }; + } else { + singleTabTitle = new Localized.Untranslated(singleTabTitleStr); + } + } + } public void destroy(BundleContext bundleContext, Map properties) { @@ -182,6 +206,8 @@ public class DefaultEditionLayer implements SuiteLayer { SwtTabbedArea createTabbedArea(Composite parent, CmsSwtTheme theme) { SwtTabbedArea tabbedArea = new SwtTabbedArea(parent, SWT.NONE); tabbedArea.setSingleTab(singleTab); + if (singleTabTitle != null) + tabbedArea.setSingleTabTitle(singleTabTitle.lead()); tabbedArea.setBodyStyle(SuiteStyle.mainTabBody.style()); tabbedArea.setTabStyle(SuiteStyle.mainTab.style()); tabbedArea.setTabSelectedStyle(SuiteStyle.mainTabSelected.style());