使用C / Vala编写的GTK3应用程序进行动态和静态脚本编写

时间:2014-07-23 18:33:49

标签: javascript c gtk gtk3 vala

我想为我的GTK + 3应用程序提供脚本方面,特别是我希望有一个动态静态功能集:

  • 动态部分应该是关于运行自定义UI的某些部分的用户的脚本
  • static 部分应该是为我的应用程序编写新的自定义小部件

也没有什么能阻止我以动态的方式思考这个问题,这意味着用户定义的新小部件可能只是在运行时执行的东西,并不一定像C一样被静态编译/ C ++库。

所以我搜索了一些可能满足我需求的东西,我发现我需要一个名为 Gobject introspection 的属性,据我所知,这意味着支持它的库知道如何处理使用Gobject以及如何修改它们,问题在于Gobject不一定是GTK对象或GUI的元素,Gobject是Gnome项目中更基本的部分,它不一定是专门的仅对于GTK来说,它是一个非常通用的库。

另一个问题是,我还没有找到一个明确表示支持运行/动态编辑GTK小部件的项目。

有解决我问题的候选人,但我不能完全理解我是否可以按照我的意愿使用它们,还有Seed和Gjs这两个项目为GTK提供了Javascript接口,但看起来似乎没有明确支持将它们集成到C / Vala应用程序中。

* widget =我的UI的任何元素

考虑到我想提供编写代码片段来修改小部件的选项,我从Gnome项目中选择了哪些选项?

我已经准备好自己编写一些代码,比如新的VAPI文件,但我不知道是否有适合我的情况。

1 个答案:

答案 0 :(得分:4)

听起来你正在寻找libpeas