From: Kouhei S. <ko...@co...> - 2015-12-25 14:45:06
|
須藤です。 In <201...@lu...> "[ruby-gnome2-devel-ja] MatePanelApplet::Applet.factory_main が動かない" on Mon, 21 Dec 2015 22:54:52 +0900 (JST), Yuuki Harano <ma...@ma...> wrote: > arch linux で mate を使っており、GObjectIntrospection を使ってruby で > mate panel applet を作ろうとしていますが、うまくいきません。何が問題な > のか切り分けがうまくできていませんが、GObjectIntrospection の ruby > binding の問題か? と思った(*)ので、こちらに投げさせていただきました。 > > python で PyGI を使って mate panel applet を作る sample が見つかったの > で、それを元に以下のように作りました。 > # なお、その sample は動いてましたので、MatePanelApplet-4.0.typelib に > # は問題はないと思っています。 すみません、そのPythonのコードも見せてもらえませんか? どうなると正しく動いているのかわからないとなんとも言えなく て。。。 > /home/masm/src/mxmms2/test/test.rb > ---------------- > #!/usr/bin/env ruby > > system('date >> /tmp/log2') > > require 'gtk3' > Gtk.init > > module MatePanelApplet > end > loader = GObjectIntrospection::Loader.new(MatePanelApplet) > loader.load('MatePanelApplet') > > system('echo go >> /tmp/log2') > > MatePanelApplet::Applet.factory_main('MxmmsAppletFactory', true, MatePanelApplet::Applet.gtype) do これ、1(= エラー)が返っていたりしませんか? あと、MetaPanelAPpletFactoryCallback型でコールバックを渡さな いといけないので、少しCのコードも書かないといけないと思いま す。 こういうやつです。 https://github.com/ruby-gnome2/ruby-gnome2/blob/master/gtk3/ext/gtk3/rb-gtk3.c#L576 PyGIだとコールバックはどうやって実装しているのかしら。。。 |