This is an automated email from the git hooks/post-receive script. New commit to annotated tag v2.0.0-beta-1 in repository jaxx. See https://gitlab.nuiton.org/nuiton/jaxx.git commit 863f26763e703a6d27cf76cf2b3d43a79093e2c4 Author: Tony Chemit <chemit@codelutin.com> Date: Sat Nov 7 06:12:53 2009 +0000 - remove selectUI from context, it is too messy (can not know exactly where it is stored...) - add getParentNode to obtain the first ancestor with a matching internalClass - open api --- .../navigation/NavigationTreeContextHelper.java | 32 +++++++++++----------- .../swing/navigation/NavigationTreeHandler.java | 2 +- .../swing/navigation/NavigationTreeHelper.java | 20 ++++++++++++++ .../swing/navigation/NavigationTreeModel.java | 8 ++++-- 4 files changed, 43 insertions(+), 19 deletions(-) diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java index 4d36e53..30fa119 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java @@ -69,7 +69,7 @@ public class NavigationTreeContextHelper { protected JAXXContextEntryDef<NavigationTreeModel> treeModelContextEntry; protected JAXXContextEntryDef<NavigationTreeHandler> treeHandlerContextEntry; protected JAXXContextEntryDef<JTree> treeContextEntry; - protected JAXXContextEntryDef<Component> selectedUIContextEntry; +// protected JAXXContextEntryDef<Component> selectedUIContextEntry; public NavigationTreeContextHelper(String prefix) { this.prefix = prefix; @@ -79,7 +79,7 @@ public class NavigationTreeContextHelper { selectedBeanContextEntry = Util.newContextEntryDef(prefix + "-selected-bean", Object.class); selectedNodeContextEntry = Util.newContextEntryDef(prefix + "-selected-node", NavigationTreeNode.class); selectedPathContextEntry = Util.newContextEntryDef(prefix + "-selected-path", String.class); - selectedUIContextEntry = Util.newContextEntryDef(prefix + "-selected-ui", Component.class); +// selectedUIContextEntry = Util.newContextEntryDef(prefix + "-selected-ui", Component.class); } public String getPrefix() { @@ -116,10 +116,10 @@ public class NavigationTreeContextHelper { return r; } - public Component getSelectedUI(JAXXContext context) { - Component r = getSelectedUIContextEntry().getContextValue(context); - return r; - } +// public Component getSelectedUI(JAXXContext context) { +// Component r = getSelectedUIContextEntry().getContextValue(context); +// return r; +// } public void setTreeModel(JAXXContext context, NavigationTreeModel model) { getTreeModelContextEntry().setContextValue(context, model); @@ -157,13 +157,13 @@ public class NavigationTreeContextHelper { } } - public void setSelectedUI(JAXXContext context, Component ui) { - if (ui == null) { - getSelectedUIContextEntry().removeContextValue(context); - } else { - getSelectedUIContextEntry().setContextValue(context, ui); - } - } +// public void setSelectedUI(JAXXContext context, Component ui) { +// if (ui == null) { +// getSelectedUIContextEntry().removeContextValue(context); +// } else { +// getSelectedUIContextEntry().setContextValue(context, ui); +// } +// } protected JAXXContextEntryDef<NavigationTreeModel> getTreeModelContextEntry() { return treeModelContextEntry; @@ -189,7 +189,7 @@ public class NavigationTreeContextHelper { return treeContextEntry; } - public JAXXContextEntryDef<Component> getSelectedUIContextEntry() { - return selectedUIContextEntry; - } +// public JAXXContextEntryDef<Component> getSelectedUIContextEntry() { +// return selectedUIContextEntry; +// } } diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java index cb87f65..0bfee29 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHandler.java @@ -240,7 +240,7 @@ public abstract class NavigationTreeHandler extends DefaultTreeSelectionModel { helper.setSelectedNode(ctxt, node); // save in context current ui - helper.setSelectedUI(ctxt, newUI); +// helper.setSelectedUI(ctxt, newUI); // really open the ui associated with the selected node // init ui before to be visible diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHelper.java b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHelper.java index 48f2cbe..64260d5 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHelper.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeHelper.java @@ -163,6 +163,26 @@ public abstract class NavigationTreeHelper extends NavigationTreeContextHelper { } /** + * Obtain the first ancestor with the matching internalClass + * + * @param current the node to test + * @param beanClass the type of the internal class to seek of + * @return the first ancestor node with the matching class or {@code null} if not found + */ + public NavigationTreeNode getParentNode(NavigationTreeNode current, Class<?> beanClass) { + if (current == null) { + // ancestor not found + return null; + } + if (beanClass.isAssignableFrom(current.getInternalClass())) { + // matching node + return current; + } + // try in the parent of node + return getParentNode(current.getParent(), beanClass); + } + + /** * Sélection d'un fils du noeud selectionne dans l'arbre de navigation. * * @param context le contexte applicatif diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeModel.java b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeModel.java index 8b4a8a2..9fa2cdd 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeModel.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeModel.java @@ -50,7 +50,7 @@ public class NavigationTreeModel extends DefaultTreeModel { * The path separator used to build the {@link NavigationTreeNode#fullPath}. * * @see NavigationTreeNode#getNodePath() - * @see NavigationTreeNode#getFullPath() + * @see NavigationTreeNode#getFullPath() */ protected final String pathSeparator; /** @@ -206,7 +206,7 @@ public class NavigationTreeModel extends DefaultTreeModel { /** * Obtain the associated bean value from context corresponding to node * - * @param node the current node + * @param node the current node * @return the value associated in context with the given node. */ public Object getBean(NavigationTreeNode node) { @@ -263,4 +263,8 @@ public class NavigationTreeModel extends DefaultTreeModel { } } } + + public String getPathSeparator() { + return pathSeparator; + } } -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.