icon : "org.argeo.slc.ria/media-playback-start.png",\r
shortcut : null,\r
enabled : true,\r
- menu : "Context",\r
- toolbar : "context",\r
+ menu : "Zoom",\r
+ toolbar : null,\r
callback : function(e) {\r
var selection = this.tree.getSelection();\r
if(!selection.length) return;\r
icon : "org.argeo.slc.ria/media-playback-start.png",\r
shortcut : null,\r
enabled : true,\r
- menu : "Context",\r
- toolbar : "context",\r
+ menu : "Zoom",\r
+ toolbar : null,\r
submenu : [],\r
callback : function(e) {\r
},\r
}\r
this.setMenu(pathes);\r
}\r
- } \r
+ },\r
+ "refresh" : {\r
+ label : "Refresh",\r
+ icon : "org.argeo.slc.ria/media-playback-start.png",\r
+ shortcut : null,\r
+ enabled : true,\r
+ menu : "Selection",\r
+ toolbar : "selection",\r
+ callback : function(e) {\r
+ var selection = this.tree.getSelection();\r
+ if(!selection.length) return;\r
+ var jcrNode = selection[0].getJcrNode();\r
+ var children = jcrNode.getChildren();\r
+ for(var i=0;i<children.length;i++){\r
+ jcrNode.removeChild(children[i]);\r
+ }\r
+ jcrNode.setLoadState("empty");\r
+ jcrNode.load();\r
+ },\r
+ selectionChange : function(viewId, selection){\r
+ this.setEnabled(false);\r
+ if(selection && selection.length && selection[0].getJcrNode){\r
+ this.setEnabled(true);\r
+ }\r
+ }\r
+ },\r
+ "open" : {\r
+ label : "Open",\r
+ icon : "org.argeo.slc.ria/media-playback-start.png",\r
+ shortcut : null,\r
+ enabled : true,\r
+ menu : "Selection",\r
+ toolbar : "selection",\r
+ callback : function(e) {\r
+ var selection = this.tree.getSelection();\r
+ if(!selection.length) return;\r
+ var jcrNode = selection[0].getJcrNode();\r
+ var viewsManager = org.argeo.ria.components.ViewsManager.getInstance(); \r
+ var testView = viewsManager.initIViewClass(org.argeo.jcr.ria.views.PlainXmlViewer, "editor", jcrNode, "close");\r
+ testView.load(jcrNode);\r
+ \r
+ },\r
+ selectionChange : function(viewId, selection){\r
+ this.setEnabled(false);\r
+ if(selection && selection.length && selection[0].getJcrNode){\r
+ this.setEnabled(true);\r
+ }\r
+ }\r
+ },\r
+ "dl" : {\r
+ label : "Download",\r
+ icon : "org.argeo.slc.ria/media-playback-start.png",\r
+ shortcut : null,\r
+ enabled : true,\r
+ menu : "Selection",\r
+ toolbar : "selection",\r
+ callback : function(e) {\r
+ var selection = this.tree.getSelection();\r
+ if(!selection.length) return;\r
+ var jcrNode = selection[0].getJcrNode();\r
+ var url = '/org.argeo.slc.webapp/getJcrItem.jcr?path=' + jcrNode.getPath() + '&download=true';\r
+ org.argeo.ria.Application.INSTANCE.javascriptDownloadLocation(url);\r
+ },\r
+ selectionChange : function(viewId, selection){\r
+ this.setEnabled(false);\r
+ if(selection && selection.length && selection[0].getJcrNode){\r
+ this.setEnabled(true);\r
+ }\r
+ }\r
+ } \r
}\r
},\r
viewSelection : {\r
event : "changeInstanceId"\r
},\r
instanceLabel : {\r
- init:"Tree View",\r
+ init:"JCR Tree",\r
event : "changeInstanceLabel"\r
},\r
dataModel : {\r
var dataModel = this.getDataModel();\r
dataModel.addListener("changeContextNode", function(event){\r
var contextNode = event.getData();\r
- var loader = function(){};\r
var newRoot = new org.argeo.jcr.ria.views.JcrTreeFolder(contextNode);\r
this.tree.setRoot(newRoot);\r
this.tree.setSelection([newRoot]);\r
var viewSelection = this.getViewSelection();\r
viewSelection.clear(); \r
for(var i=0;i<sel.length;i++){\r
- selection.push(sel[i].getJcrNode());\r
+ if(sel[i].getJcrNode){\r
+ selection.push(sel[i].getJcrNode());\r
+ }\r
viewSelection.addNode(sel[i]);\r
}\r
- this.getDataModel().setSelection(selection);\r
+ this.getDataModel().setSelectionWithSource(selection, this);\r
+ }, this);\r
+ dataModel.addListener("changeSelection", function(e){\r
+ if(this.getDataModel().getSelectionSource() == this) return;\r
+ var selection = this.getDataModel().getSelection();\r
+ // Arbitrary : for the moment, external select can only apply\r
+ // to children of the current selection\r
+ var crtSel = this.tree.getSelection();\r
+ if(!crtSel.length || !selection.length) return;\r
+ var crtTreeSel = crtSel[0];\r
+ if(selection[0].getParent() && crtTreeSel.getJcrNode().getPath() == selection[0].getParent().getPath()){\r
+ crtTreeSel.setOpen(true);\r
+ var crtChildren =crtTreeSel.getChildren(); \r
+ for(var i=0;i<crtChildren.length;i++){\r
+ if(crtChildren[i].getJcrNode().getPath() == selection[0].getPath()){\r
+ this.tree.setSelection([crtChildren[i]]);\r
+ return;\r
+ }\r
+ }\r
+ }else if(crtTreeSel.getParent() && crtTreeSel.getJcrNode().getParent().getPath() == selection[0].getPath()){\r
+ this.tree.setSelection([crtTreeSel.getParent()]);\r
+ }\r
+ \r
}, this);\r
this.tree.setContextMenu(org.argeo.ria.event.CommandsManager\r
- .getInstance().createMenuFromIds(["zoom_in", "zoom_out"])); \r
+ .getInstance().createMenuFromIds(["open", "dl", "zoom_in", "zoom_out"])); \r
},\r
\r
/**\r