/** * seahorse_context_remove_object: * @sctx: The #SeahorseContext (can be NULL) * @sobj: The #SeahorseObject to remove * * Removes the object from the context * */ void seahorse_context_remove_object (SeahorseContext *sctx, SeahorseObject *sobj) { gconstpointer k; if (!sctx) sctx = seahorse_context_for_app (); g_return_if_fail (SEAHORSE_IS_CONTEXT (sctx)); g_return_if_fail (SEAHORSE_IS_OBJECT (sobj)); g_return_if_fail (seahorse_object_get_id (sobj) != 0); k = hashkey_by_source (seahorse_object_get_source (sobj), seahorse_object_get_id (sobj)); if (g_hash_table_lookup (sctx->pv->objects_by_source, k)) { g_return_if_fail (seahorse_object_get_context (sobj) == sctx); g_object_ref (sobj); g_signal_handlers_disconnect_by_func (sobj, object_notify, sctx); g_object_set (sobj, "context", NULL, NULL); g_hash_table_remove (sctx->pv->objects_by_source, k); setup_objects_by_type (sctx, sobj, FALSE); g_signal_emit (sctx, signals[REMOVED], 0, sobj); g_object_unref (sobj); } }
/** * seahorse_object_get_property: * @obj: The object to get the property for * @prop_id: The property requested * @value: out - the value as #GValue * @pspec: a #GParamSpec for the warning * * Returns: The property of the object @obj defined by the id @prop_id in @value. * */ static void seahorse_object_get_property (GObject *obj, guint prop_id, GValue *value, GParamSpec *pspec) { SeahorseObject *self = SEAHORSE_OBJECT (obj); switch (prop_id) { case PROP_CONTEXT: g_value_set_object (value, seahorse_object_get_context (self)); break; case PROP_SOURCE: g_value_set_object (value, seahorse_object_get_source (self)); break; case PROP_PREFERRED: g_value_set_object (value, seahorse_object_get_preferred (self)); break; case PROP_PARENT: g_value_set_object (value, seahorse_object_get_parent (self)); break; case PROP_ID: g_value_set_uint (value, seahorse_object_get_id (self)); break; case PROP_TAG: g_value_set_uint (value, seahorse_object_get_tag (self)); break; case PROP_LABEL: g_value_set_string (value, seahorse_object_get_label (self)); break; case PROP_NICKNAME: g_value_set_string (value, seahorse_object_get_nickname (self)); break; case PROP_MARKUP: g_value_set_string (value, seahorse_object_get_markup (self)); break; case PROP_DESCRIPTION: g_value_set_string (value, seahorse_object_get_description (self)); break; case PROP_ICON: g_value_set_string (value, seahorse_object_get_icon (self)); break; case PROP_IDENTIFIER: g_value_set_string (value, seahorse_object_get_identifier (self)); break; case PROP_LOCATION: g_value_set_enum (value, seahorse_object_get_location (self)); break; case PROP_USAGE: g_value_set_enum (value, seahorse_object_get_usage (self)); break; case PROP_FLAGS: g_value_set_uint (value, seahorse_object_get_flags (self)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, prop_id, pspec); break; } }