+static void
+set_mnemonic (PsppireScanf *scanf)
+{
+ if (scanf->use_underline || scanf->mnemonic_widget)
+ {
+ GList *l = gtk_container_get_children (GTK_CONTAINER (scanf));
+ while (l)
+ {
+ if (GTK_IS_LABEL (l->data))
+ {
+ const gchar *t = gtk_label_get_label (l->data);
+ if (g_strstr_len (t, -1, "_"))
+ {
+ g_object_set (l->data,
+ "use-underline", TRUE,
+ "mnemonic-widget", scanf->mnemonic_widget,
+ NULL);
+
+ break;
+ }
+ }
+ l = l->next;
+ }
+ g_list_free (l);
+ }
+}
+