我已经解决了上一个局部问题。
现在我能够注册GObject
通过亚型bindings-gobject
(见hpase )我可以实现SourceCompletionProvider
使用c'g_type_add_interface_static功能(但仍没有尝试过)。
唯一的问题是转换Ptr ()
由归国c'g_object_newv
,以gtk2hs
数据类型SourceCompletionProvider
。 我该怎么做? 任何提示?
SourceCompletionProvider
的定义如下:
newtype SourceCompletionProvider = SourceCompletionProvider (ForeignPtr (SourceCompletionProvider))
这是什么定义手段? 为什么它是递归? 供应商是一个ForeignPtr
到供应商-我看起来很奇怪。
谢谢。
解:
makeNewGObject mkGObject $ castPtr <$> c'g_object_newv myObType 0 nullPtr