Gtk4: пункты меню и разметка Pango

Заранее спасибо, что прочитали меня, я переношу приложение Gtk3 на Gtk4. В моем приложении некоторые метки пунктов меню, в которых используются метки разметки панго:

       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 я использую следующий код, а не XML-файл, который в любом случае не может содержать разметку Pango:

       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);
   }  

Есть ли атрибут, который нужно передать элементу меню, или это единственный способ вставить виджет последним при использовании «настраиваемого» атрибута?

Заранее спасибо за помощь.

С наилучшими пожеланиями.

С.

0 ответов

Другие вопросы по тегам