+// tree = new Tree(this, 0);
+// for (Content c : rootContent) {
+// TreeItem root = new TreeItem(tree, 0);
+// root.setText(c.getName().toString());
+// root.setData(c);
+// new TreeItem(root, 0);
+// }
+// tree.addListener(SWT.Expand, event -> {
+// final TreeItem root = (TreeItem) event.item;
+// TreeItem[] items = root.getItems();
+// for (TreeItem item : items) {
+// if (item.getData() != null)
+// return;
+// item.dispose();
+// }
+// Content content = (Content) root.getData();
+// for (Content c : content) {
+// TreeItem item = new TreeItem(root, 0);
+// item.setText(c.getName().toString());
+// item.setData(c);
+// boolean hasChildren = true;
+// if (hasChildren) {
+// new TreeItem(item, 0);
+// }
+// }
+// });
+// tree.addListener(SWT.Selection, event -> {
+// TreeItem item = (TreeItem) event.item;
+// selected = (Content) item.getData();
+// refreshTable();
+// });