/** {@inheritDoc} */ @Override public void onNodeSelected(final TreeNode<?> node, final SelectionModel<?> model) { final List<?> allSelected = model.getSelectedNodes(); final List<Object> newSelection = new ArrayList<>(); for (final Object item : allSelected) { newSelection.add(item); } if (newSelection.contains(node)) { setSelection(new Selection<>(newSelection, node)); } else { setSelection(new Selection<>(newSelection)); } if (node != null && node instanceof StorableNode && appContext.getCurrentProject() != null) { appContext .getCurrentProject() .setProjectDescription(node.getProject().getProjectDescriptor()); } }