自定义信号到javascript语言的gtk应用程序

时间:2014-07-14 15:50:28

标签: javascript signals gnome gobject gnome-shell

尝试在使用javascript语言的gtk应用程序中将对象的信号发送到另一个对象。

const pippo = new Lang.Class({
Name: "test.pippo",

_init: function () {
    Log('test init');

    this._start();
},

_start: function () {
    Log('signal emit');

    this.emit("pippo-start");

}
});

Signals.addSignalMethods(pippo.prototype);

这是我用来创建和绑定信号的方法:

var tmp =new Util.pippo();
tmp.connect('pippo-start', Lang.bind(this, function () {
  Log('event receive!!!');
}));

在日志中我看到信号刚刚发出但是从未通过功能正在收听; 任何建议?或javascript中此主题的文档? THX

1 个答案:

答案 0 :(得分:0)

似乎你所拥有的只是Object.prototype。 以定义原型的方式声明您的类:

function pippo() {
    this._init.apply(this, arguments);
}

/*
* 
*/
pippo.prototype = {
    _init: function () {
        Log('test init');

        this._start();
    },

    _start: function () {
        Log('signal emit');

        this.emit("pippo-start");
    }
}