X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=server%2Forg.argeo.slc.ria%2Fsrc%2Fargeo-ria-lib%2Fjcr%2Fclass%2Forg%2Fargeo%2Fjcr%2Fria%2Fmodel%2FDataModel.js;h=a8f75c0ebf776665f1cd56155b520f2c36f6f5d3;hb=730d2bd9dcd58cf9ff28115174a2a43f2c1359cd;hp=9ed6205394c9222639fb8587e95092f37687c673;hpb=d44228348e3af173e5fa2ad33853e64acb0b59ca;p=gpl%2Fargeo-slc.git diff --git a/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/model/DataModel.js b/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/model/DataModel.js index 9ed620539..a8f75c0eb 100644 --- a/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/model/DataModel.js +++ b/server/org.argeo.slc.ria/src/argeo-ria-lib/jcr/class/org/argeo/jcr/ria/model/DataModel.js @@ -14,8 +14,14 @@ qx.Class.define("org.argeo.jcr.ria.model.DataModel", { check : "org.argeo.jcr.ria.model.Node" }, selection : { - check : "org.argeo.jcr.ria.model.Node[]", - event : "changeSelection" + check : "Array", + event : "changeSelection", + init : [] + }, + selectionSource : { + check : "Object", + init : null, + nullable : true } }, @@ -28,6 +34,7 @@ qx.Class.define("org.argeo.jcr.ria.model.DataModel", { requireContextChange : function(path){ var targetNode; var rootNode = this.getRootNode(); + this.setSelection([]); if(!path){ targetNode = rootNode; }else{ @@ -36,9 +43,8 @@ qx.Class.define("org.argeo.jcr.ria.model.DataModel", { path = path.substring(0, path.length-1); } var base = path.substring(path.lastIndexOf("/")+1); - targetNode = new org.argeo.jcr.ria.model.Node(base); + targetNode = new org.argeo.jcr.ria.model.Node(base, rootNode.getNodeProvider()); rootNode.addChild(targetNode); - targetNode.setNodeProvider(rootNode.getNodeProvider()); targetNode.setPath(path); } var observer = function(event){ @@ -57,7 +63,11 @@ qx.Class.define("org.argeo.jcr.ria.model.DataModel", { this.fireDataEvent("changeContextNode", targetNode); }; targetNode.addListener("changeLoadState", observer, this); - targetNode.load(); + targetNode.load(1); + }, + setSelectionWithSource : function(selection, source){ + this.setSelectionSource(source); + this.setSelection(selection); } }