|
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だとコールバックはどうやって実装しているのかしら。。。
|