icon : "resource/slc/view-refresh.png",\r
shortcut : "Control+l",\r
enabled : true,\r
- menu : "File",\r
- toolbar : "test",\r
+ menu : "Collection",\r
+ toolbar : "collection",\r
callback : function(e){\r
this.loadList();\r
}, \r
command : null\r
},\r
+ "copyfullcollection" : {\r
+ label : "Copy to...", \r
+ icon : "resource/slc/edit-copy.png",\r
+ shortcut : null,\r
+ enabled : false,\r
+ menu : "Collection",\r
+ toolbar : "collection",\r
+ callback : function(e){\r
+ // Call service to copy\r
+ },\r
+ submenu : {},\r
+ submenuCallback : function(commandId){\r
+ this.copySelectionToCollection(commandId, "current_collection");\r
+ },\r
+ init : function(){\r
+ // Call at command creation\r
+ org.argeo.ria.remote.RequestManager.getInstance().addListener("reload", function(event){\r
+ if(event.getDataType() == "collection" || event.getDataType() == "test_cases"){\r
+ var testList = org.argeo.ria.components.ViewsManager.getInstance().getViewPaneById("list").getContent();\r
+ testList.collectionListToMenu(this);\r
+ }\r
+ }, this);\r
+ },\r
+ command : null\r
+ },\r
"opentest" : {\r
label : "Open", \r
- icon : "resource/slc/document-open.png",\r
+ icon : "resource/slc/media-playback-start.png",\r
shortcut : "Control+o",\r
enabled : false,\r
menu : "Selection",\r
- toolbar : "test",\r
+ toolbar : "selection",\r
callback : function(e){\r
var viewsManager = org.argeo.ria.components.ViewsManager.getInstance();\r
var classObj = org.argeo.slc.web.Applet;\r
shortcut : null,\r
enabled : false,\r
menu : "Selection",\r
- toolbar : "test",\r
+ toolbar : "selection",\r
callback : function(e){ },\r
command : null,\r
submenu : {},\r
shortcut : "Control+d",\r
enabled : false,\r
menu : "Selection",\r
- toolbar : "test",\r
+ toolbar : "selection",\r
callback : function(e){\r
// Call service to delete\r
},\r
shortcut : "Control+c",\r
enabled : false,\r
menu : "Selection",\r
- toolbar : "test",\r
+ toolbar : "selection",\r
callback : function(e){\r
// Call service to copy\r
},\r
submenu : {},\r
+ submenuCallback : function(commandId){\r
+ this.copySelectionToCollection(commandId, "current_selection"); \r
+ },\r
init : function(){\r
// Call at command creation\r
org.argeo.ria.remote.RequestManager.getInstance().addListener("reload", function(event){\r
- if(event.getDataType() != "collection") return;\r
- this.setEnabled(false);\r
- this.clearMenus(); \r
- var collectionList = event.getContent();\r
- if(!collectionList) return;\r
- var submenus = [];\r
- for(var key in collectionList){\r
- submenus.push({\r
- "label":collectionList[key], \r
- "icon":null, \r
- "commandId":key\r
- });\r
+ if(event.getDataType() == "collection" || event.getDataType() == "test_cases"){\r
+ var testList = org.argeo.ria.components.ViewsManager.getInstance().getViewPaneById("list").getContent();\r
+ testList.collectionListToMenu(this, true);\r
}\r
- this.setMenu(submenus);\r
- var viewSelection = org.argeo.ria.components.ViewsManager.getInstance().getViewPaneSelection("list");\r
- if(viewSelection.getCount()) this.setEnabled(true);\r
}, this);\r
},\r
selectionChange : function(viewId, xmlNodes){\r
var collectionList = event.getContent();\r
select.removeAll();\r
for(key in collectionList){\r
- var item = new qx.ui.form.ListItem(collectionList[key], null, key);\r
+ var item = new qx.ui.form.ListItem(collectionList[key], "resource/slc/folder.png", key);\r
select.add(item);\r
if(key == this.getCollectionId()){\r
select.setSelected(item);\r
request.addListener("completed", function(response){\r
xml = response.getContent();\r
qx.log.Logger.info("Successfully loaded XML");\r
- //var resManager = org.argeo.ria.event.ResourcesManager.getInstance().fireReloadEvent("test_cases", xml);\r
var nodes = qx.xml.Element.selectNodes(xml, "//data");\r
for(var i=0; i<nodes.length;i++){\r
var rowData = nodes[i];\r
}, request);\r
request.send(); \r
},\r
- \r
+ \r
+ collectionListToMenu : function(command, checkSelection){\r
+ command.setEnabled(false);\r
+ command.clearMenus();\r
+ var collectionList = this.getCollectionList();\r
+ if(!collectionList) return;\r
+ var submenus = [];\r
+ for(var key in collectionList){\r
+ if(this.getCollectionId() && key == this.getCollectionId()) continue;\r
+ submenus.push({\r
+ "label":collectionList[key], \r
+ "icon":"resource/slc/folder.png", \r
+ "commandId":key\r
+ });\r
+ } \r
+ submenus.push({"label":"New...", "icon":"resource/slc/folder-new.png", "commandId":"slc.client.create"});\r
+ command.setMenu(submenus);\r
+ if(checkSelection){\r
+ var viewSelection = this.getView().getViewSelection();\r
+ if(viewSelection.getCount()) command.setEnabled(true);\r
+ }else{\r
+ command.setEnabled(true);\r
+ }\r
+ },\r
+ \r
+ copySelectionToCollection:function(collectionId, selectionType){\r
+ if(collectionId == "slc.client.create"){\r
+ var modal = new org.argeo.ria.components.Modal("Create collection", "resource/slc/folder-new.png");\r
+ modal.makePromptForm("Enter the new collection name", function(value){\r
+ if(value == ""){\r
+ alert("Please enter a name for the new collection!");\r
+ return false;\r
+ }\r
+ else {\r
+ // Create the collection now, then recall the callback with the new name. \r
+ this.copySelectionToCollection(value, selectionType);\r
+ return true;\r
+ }\r
+ }, this);\r
+ modal.attachAndShow();\r
+ }else{ \r
+ this.debug("Copying "+selectionType+" to collection " + collectionId);\r
+ }\r
+ },\r
+ \r
addScroll : function(){\r
return false;\r
} \r