Refactor SWT directory structure.
[lgpl/argeo-commons.git] / eclipse / org.argeo.cms.swt / src / org / argeo / cms / swt / widgets / SwtHierarchicalPart.java
diff --git a/eclipse/org.argeo.cms.swt/src/org/argeo/cms/swt/widgets/SwtHierarchicalPart.java b/eclipse/org.argeo.cms.swt/src/org/argeo/cms/swt/widgets/SwtHierarchicalPart.java
deleted file mode 100644 (file)
index 07c9bac..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-package org.argeo.cms.swt.widgets;
-
-import java.util.List;
-
-import org.argeo.api.cms.ux.CmsIcon;
-import org.argeo.cms.swt.CmsSwtUtils;
-import org.argeo.cms.ux.widgets.HierarchicalPart;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-
-/** {@link HierarchicalPart} implementation based on a {@link Tree}. */
-public class SwtHierarchicalPart<T> extends AbstractSwtPart<T, T> {
-       private static final long serialVersionUID = -6247710601465713047L;
-
-       private final Tree tree;
-
-       private HierarchicalPart<T> hierarchicalPart;
-
-       public SwtHierarchicalPart(Composite parent, int style, HierarchicalPart<T> hierarchicalPart) {
-               super(parent, style, hierarchicalPart);
-               tree = new Tree(this, SWT.BORDER);
-               tree.setLayoutData(CmsSwtUtils.fillAll());
-               this.hierarchicalPart = hierarchicalPart;
-
-               tree.addSelectionListener(selectionListener);
-       }
-
-       @Override
-       public void refresh() {
-               // TODO optimise
-               // tree.clearAll(true);
-
-               for (TreeItem rootItem : tree.getItems()) {
-                       rootItem.dispose();
-               }
-
-               List<T> rootItems = hierarchicalPart.getChildren(hierarchicalPart.getInput());
-               for (T child : rootItems) {
-                       TreeItem childItem = addTreeItem(null, child);
-//                     List<T> grandChildren = hierarchicalPart.getChildren(child);
-//                     for (T grandChild : grandChildren) {
-//                             addTreeItem(childItem, grandChild);
-//                     }
-               }
-//             tree.addListener(SWT.SetData, event -> {
-//                     TreeItem item = (TreeItem) event.item;
-//                     TreeItem parentItem = item.getParentItem();
-//                     if (parentItem == null) {
-//                             refreshRootItem(item);
-//                     } else {
-//                             refreshItem(parentItem, item);
-//                     }
-//             });
-//             tree.setItemCount(getRootItemCount());
-
-               tree.addListener(SWT.Expand, event -> {
-                       final TreeItem root = (TreeItem) event.item;
-                       TreeItem[] items = root.getItems();
-                       for (TreeItem item : items) {
-                               if (item.getData() != null) {
-//                                     List<T> grandChildren = hierarchicalPart.getChildren((T) item.getData());
-//                                     for (T grandChild : grandChildren) {
-//                                             addTreeItem(item, grandChild);
-//                                     }
-                                       return;
-                               }
-                               item.dispose();
-                       }
-
-                       List<T> children = hierarchicalPart.getChildren((T) root.getData());
-                       for (T child : children) {
-                               TreeItem childItem = addTreeItem(root, child);
-//                             List<T> grandChildren = hierarchicalPart.getChildren(child);
-//                             for (T grandChild : grandChildren) {
-//                                     addTreeItem(childItem, grandChild);
-//                             }
-                       }
-               });
-
-               CmsSwtUtils.fill(tree);
-
-       }
-
-       protected TreeItem addTreeItem(TreeItem parent, T data) {
-               TreeItem item = parent == null ? new TreeItem(tree, SWT.NONE) : new TreeItem(parent, SWT.NONE);
-               item.setData(data);
-               String txt = hierarchicalPart.getText(data);
-               if (txt != null)
-                       item.setText(hierarchicalPart.getText(data));
-               CmsIcon icon = hierarchicalPart.getIcon(data);
-               // TODO optimize
-               List<T> grandChildren = hierarchicalPart.getChildren(data);
-               if (grandChildren.size() != 0)
-                       new TreeItem(item, SWT.NONE);
-               return item;
-//if(icon!=null)
-//     item.setImage(null);
-       }
-
-       protected Tree getTree() {
-               return tree;
-       }
-
-}