]> git.argeo.org Git - gpl/argeo-slc.git/commitdiff
Poll logs, scroll to last row, and Copy As Text action.
authorCharles du Jeu <charles.dujeu@gmail.com>
Thu, 29 Apr 2010 14:57:33 +0000 (14:57 +0000)
committerCharles du Jeu <charles.dujeu@gmail.com>
Thu, 29 Apr 2010 14:57:33 +0000 (14:57 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@3535 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/SlcExecLoggerApplet.js

index d925f63b752ddc33b270d81983e030904b453b76..d928e4840ddf64e4129a482faa8e2626ecf5e340 100644 (file)
@@ -208,8 +208,66 @@ qx.Class.define("org.argeo.slc.ria.SlcExecLoggerApplet",
                table.setStatusBarVisible(true);\r
                window.add(table, {flex:1});\r
                window.setAllowMinimize(false);\r
+               window.setResizable(true, true, true, true);\r
+               \r
+               tableModel.addListener("dataChanged", function(event){\r
+                       if(!event.getData()) return;\r
+                       var dataMap = event.getData();\r
+                       table.scrollCellVisible(0, dataMap.lastRow);\r
+               });\r
+               \r
+               \r
+               var tA = new qx.ui.container.Composite(new qx.ui.layout.Canvas());              \r
+               tA.setHeight(120);\r
+               \r
+               var textArea = new qx.ui.form.TextArea();               \r
+               tA.add(textArea, {left:0,top:0, right:0,bottom:0});\r
+               \r
+               var okButton = new qx.ui.form.Button("Done");\r
+               okButton.setZIndex(2000);\r
+               tA.add(okButton, {bottom:20,right:20});\r
+               okButton.addListener("execute", function(){\r
+                       tA.setVisibility("excluded");\r
+               });\r
+               \r
+               textArea.setNativeContextMenu(true);\r
+               window.add(tA);\r
+               var cpButton = new qx.ui.toolbar.Button("Copy As Text", "org.argeo.slc.ria/edit-copy.png");\r
+               tBar.add(cpButton);\r
+               cpButton.addListener("execute", function(e){\r
+                       var all = tableModel.getData();\r
+                       var string = "";\r
+                       for(var i=0;i<all.length;i++){\r
+                               for(var j=0;j<all[i].length;j++){\r
+                                       string += all[i][j] + "\t";\r
+                               }\r
+                               string += "\n";\r
+                       }\r
+                       tA.setVisibility("visible");\r
+                       textArea.setValue(string);\r
+                       new qx.util.DeferredCall(function(){\r
+                               textArea.setSelection(0, string.length);\r
+                       }).schedule();                  \r
+               });\r
+               tA.setVisibility("excluded");\r
+               \r
+               \r
                \r
                // Call service to load execution message\r
+               this._loadSlcExecution(uuid, tableModel);\r
+               \r
+               var poller = new qx.event.Timer(3000);\r
+               poller.addListener("interval", function(e){\r
+                       this._loadSlcExecution(uuid, tableModel);\r
+               }, this);\r
+               \r
+               window.addListener("close", function(){\r
+                       poller.stop();\r
+               }, this);\r
+               poller.start();\r
+       },      \r
+\r
+       _loadSlcExecution : function(uuid, tableModel){\r
                var req = org.argeo.slc.ria.SlcApi.getSlcExecutionService(uuid);\r
                req.addListener("completed", function(response){                        \r
                        var xmlDoc = response.getContent();\r
@@ -236,7 +294,7 @@ qx.Class.define("org.argeo.slc.ria.SlcExecLoggerApplet",
                });\r
                req.send();\r
                \r
-       },      \r
+       },\r
        \r
        /**\r
         * Creates the applet layout\r