]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - server/plugins/org.argeo.jcr.ui.explorer/src/main/java/org/argeo/jcr/ui/explorer/editors/ChildNodesPage.java
Working JCR based preferences
[lgpl/argeo-commons.git] / server / plugins / org.argeo.jcr.ui.explorer / src / main / java / org / argeo / jcr / ui / explorer / editors / ChildNodesPage.java
index 58f4166e3734bb253960f7ca54c5219e2cf46e89..6f4a2347e64ec4452492b2f9aed692bba79f6d87 100644 (file)
@@ -2,10 +2,10 @@ package org.argeo.jcr.ui.explorer.editors;
 
 import javax.jcr.Node;
 
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
+import org.argeo.ArgeoException;
+import org.argeo.jcr.ui.explorer.JcrExplorerPlugin;
 import org.argeo.jcr.ui.explorer.browser.NodeLabelProvider;
-import org.argeo.jcr.ui.explorer.browser.SingleNodeAsTreeContentProvider;
+import org.argeo.jcr.ui.explorer.providers.SingleNodeAsTreeContentProvider;
 import org.argeo.jcr.ui.explorer.utils.GenericNodeDoubleClickListener;
 import org.eclipse.jface.viewers.ITreeContentProvider;
 import org.eclipse.jface.viewers.TreeViewer;
@@ -23,7 +23,7 @@ import org.eclipse.ui.forms.widgets.ScrolledForm;
  * accross the repository
  */
 public class ChildNodesPage extends FormPage {
-       private final static Log log = LogFactory.getLog(ChildNodesPage.class);
+       // private final static Log log = LogFactory.getLog(ChildNodesPage.class);
 
        // business objects
        private Node currentNode;
@@ -44,12 +44,18 @@ public class ChildNodesPage extends FormPage {
                        GridLayout twt = new GridLayout(1, false);
                        twt.marginWidth = twt.marginHeight = 0;
                        body.setLayout(twt);
+                       if (!currentNode.hasNodes()) {
+                               managedForm.getToolkit().createLabel(body,
+                                               JcrExplorerPlugin.getMessage("warningNoChildNode"));
+                       } else {
 
-                       nodeContentProvider = new SingleNodeAsTreeContentProvider();
-                       nodesViewer = createNodeViewer(body, nodeContentProvider);
-                       nodesViewer.setInput(currentNode);
+                               nodeContentProvider = new SingleNodeAsTreeContentProvider();
+                               nodesViewer = createNodeViewer(body, nodeContentProvider);
+                               nodesViewer.setInput(currentNode);
+                       }
                } catch (Exception e) {
-                       e.printStackTrace();
+                       throw new ArgeoException(
+                                       "Unexpected error while creating child node page", e);
                }
        }