- signal_accel_activate = g_signal_new ("accel_activate",
- G_OBJECT_CLASS_TYPE (class),
- G_SIGNAL_DETAILED,
- 0,
- accel_activate_accumulator, NULL,
- _gtk_marshal_BOOLEAN__OBJECT_UINT_UINT,
- G_TYPE_BOOLEAN, 3, G_TYPE_OBJECT, G_TYPE_UINT, G_TYPE_UINT);
- signal_accel_changed = g_signal_new ("accel_changed",
- G_OBJECT_CLASS_TYPE (class),
- G_SIGNAL_RUN_FIRST | G_SIGNAL_DETAILED,
- G_STRUCT_OFFSET (GtkAccelGroupClass, accel_changed),
- NULL, NULL,
- _gtk_marshal_VOID__UINT_UINT_BOXED,
- G_TYPE_NONE, 3, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_CLOSURE);
+
+ g_object_class_install_property (object_class,
+ PROP_IS_LOCKED,
+ g_param_spec_boolean ("is-locked",
+ "Is locked",
+ "Is the accel group locked",
+ FALSE,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property (object_class,
+ PROP_MODIFIER_MASK,
+ g_param_spec_flags ("modifier-mask",
+ "Modifier Mask",
+ "Modifier Mask",
+ GDK_TYPE_MODIFIER_TYPE,
+ default_accel_mod_mask,
+ G_PARAM_READABLE));
+
+ /**
+ * GtkAccelGroup::accel-activate:
+ * @accel_group: the #GtkAccelGroup which received the signal
+ * @acceleratable: the object on which the accelerator was activated
+ * @keyval: the accelerator keyval
+ * @modifier: the modifier combination of the accelerator
+ *
+ * The accel-activate signal is an implementation detail of
+ * #GtkAccelGroup and not meant to be used by applications.
+ *
+ * Returns: %TRUE if the accelerator was activated
+ */
+ signal_accel_activate =
+ g_signal_new (I_("accel-activate"),
+ G_OBJECT_CLASS_TYPE (class),
+ G_SIGNAL_DETAILED,
+ 0,
+ _gtk_boolean_handled_accumulator, NULL,
+ _gtk_marshal_BOOLEAN__OBJECT_UINT_FLAGS,
+ G_TYPE_BOOLEAN, 3,
+ G_TYPE_OBJECT,
+ G_TYPE_UINT,
+ GDK_TYPE_MODIFIER_TYPE);
+ /**
+ * GtkAccelGroup::accel-changed:
+ * @accel_group: the #GtkAccelGroup which received the signal
+ * @keyval: the accelerator keyval
+ * @modifier: the modifier combination of the accelerator
+ * @accel_closure: the #GClosure of the accelerator
+ *
+ * The accel-changed signal is emitted when an entry
+ * is added to or removed from the accel group.
+ *
+ * Widgets like #GtkAccelLabel which display an associated
+ * accelerator should connect to this signal, and rebuild
+ * their visual representation if the @accel_closure is theirs.
+ */
+ signal_accel_changed =
+ g_signal_new (I_("accel-changed"),
+ G_OBJECT_CLASS_TYPE (class),
+ G_SIGNAL_RUN_FIRST | G_SIGNAL_DETAILED,
+ G_STRUCT_OFFSET (GtkAccelGroupClass, accel_changed),
+ NULL, NULL,
+ _gtk_marshal_VOID__UINT_FLAGS_BOXED,
+ G_TYPE_NONE, 3,
+ G_TYPE_UINT,
+ GDK_TYPE_MODIFIER_TYPE,
+ G_TYPE_CLOSURE);
+
+ g_type_class_add_private (object_class, sizeof (GtkAccelGroupPrivate));