X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=swt%2Forg.argeo.cms.swt%2Fsrc%2Forg%2Fargeo%2Fcms%2Fswt%2Fwidgets%2FSwtTreeView.java;h=8fd1368b0853150e874fa4e47813ce30837f4b63;hb=250053a6fe7a84a4f37293f61d9a6dc636a4117a;hp=79543e9f89d938f583a9c05d3c1a5aba4bfe5b37;hpb=fd46e1f55b8aa95e6218dabf84315adcc9c4957f;p=lgpl%2Fargeo-commons.git diff --git a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/widgets/SwtTreeView.java b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/widgets/SwtTreeView.java index 79543e9f8..8fd1368b0 100644 --- a/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/widgets/SwtTreeView.java +++ b/swt/org.argeo.cms.swt/src/org/argeo/cms/swt/widgets/SwtTreeView.java @@ -2,6 +2,7 @@ package org.argeo.cms.swt.widgets; import java.util.List; +import org.argeo.api.cms.CmsLog; import org.argeo.api.cms.ux.CmsIcon; import org.argeo.cms.swt.CmsSwtTheme; import org.argeo.cms.swt.CmsSwtUtils; @@ -14,6 +15,8 @@ import org.eclipse.swt.widgets.TreeItem; /** View of a {@link HierarchicalPart} based on a {@link Tree}. */ public class SwtTreeView extends AbstractSwtView { + private final static CmsLog log = CmsLog.getLog(SwtTreeView.class); + private static final long serialVersionUID = -6247710601465713047L; private final Tree tree; @@ -22,10 +25,10 @@ public class SwtTreeView extends AbstractSwtView { private CmsSwtTheme theme; public SwtTreeView(Composite parent, int style, HierarchicalPart hierarchicalPart) { - super(parent, style, hierarchicalPart); + super(parent, hierarchicalPart); theme = CmsSwtUtils.getCmsTheme(parent); - tree = new Tree(this, SWT.BORDER); + tree = new Tree(this, style); tree.setLayoutData(CmsSwtUtils.fillAll()); this.hierarchicalPart = hierarchicalPart; @@ -42,7 +45,12 @@ public class SwtTreeView extends AbstractSwtView { List rootItems = hierarchicalPart.getChildren(hierarchicalPart.getInput()); for (T child : rootItems) { - addTreeItem(null, child); + try { + addTreeItem(null, child); + } catch (Exception e) { + if (log.isTraceEnabled()) + log.error("Cannot retrieve child", e); + } } tree.addListener(SWT.Expand, event -> { @@ -83,6 +91,12 @@ public class SwtTreeView extends AbstractSwtView { return item; } + @Override + public void notifyItemCountChange() { + // TODO what to update ? + + } + protected Tree getTree() { return tree; }