X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=server%2Forg.argeo.slc.ria%2Fsrc%2Fargeo-ria-lib%2Fjcr%2Fclass%2Forg%2Fargeo%2Fjcr%2Fria%2Fviews%2FJcrTreeFolder.js;fp=server%2Forg.argeo.slc.ria%2Fsrc%2Fargeo-ria-lib%2Fjcr%2Fclass%2Forg%2Fargeo%2Fjcr%2Fria%2Fviews%2FJcrTreeFolder.js;h=96505f8f08f0f7817bedaf29376402eef85d74f7;hb=6df9a6dfc2547a4d6fbb073484ba6abe9bedd720;hp=0000000000000000000000000000000000000000;hpb=51af8ffa4d83147e2d1a7fb798b7fa87add0a89f;p=gpl%2Fargeo-slc.git diff --git a/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/views/JcrTreeFolder.js b/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/views/JcrTreeFolder.js new file mode 100644 index 000000000..96505f8f0 --- /dev/null +++ b/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/views/JcrTreeFolder.js @@ -0,0 +1,43 @@ +qx.Class.define("org.argeo.jcr.ria.views.JcrTreeFolder", { + extend : org.argeo.ria.components.DynamicTreeFolder, + properties : { + jcrNode : { + + } + }, + construct : function(jcrNode){ + this.base(arguments, jcrNode.getName(), org.argeo.jcr.ria.views.JcrTreeFolder.loader); + this.setJcrNode(jcrNode); + }, + + statics : { + loader : function(treeFolder){ + if(treeFolder.getState() == "loaded") return; + var jcrNode = treeFolder.getJcrNode(); + jcrNode.addListener("changeLoadState", function(event){ + if(event.getData() == "loaded"){ + org.argeo.jcr.ria.views.JcrTreeFolder.jcrNodeToTreeFolder(jcrNode, treeFolder); + } + }); + if(jcrNode.getLoadState()=="loaded"){ + org.argeo.jcr.ria.views.JcrTreeFolder.jcrNodeToTreeFolder(jcrNode, treeFolder); + }else if(jcrNode.getLoadState() == "empty"){ + //treeFolder.removeAll(); + jcrNode.load(); + } + }, + + jcrNodeToTreeFolder : function(loadedNode, parentTreeFolder){ + var children = loadedNode.getChildren(); + for(var i=0;i