\r
getRequest : function(url, method, responseType){\r
var request = new qx.io.remote.Request(url, method, responseType);\r
- /*\r
- request.addListener("sending", function(event){\r
- this.requestCreated(request);\r
- }, this);\r
- request.addListener("aborted", function(event){\r
- this.requestAborted(request);\r
+ this.enableCommand(request);\r
+ request.addListener("timeout", function(e){\r
+ this.requestTimeout(request);\r
}, this);\r
- request.addListener("failed", function(event){\r
+ request.addListener("failed", function(e){\r
this.requestFailed(request);\r
}, this);\r
- request.addListener("timeout", function(event){\r
- this.requestTimeout(request);\r
- }, this);\r
- request.addListener("completed", function(event){\r
- this.requestCompleted(request);\r
+ request.addListener("aborted", function(e){\r
+ this.requestFailed(request);\r
}, this);\r
- */\r
- this.enableCommand(request);\r
return request;\r
}, \r
\r
},\r
\r
requestAborted : function(req){\r
- this.disableCommand();\r
+ this.disableCommand(req);\r
},\r
\r
requestFailed : function(req){\r
- this.disableCommand();\r
+ this.disableCommand(req);\r
},\r
\r
requestTimeout : function(req){\r
- this.disableCommand();\r
+ this.disableCommand(req);\r
},\r
\r
- requestCompleted : function(req){\r
- this.disableCommand();\r
+ requestCompleted : function(request){\r
+ this.disableCommand(request);\r
},\r
\r
- disableCommand : function(){\r
- this.command.setEnabled(false); \r
- var manager = qx.event.Registration.getManager(this.command);\r
- manager.removeAllListeners(this.command);\r
+ disableCommand : function(request){\r
+ this.command.setEnabled(false);\r
+ var listener = request.getUserData("listener");\r
+ if(listener){\r
+ this.command.removeListener("execute", listener);\r
+ }\r
},\r
\r
enableCommand : function(request){\r
this.command.setEnabled(true);\r
qx.ui.core.queue.Manager.flush();\r
- this.command.addListener("execute", function(){\r
- request.abort();\r
- });\r
+ var listener = request.abort;\r
+ request.setUserData("listener", listener);\r
+ this.command.addListener("execute", listener);\r
}\r
}\r
});
\ No newline at end of file