void seahorse_gpgme_uid_set_userid (SeahorseGpgmeUid *self, gpgme_user_id_t userid) { SeahorsePgpUid *base; GObject *obj; gpgme_user_id_t uid; gchar *string; gint index, i; g_return_if_fail (SEAHORSE_IS_GPGME_UID (self)); g_return_if_fail (userid); if (self->pv->userid) g_return_if_fail (seahorse_gpgme_uid_is_same (self, userid)); /* Make sure that this userid is in the pubkey */ index = -1; for (i = 0, uid = self->pv->pubkey->uids; uid; ++i, uid = uid->next) { if(userid == uid) { index = i; break; } } g_return_if_fail (index >= 0); self->pv->userid = userid; self->pv->gpgme_index = index; obj = G_OBJECT (self); g_object_freeze_notify (obj); g_object_notify (obj, "userid"); g_object_notify (obj, "gpgme_index"); base = SEAHORSE_PGP_UID (self); string = convert_string (userid->comment); seahorse_pgp_uid_set_comment (base, string); g_free (string); string = convert_string (userid->email); seahorse_pgp_uid_set_email (base, string); g_free (string); string = convert_string (userid->name); seahorse_pgp_uid_set_name (base, string); g_free (string); realize_signatures (self); seahorse_pgp_uid_set_validity (base, seahorse_gpgme_convert_validity (userid->validity)); g_object_thaw_notify (obj); }
static void seahorse_pgp_uid_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { SeahorsePgpUid *self = SEAHORSE_PGP_UID (object); switch (prop_id) { case PROP_SIGNATURES: seahorse_pgp_uid_set_signatures (self, g_value_get_boxed (value)); break; case PROP_VALIDITY: seahorse_pgp_uid_set_validity (self, g_value_get_uint (value)); break; case PROP_NAME: seahorse_pgp_uid_set_name (self, g_value_get_string (value)); break; case PROP_EMAIL: seahorse_pgp_uid_set_email (self, g_value_get_string (value)); break; case PROP_COMMENT: seahorse_pgp_uid_set_comment (self, g_value_get_string (value)); break; } }