diff options
author | obscuren <geffobscura@gmail.com> | 2014-08-20 16:00:02 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2014-08-20 16:00:02 +0800 |
commit | ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0 (patch) | |
tree | 7646add8e4c6ce26accdf00a271383fd06511156 /ethereal/assets/ext | |
parent | a8409b0a8bfa7f8434ede495094fd8d892c28c91 (diff) | |
download | go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.tar go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.tar.gz go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.tar.bz2 go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.tar.lz go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.tar.xz go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.tar.zst go-tangerine-ecc2c609d4dfe210c66c9316cf5b060f9b3a4ff0.zip |
Implemented QML message filtering
Diffstat (limited to 'ethereal/assets/ext')
-rw-r--r-- | ethereal/assets/ext/filter.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ethereal/assets/ext/filter.js b/ethereal/assets/ext/filter.js new file mode 100644 index 000000000..20f0b36a3 --- /dev/null +++ b/ethereal/assets/ext/filter.js @@ -0,0 +1,23 @@ +var Filter = function(eth, options) { + this.callbacks = {}; + this.seed = Math.floor(Math.random() * 1000000); + this.eth = eth; + + eth.registerFilter(options, this.seed); +}; + +Filter.prototype.changed = function(callback) { + var cbseed = Math.floor(Math.random() * 1000000); + this.eth.registerFilterCallback(this.seed, cbseed); + + var self = this; + message.connect(function(messages, seed, callbackSeed) { + if(seed == self.seed && callbackSeed == cbseed) { + callback.call(self, messages); + } + }); +}; + +Filter.prototype.uninstall = function() { + eth.uninstallFilter(this.seed) +} |