如何替换已弃用的GSimpleActionGroup?

时间:2020-06-15 23:01:05

标签: c gtk gio

我想尝试一个非常基本的GSimpleAction,例如在键盘激活时执行一些方法。

由于我的应用程序未使用GtkApplicationWindow,因此根据this doc,我需要创建一个SimpleActionGroup。 现在的问题是,the doc of GSimpleActionGroup说它已经过时了。我应该改用GActionMap

GActionMap只是一个接口,因此我无法使用它。..我有点迷茫。

使用已废弃的GSimpleActionGroup,我的代码将如下所示:

  GSimpleActionGroup *group = g_simple_action_group_new ();
  GtkWidget* window = gtk_widget_get_toplevel (launcher->widget);
  launcher->action = g_simple_action_new ("Test123", None);
  g_signal_connect (launcher->action, "activate", saveCb);
  g_simple_action_group_insert (group, action);
  gtk_widget_insert_action_group (window, "win", group);
  const char *accels[] = {"<Contol><Shift>T", NULL};
  gtk_application_set_accels_for_action (app, "win.Test123", "<Primary>t");

不使用GSimpleActionGroup怎么办?

0 个答案:

没有答案