since: 2.32


g_menu_attribute_iter_get_next (
  GMenuAttributeIter* iter,
  const gchar** out_name,
  GVariant** value


This function combines g_menu_attribute_iter_next() with g_menu_attribute_iter_get_name() and g_menu_attribute_iter_get_value().

First the iterator is advanced to the next (possibly first) attribute. If that fails, then FALSE is returned and there are no other effects.

If successful, name and value are set to the name and value of the attribute that has just been advanced to. At this point, g_menu_attribute_iter_get_name() and g_menu_attribute_iter_get_value() will return the same values again.

The value returned in name remains valid for as long as the iterator remains at the current position. The value returned in value must be unreffed using g_variant_unref() when it is no longer in use.

Available since: 2.32



Type: const gchar**

The type of the attribute.

The argument will be set by the function.
The argument can be NULL.
The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.

Type: GVariant

The attribute value.

The argument will be set by the function.
The argument can be NULL.
The instance takes ownership of the data, and is responsible for freeing it.

Return value

Type: gboolean

TRUE on success, or FALSE if there is no additional attribute.