私は小さな MacRuby プロジェクトに取り組んでおり、0.5b1 を使用して、Growl に必要なデリゲート メソッドを実装しています (アプリは通知に Growl を使用しています)。
通知がクリックされたときに Growl コールバックに応答できるようにしたいのですが、Growl デリゲートを登録すると、デリゲートに Growl 登録情報::GrowlApplicationBridge.setGrowlDelegate self
が要求されます。NSDictionary*
標準の NSDictionary インスタンスを返そうとしたり、オブジェクトをポインターに強制しようとしたりしましたが、毎回セグメンテーション違反が発生するようです (これは、オブジェクトへのポインターではなくオブジェクトを返しているためだと思います)。 .
オブジェクト自体へのポインターを取得できるかどうか、またはp = Pointer.new("NSDictionary")
何らかの方法でデータを割り当てることができるかどうか疑問に思っています (p.assign(dict)
整数を期待しているため、使用すると型エラーが発生します)。
他のオプションは、デリゲートとして機能する ObjC クラスを作成し、Ruby からそれにフックすることだと思いますが、それは目的をやや無効にします....