From: Charles du Jeu Date: Tue, 9 Dec 2008 20:10:03 +0000 (+0000) Subject: Default applet for test results X-Git-Tag: argeo-slc-2.1.7~2279 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=34182b382b3817fcb0aafec775c835245687f8a0;p=gpl%2Fargeo-slc.git Default applet for test results git-svn-id: https://svn.argeo.org/slc/trunk@1983 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/slc/ria/Applet.js b/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/slc/ria/Applet.js new file mode 100644 index 000000000..849a23ace --- /dev/null +++ b/org.argeo.slc.webapp/src/main/webapp/source/class/org/argeo/slc/ria/Applet.js @@ -0,0 +1,224 @@ +/** + * @author Charles + */ +qx.Class.define("org.argeo.slc.web.Applet", +{ + extend : qx.ui.container.Composite, + implement : [org.argeo.ria.components.IView], + + construct : function(){ + this.base(arguments); + this.setLayout(new qx.ui.layout.VBox()); + this.passedStatus = "PASSED"; + this.failedStatus = "FAILED"; + }, + + properties : + { + view : { + init : null + }, + commands : { + init : { + "close" : { + label : "Close Result", + icon : "resource/slc/window-close.png", + shortcut : "Control+w", + enabled : true, + menu : "Test", + toolbar : "result", + callback : function(e){ + // Call service to delete + this.getView().empty(); + }, + selectionChange : function(viewId, xmlNode){ + if(viewId != "applet") return; + }, + command : null + } + } + } + }, + + /* + ***************************************************************************** + MEMBERS + ***************************************************************************** + */ + + members : + { + init : function(viewPane){ + this.setView(viewPane); + }, + + load : function(xmlNode){ + this.data = xmlNode; + if(!xmlNode) return; + // Load XML or Whatever + var service; + var NSMap = {slc:"http://argeo.org/projects/slc/schemas"}; + var testId = qx.dom.Node.getText(org.argeo.ria.util.Element.selectSingleNode(this.data, "slc:uuid")); + this.getView().setViewTitle("Test "+testId); + var request = org.argeo.slc.web.SlcApi.getLoadResultService(testId); + request.addListener("completed", function(response){ + this.createXmlGui(response.getContent()); + this.getView().setOnLoad(false); + }, this); + this.getView().setOnLoad(true); + request.send(); + + }, + + addScroll : function(){ + return false; + }, + + createXmlGui : function(responseXml){ + var NSMap = { + "slc" : "http://argeo.org/projects/slc/schemas" + } + if(!qx.Class.hasMixin(qx.ui.treevirtual.TreeVirtual, qx.ui.treevirtual.MNode)){ + qx.Class.include(qx.ui.treevirtual.TreeVirtual,qx.ui.treevirtual.MNode); + } + this.tree = new qx.ui.treevirtual.TreeVirtual(["Test", "State", "Message", "Id"]); + this.tree.getTableColumnModel().setDataCellRenderer(0, new org.argeo.ria.util.TreeDataCellRenderer()); + this.tree.getDataRowRenderer().setHighlightFocusRow(false); // Default row renderer + this.tree.setRowHeight(18); + this.tree.setStatusBarVisible(false); + this.tree.setDecorator(new qx.ui.decoration.Background("#fff")); + var model = this.tree.getDataModel(); + var resNodes = org.argeo.ria.util.Element.selectNodes(responseXml, "//slc:result-part", NSMap); + var resultParts = {}; + var addedPaths = {}; + for(var i=0;i