From 1894ef7613f658b8b0d8104a108d92b756c0cdb3 Mon Sep 17 00:00:00 2001 From: Mathieu Date: Tue, 8 Nov 2022 05:34:49 +0100 Subject: [PATCH] Improve UX --- .../src/org/argeo/cms/swt/acr/ContentComposite.java | 9 ++++++++- .../src/org/argeo/cms/swt/acr/SwtSection.java | 6 +++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/ContentComposite.java b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/ContentComposite.java index 951889eee..4a35a3bdd 100644 --- a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/ContentComposite.java +++ b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/ContentComposite.java @@ -10,7 +10,14 @@ public class ContentComposite extends Composite { public ContentComposite(Composite parent, int style, Content item) { super(parent, style); - setData(item); + if (item != null) + setData(item); + } + + public boolean hasContent() { + if (getData() == null) + return false; + return getData() instanceof Content; } public Content getContent() { diff --git a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtSection.java b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtSection.java index 57c4da00c..f4f5961ca 100644 --- a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtSection.java +++ b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/acr/SwtSection.java @@ -27,10 +27,14 @@ public class SwtSection extends ContentComposite { this(section, section, style, node); } + public SwtSection(SwtSection section, int style) { + this(section, style, null); + } + protected SwtSection(Composite parent, SwtSection parentSection, int style, Content node) { super(parent, style, node); this.parentSection = parentSection; - if (parentSection != null) { + if (parentSection != null && hasContent() && parentSection.hasContent()) { relativeDepth = getProvidedContent().getDepth() - parentSection.getProvidedContent().getDepth(); } else { relativeDepth = 0; -- 2.30.2