From: Mathieu Date: Sat, 19 Nov 2022 12:09:19 +0000 (+0100) Subject: Make single tab title configurable X-Git-Tag: v2.3.11~4 X-Git-Url: https://git.argeo.org/?p=lgpl%2Fargeo-commons.git;a=commitdiff_plain;h=17b708af147e6e2db666dbbef55e14dc2dddfdc0 Make single tab title configurable --- diff --git a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtTabbedArea.java b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtTabbedArea.java index cd4e37d19..b65bc3b6a 100644 --- a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtTabbedArea.java +++ b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtTabbedArea.java @@ -40,6 +40,7 @@ public class SwtTabbedArea extends Composite { private StackLayout stackLayout; private boolean singleTab = false; + private String singleTabTitle = null; public SwtTabbedArea(Composite parent, int style) { super(parent, SWT.NONE); @@ -86,13 +87,15 @@ public class SwtTabbedArea extends Composite { Button title = new Button(sectionHeader, SWT.FLAT); CmsSwtUtils.style(title, selected ? tabSelectedStyle : tabStyle); title.setLayoutData(CmsSwtUtils.fillWidth()); - title.addSelectionListener((Selected) (e) -> showTab(tabIndex(section.getNode()))); + title.addSelectionListener((Selected) (e) -> showTab(tabIndex(section.getContent()))); Content node = section.getContent(); // FIXME find a standard way to display titles String titleStr = node.getName().getLocalPart(); - - // TODO internationalize + if (singleTab && singleTabTitle != null) + titleStr = singleTabTitle; + + // TODO internationalise title.setText(titleStr); if (!singleTab) { ToolBar toolBar = new ToolBar(sectionHeader, SWT.NONE); @@ -119,7 +122,7 @@ public class SwtTabbedArea extends Composite { return; } SwtSection section = (SwtSection) body.getChildren()[0]; - previousNode = (ProvidedContent) section.getNode(); + previousNode = (ProvidedContent) section.getContent(); if (previousNode == null) {// empty state previousNode = (ProvidedContent) context; previousUiProvider = uiProvider; @@ -229,7 +232,7 @@ public class SwtTabbedArea extends Composite { public Content getCurrentContext() { SwtSection section = getCurrentSection(); if (section != null) { - return section.getNode(); + return section.getContent(); } else { return null; } @@ -255,4 +258,8 @@ public class SwtTabbedArea extends Composite { this.singleTab = singleTab; } + public void setSingleTabTitle(String singleTabTitle) { + this.singleTabTitle = singleTabTitle; + } + }