diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/util/MutableTreeModel.java b/ganttzk/src/main/java/org/zkoss/ganttz/util/MutableTreeModel.java index e408a1756..b0cdb8198 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/util/MutableTreeModel.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/util/MutableTreeModel.java @@ -386,6 +386,10 @@ public class MutableTreeModel extends AbstractTreeModel { return getChildCount(node) > 0; } + public boolean contains(T object) { + return find(object) != null; + } + public boolean contains(T parent, T child) { Node parentNode = find(parent); Node childNode = find(child); diff --git a/ganttzk/src/test/java/org/zkoss/ganttz/util/MutableTreeModelTest.java b/ganttzk/src/test/java/org/zkoss/ganttz/util/MutableTreeModelTest.java index fd021f4fb..fe375e423 100644 --- a/ganttzk/src/test/java/org/zkoss/ganttz/util/MutableTreeModelTest.java +++ b/ganttzk/src/test/java/org/zkoss/ganttz/util/MutableTreeModelTest.java @@ -488,6 +488,18 @@ public class MutableTreeModelTest { assertThat(model.getChild(model.getRoot(), 1), equalTo(prueba2)); } + @Test + public void canBeKnownIfAnEntityIsOnTheTree() { + final MutableTreeModel model = MutableTreeModel + .create(Prueba.class); + Prueba prueba1 = new Prueba(); + model.addToRoot(prueba1); + + assertTrue(model.contains(prueba1)); + assertTrue(model.contains(model.getRoot())); + assertFalse(model.contains(new Prueba())); + } + @Test public void treeParentContainsChild() { final MutableTreeModel model = MutableTreeModel