信号

GioMenuModel::items-changed

声明

void
items_changed (
  GMenuModel* self,
  gint position,
  gint removed,
  gint added,
  gpointer user_data
)

描述 [源代码]

当菜单发生改变时发出。

菜单可能发生的变化只有项的删除或添加。项可能不会改变(除非在同一位置被删除和再次添加)。此信号能够描述这两种变化(同时发生)。

信号表示从索引 position 开始,删除了 removed 个项,并且在其位置添加了 added 个项。如果 removed 为零,则只添加了项。如果 added 为零,则只删除了项。

例如,如果菜单包含项 a、b、c、d(按此顺序)并且信号 (2, 1, 3) 发生,则菜单的新组合将是 a、b、(空项),(空项),_(空项),d(其中每个 _ 代表某些新项)。

信号处理程序可能查询模型(尤其是添加的项)并期望看到所报告修改的结果。信号在修改之后发出。

默认处理程序

默认处理程序在通过 g_signal_connect() 添加的处理程序之后调用。

参数

position

类型: gint

变更的位置。

removed

类型: gint

被删除的项的数量。

added

类型: gint

被添加的项的数量。