提前感谢您阅读我,我正在将 Gtk3 应用程序迁移到 Gtk4。在我的应用程序中,一些菜单项标签使用 pango 标记标签:
GtkWidget * markup_menu_item (gchar * label)
{
GtkWidget * item = gtk_menu_item_new ();
GtkWidget * lab = gtk_label_new (label);
gtk_label_set_use_markup (GTK_LABEL(lab), TRUE);
gtk_container_add (GTK_CONTAINER(item), lab);
return item;
}
现在使用新的 API,我使用以下代码,而不是一个无论如何都不能包含 Pango 标记的 XML 文件:
GMenuItem * menu_item (const gchar * label,
const gchar * action,
const gchar * accel,
const gchar * custom,
gboolean use_markup)
{
GMenuItem * item = g_menu_item_new (label, action);
if (accel) g_menu_item_set_attribute (item, "accel", "s", accel, NULL);
if (custom) g_menu_item_set_attribute (item, "custom", "s", custom, NULL);
if (use_markup)
{
// What would be the attribute (if any ?)
// g_menu_item_set_attribute (item, ???, use_markup, NULL);
}
是否有一个属性可以传递给菜单项,或者是使用“自定义”属性插入小部件的唯一方法?
在此先感谢您的帮助。
此致。
S。