如何在Glade中编辑gtk自定义小部件的子小部件?

时间:2010-09-27 15:14:41

标签: c gtk

我正在制作用于工作的自定义Gtk +小部件(在C中),其中一个要求是这些小部件必须在Glade中可编辑。

到目前为止它工作得很好,例如我有一个由带有按钮的表组成的小部件,具有自定义特定行为和一些可以在Glade中正确编辑的自定义特定属性。

所以这项工作,但我现在需要允许用户更改按钮的属性(在我的自定义小部件内) - 并且只有那些按钮 - 来自Glade。

似乎有可能因为许多基本的Gtk小部件(很多容器)在林间空间中暴露了一些子小部件,例如允许编辑GtkFrame的标签。

但我找不到任何相关的文件。任何人都可以解释如何实现这一目标吗?

1 个答案:

答案 0 :(得分:2)

好的,我想我找到了答案(经过几天的搜索并在Gtk论坛上询问)。

主要思想是,在glade中显示子窗口小部件的代码,以及实际上在glade中特定的所有特定视觉行为,都是用glade加载的C插件编写的。

首先,您可以在the catalog file provided by Glade for Gtk+中看到有glade_gtk_前缀的函数名称。这些函数在the C plugin where you can see that functions中提供,使用glade API将小部件适配器添加到Glade。

然后,这些适配器允许目标小部件在林间空地中可见。

事实上,我发现了一些我尚未完成阅读的文档:http://library.gnome.org/devel/gladeui/stable/catalog.html

有人确认:http://www.gtkforums.com/viewtopic.php?p=18030#18030