rem: devise = gtk_clist_get_row_data ( GTK_CLIST ( liste ), ligne_selection_devise );
add: }
context: void retrait_devise ( GtkWidget *bouton,		      GtkWidget *liste ){    gint devise_trouvee;    struct struct_devise *devise;    GSList *list_tmp_transactions;    if ( ligne_selection_devise == -1 )	return;    devise = gtk_clist_get_row_data ( GTK_CLIST ( liste ),				      ligne_selection_devise );    /* we look for that currency in all the transactions and scheduler,     * if we find it, we cannot delete it */    devise_trouvee = 0;    list_tmp_transactions = gsb_data_transaction_get_transactions_list ();    while ( list_tmp_transactions )    {	gint transaction_number;	transaction_number = gsb_data_transaction_get_transaction_number (list_tmp_transactions -> data);	if ( gsb_data_transaction_get_currency_number (transaction_number) == devise -> no_devise )	{	    devise_trouvee = 1;	    list_tmp_transactions = NULL;	}	else	    list_tmp_transactions = list_tmp_transactions -> next;    }    if ( !devise_trouvee )    {	GSList *list_tmp;	list_tmp = gsb_data_scheduled_get_scheduled_list ();	while ( list_tmp )	{	    gint scheduled_number;	    scheduled_number = gsb_data_scheduled_get_scheduled_number (list_tmp -> data);	    if ( gsb_data_scheduled_get_currency_number (scheduled_number) == devise -> no_devise )	    {		devise_trouvee = 1;		list_tmp = NULL;	    }	    else		list_tmp = list_tmp -> next;	}    }    if ( devise_trouvee )    {	dialogue_error_hint ( g_strdup_printf ( _("Currency '%s' is used in current account.  Grisbi can't delete it."),						devise -> nom_devise ),			      g_strdup_printf ( _("Impossible to remove currency '%s'"), 						devise -> nom_devise) );	return;    }    gtk_clist_remove ( GTK_CLIST ( liste ), ligne_selection_devise );    liste_struct_devises = g_slist_remove ( liste_struct_devises, devise );    nb_devises--;}