带XML的Gtk UI:如何在字段中放置枚举值

带XML的Gtk UI:如何在字段中放置枚举值,gtk,gtk3,Gtk,Gtk3,我希望能够将诸如GTK_ICON_SIZE_对话框之类的枚举值放入XML文件中。记住要分配给属性的数字很麻烦。我想说的是,我想要这个: GTK_图标大小_对话框 而不是这个: 6 不会出现GTK图标大小对话框不是整数的错误。您不能;XML格式的定义并不包括这一点。(它们主要不是手写的,而是用Glade之类的程序创建的。) 如果您想这样编写XML文件,可以创建一个XML预处理器,使用GObject内省来确定值,用值替换枚举名称。无法使用GTK\u图标大小\u对话框的原因(或枚举类型定义的“昵称

我希望能够将诸如GTK_ICON_SIZE_对话框之类的枚举值放入XML文件中。记住要分配给属性的数字很麻烦。我想说的是,我想要这个:

GTK_图标大小_对话框
而不是这个:

6

不会出现GTK图标大小对话框不是整数的错误。

您不能;XML格式的定义并不包括这一点。(它们主要不是手写的,而是用Glade之类的程序创建的。)


如果您想这样编写XML文件,可以创建一个XML预处理器,使用GObject内省来确定值,用值替换枚举名称。

无法使用
GTK\u图标大小\u对话框的原因(或枚举类型定义的“昵称”
对话框
)与用户界面定义文件中的任何其他枚举一样,预期值不是枚举,而是整数。出于历史原因,可以注册“自定义”图标大小;GTK开箱即用提供的图标大小在
GtkIconSize
枚举中定义,但额外的图标大小将根据每个应用程序扩展该枚举

由于预期的类型是泛型整数,XML解析器无法将枚举名为的字符串转换为整数值