rem: gtk_signal_connect_after ( GTK_OBJECT ( arbre_categ ), "button-press-event", GTK_SIGNAL_FUNC ( verifie_double_click_categ ), NULL );
add: gtk_signal_connect ( GTK_OBJECT ( arbre_categ ), "button-press-event", GTK_SIGNAL_FUNC ( verifie_double_click_categ ), NULL );
context: GtkWidget *onglet_categories ( void ){  GtkWidget *onglet;  GtkWidget *scroll_window;  gchar *titres[] =  {    _("Categories list"),    _("Amount per category"),    _("Amount per subcategory"),    _("Amount per account")  };  GtkWidget *vbox;  GtkWidget *frame;  GtkWidget *vbox_frame;  GtkWidget *hbox;  GtkWidget *label;  GtkWidget *separateur;  GtkWidget *bouton;/* cration de la fentre qui sera renvoye */  onglet = gtk_hbox_new ( FALSE,			  5 );  gtk_container_set_border_width ( GTK_CONTAINER ( onglet ),				   10 );  gtk_widget_show ( onglet );/*   cration de la frame de gauche */  frame = gtk_frame_new ( NULL );  gtk_frame_set_shadow_type ( GTK_FRAME ( frame ),			       GTK_SHADOW_IN );  gtk_box_pack_start ( GTK_BOX ( onglet ),		       frame,		       FALSE,		       FALSE,		       0 );  gtk_widget_show (frame );  /* mise en place du gtk_text */  vbox = gtk_vbox_new ( FALSE,			5 );  gtk_container_set_border_width ( GTK_CONTAINER ( vbox ),				   15 );  gtk_container_add ( GTK_CONTAINER ( frame ),		      vbox );  gtk_widget_show ( vbox );  frame = gtk_frame_new ( SPACIFY(COLON(_("Information"))) );  gtk_box_pack_start ( GTK_BOX ( vbox ),		       frame,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( frame );  vbox_frame = gtk_vbox_new ( FALSE,			      5 );  gtk_container_set_border_width ( GTK_CONTAINER ( vbox_frame ),				   5 );  gtk_container_add ( GTK_CONTAINER ( frame ),		      vbox_frame );  gtk_widget_show ( vbox_frame );  entree_nom_categ = gtk_entry_new ();  gtk_widget_set_sensitive ( entree_nom_categ,			     FALSE );  gtk_signal_connect ( GTK_OBJECT ( entree_nom_categ ),		       "changed",		       GTK_SIGNAL_FUNC ( modification_du_texte_categ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       entree_nom_categ,		       FALSE,		       FALSE,		       10 );  gtk_widget_show ( entree_nom_categ );/* cration des radio bouton dbit/crdit */  separateur = gtk_hseparator_new ();  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       separateur,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( separateur );  label = gtk_label_new ( COLON(_("Sorting")) );  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       label,		       FALSE,		       FALSE,		       10 );  gtk_widget_show ( label );  bouton_categ_debit = gtk_radio_button_new_with_label ( NULL,							 _("Debit") );  gtk_widget_set_sensitive ( bouton_categ_debit,			     FALSE );  gtk_signal_connect ( GTK_OBJECT ( bouton_categ_debit ),		       "toggled",		       GTK_SIGNAL_FUNC ( modification_du_texte_categ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       bouton_categ_debit,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_categ_debit );  bouton_categ_credit = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON ( bouton_categ_debit ),								      _("Credit") );  gtk_widget_set_sensitive ( bouton_categ_credit,			     FALSE );  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       bouton_categ_credit,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_categ_credit );  separateur = gtk_hseparator_new ();  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       separateur,		       FALSE,		       FALSE,		       10 );  gtk_widget_show ( separateur );/*   cration des boutons modifier et annuler */  hbox = gtk_hbox_new ( TRUE,			5 );  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       hbox,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( hbox );  bouton_modif_categ_modifier = gtk_button_new_from_stock (GTK_STOCK_APPLY);  gtk_button_set_relief ( GTK_BUTTON ( bouton_modif_categ_modifier ),			  GTK_RELIEF_NONE );  gtk_widget_set_sensitive ( bouton_modif_categ_modifier,			     FALSE );  gtk_signal_connect ( GTK_OBJECT ( bouton_modif_categ_modifier ),		       "clicked",		       GTK_SIGNAL_FUNC ( clique_sur_modifier_categ ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( hbox ),		       bouton_modif_categ_modifier,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_modif_categ_modifier );  bouton_modif_categ_annuler = gtk_button_new_from_stock (GTK_STOCK_CANCEL);  gtk_button_set_relief ( GTK_BUTTON ( bouton_modif_categ_annuler ),			  GTK_RELIEF_NONE );  gtk_signal_connect ( GTK_OBJECT ( bouton_modif_categ_annuler ),		       "clicked",		       GTK_SIGNAL_FUNC ( clique_sur_annuler_categ ),		       NULL );  gtk_widget_set_sensitive ( bouton_modif_categ_annuler,			     FALSE );  gtk_box_pack_start ( GTK_BOX ( hbox ),		       bouton_modif_categ_annuler,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_modif_categ_annuler);  bouton_supprimer_categ = gtk_button_new_from_stock (GTK_STOCK_REMOVE);  gtk_button_set_relief ( GTK_BUTTON ( bouton_supprimer_categ ),			  GTK_RELIEF_NONE );  gtk_widget_set_sensitive ( bouton_supprimer_categ,			     FALSE );  gtk_signal_connect ( GTK_OBJECT ( bouton_supprimer_categ ),		       "clicked",		       GTK_SIGNAL_FUNC ( supprimer_categ ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox_frame ),		       bouton_supprimer_categ,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_supprimer_categ );  /* mise en place des boutons ajout d'1 categ / sous-categ */  bouton_ajouter_categorie = gtk_button_new_with_label ( _("Add a category") );  gtk_button_set_relief ( GTK_BUTTON ( bouton_ajouter_categorie ),			  GTK_RELIEF_NONE );  gtk_signal_connect ( GTK_OBJECT ( bouton_ajouter_categorie ),		       "clicked",		       GTK_SIGNAL_FUNC ( appui_sur_ajout_categorie ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox ),		       bouton_ajouter_categorie,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_ajouter_categorie );  bouton_ajouter_sous_categorie = gtk_button_new_with_label ( _("Add a subcategory") );  gtk_button_set_relief ( GTK_BUTTON ( bouton_ajouter_sous_categorie ),			  GTK_RELIEF_NONE );  gtk_widget_set_sensitive ( bouton_ajouter_sous_categorie,			     FALSE );  gtk_signal_connect ( GTK_OBJECT ( bouton_ajouter_sous_categorie ),		       "clicked",		       GTK_SIGNAL_FUNC ( appui_sur_ajout_sous_categorie ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox ),		       bouton_ajouter_sous_categorie,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton_ajouter_sous_categorie );  separateur = gtk_hseparator_new ();  gtk_box_pack_start ( GTK_BOX ( vbox ),		       separateur,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( separateur );  /* on met le bouton exporter */  bouton = gtk_button_new_with_label ( _("Export") );  gtk_button_set_relief ( GTK_BUTTON ( bouton ),			  GTK_RELIEF_NONE );  gtk_signal_connect ( GTK_OBJECT ( bouton ),		       "clicked",		       GTK_SIGNAL_FUNC ( exporter_categ ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox ),		       bouton,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton );  /* on met le bouton importer */  bouton = gtk_button_new_with_label ( _("Import") );  gtk_button_set_relief ( GTK_BUTTON ( bouton ),			  GTK_RELIEF_NONE );  gtk_signal_connect ( GTK_OBJECT ( bouton ),		       "clicked",		       GTK_SIGNAL_FUNC ( importer_categ ),		       NULL );  gtk_box_pack_start ( GTK_BOX ( vbox ),		       bouton,		       FALSE,		       FALSE,		       0 );  gtk_widget_show ( bouton );/*   cration de la frame de droite */  frame = gtk_frame_new ( NULL );  gtk_frame_set_shadow_type ( GTK_FRAME ( frame ),			       GTK_SHADOW_IN );  gtk_box_pack_start ( GTK_BOX ( onglet ),		       frame,		       TRUE,		       TRUE,		       5 );  gtk_widget_show (frame );  vbox = gtk_vbox_new ( FALSE,			5 );  gtk_container_set_border_width ( GTK_CONTAINER ( vbox ),				   10 );  gtk_container_add ( GTK_CONTAINER ( frame ),		      vbox );  gtk_widget_show ( vbox );  /* on y ajoute la barre d'outils */  gtk_box_pack_start ( GTK_BOX ( vbox ),		       creation_barre_outils_categ(),		       FALSE,		       FALSE,		       0 );/* cration de l'arbre principal */  scroll_window = gtk_scrolled_window_new ( NULL,				     NULL );  gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scroll_window ),				   GTK_POLICY_AUTOMATIC,				   GTK_POLICY_AUTOMATIC );  gtk_box_pack_start ( GTK_BOX ( vbox ),		       scroll_window,		       TRUE,		       TRUE,		       0 );  gtk_widget_show ( scroll_window );  arbre_categ = gtk_ctree_new_with_titles ( 4,					    0,					    titres );  gtk_ctree_set_line_style ( GTK_CTREE ( arbre_categ ),			     GTK_CTREE_LINES_DOTTED );  gtk_ctree_set_expander_style ( GTK_CTREE ( arbre_categ ),				 GTK_CTREE_EXPANDER_CIRCULAR );  gtk_clist_column_titles_passive ( GTK_CLIST ( arbre_categ ));  gtk_clist_set_column_justification ( GTK_CLIST ( arbre_categ ),				       0,				       GTK_JUSTIFY_LEFT);  gtk_clist_set_column_justification ( GTK_CLIST ( arbre_categ ),				       1,				       GTK_JUSTIFY_CENTER);  gtk_clist_set_column_justification ( GTK_CLIST ( arbre_categ ),				       2,				       GTK_JUSTIFY_CENTER);  gtk_clist_set_column_justification ( GTK_CLIST ( arbre_categ ),				       3,				       GTK_JUSTIFY_CENTER);  gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_categ ),				    0,				    FALSE );  gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_categ ),				    1,				    FALSE );  gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_categ ),				    2,				    FALSE );  gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_categ ),				    3,				    FALSE );  gtk_signal_connect_after ( GTK_OBJECT ( arbre_categ ),			     "button-press-event",			     GTK_SIGNAL_FUNC ( verifie_double_click_categ ),			     NULL );  gtk_signal_connect ( GTK_OBJECT ( arbre_categ ),		       "tree-select-row",		       GTK_SIGNAL_FUNC ( selection_ligne_categ ),		       NULL );  gtk_signal_connect ( GTK_OBJECT ( arbre_categ ),		       "tree-unselect-row",		       GTK_SIGNAL_FUNC ( enleve_selection_ligne_categ ),		       NULL );  gtk_signal_connect ( GTK_OBJECT ( arbre_categ ),		       "size-allocate",		       GTK_SIGNAL_FUNC ( changement_taille_liste_tiers ),		       NULL );  gtk_signal_connect ( GTK_OBJECT ( arbre_categ ),		       "tree-expand",		       GTK_SIGNAL_FUNC ( ouverture_node_categ ),		       NULL );  gtk_container_add ( GTK_CONTAINER (  scroll_window ),		      arbre_categ );  gtk_widget_show ( arbre_categ );  /* on met la fontion de tri alphabtique en prenant en compte les accents */  gtk_clist_set_compare_func ( GTK_CLIST ( arbre_categ ),			       (GtkCListCompareFunc) classement_alphabetique_tree );  /* la 1re fois qu'on affichera les catg, il faudra remplir la liste */  modif_categ = 1;  return ( onglet );}