rem: GtkWidget *vbox; GtkWidget *frame; GtkWidget *vbox_frame; GtkWidget *hbox;
context: GtkWidget *onglet_tiers ( void ){    GtkWidget *onglet;    GtkWidget *scroll_window;    GtkWidget *scrolled_window_text;    gchar *titres[] =    {	_("Third parties list"),	_("Amount per third party"),	_("Amount per account"),	_("Last date")    };    GtkWidget *vbox;    GtkWidget *frame;    GtkWidget *vbox_frame;    GtkWidget *hbox;    /* création des pixmaps pour la liste */    pixmap_ouvre = gdk_pixmap_create_from_xpm_d ( GTK_WIDGET(window) -> window,						  &masque_ouvre, NULL, 						  (gchar **) book_open_xpm );    pixmap_ferme = gdk_pixmap_create_from_xpm_d ( GTK_WIDGET(window) -> window,						  &masque_ferme, NULL, 						  (gchar **) book_closed_xpm );    /* création de la fenêtre qui sera renvoyée */    onglet = gtk_hbox_new ( FALSE,			    5 );    gtk_container_set_border_width ( GTK_CONTAINER ( onglet ),				     10 );    gtk_widget_show ( onglet );    /*   création 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_tiers = gtk_entry_new ();    gtk_widget_set_sensitive ( entree_nom_tiers,			       FALSE );    gtk_signal_connect ( GTK_OBJECT ( entree_nom_tiers ),			 "changed",			 GTK_SIGNAL_FUNC ( modification_du_texte_tiers),			 NULL );    gtk_box_pack_start ( GTK_BOX ( vbox_frame ),			 entree_nom_tiers,			 FALSE,			 FALSE,			 0 );    gtk_widget_show ( entree_nom_tiers );    scrolled_window_text = gtk_scrolled_window_new ( FALSE, FALSE );    gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scrolled_window_text ),				     GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC );    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW(scrolled_window_text), 					  GTK_SHADOW_IN );    gtk_box_pack_start ( GTK_BOX ( vbox_frame ), scrolled_window_text, FALSE, FALSE, 0 );    text_box = gtk_text_view_new ();    gtk_text_view_set_pixels_above_lines (GTK_TEXT_VIEW (text_box), 3);    gtk_text_view_set_pixels_below_lines (GTK_TEXT_VIEW (text_box), 3);    gtk_text_view_set_left_margin (GTK_TEXT_VIEW (text_box), 3);    gtk_text_view_set_right_margin (GTK_TEXT_VIEW (text_box), 3);    gtk_text_view_set_wrap_mode ( GTK_TEXT_VIEW (text_box), GTK_WRAP_WORD );    gtk_container_add ( GTK_CONTAINER(scrolled_window_text), text_box );    gtk_widget_set_sensitive ( text_box, FALSE );    g_signal_connect ( G_OBJECT(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_box))),		       "changed", ((GCallback) modification_du_texte_tiers), NULL );    gtk_widget_show_all ( scrolled_window_text );    /*   création 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_tiers_modifier = gtk_button_new_from_stock (GTK_STOCK_APPLY);    gtk_button_set_relief ( GTK_BUTTON ( bouton_modif_tiers_modifier ),			    GTK_RELIEF_NONE );    gtk_widget_set_sensitive ( bouton_modif_tiers_modifier,			       FALSE );    gtk_signal_connect ( GTK_OBJECT ( bouton_modif_tiers_modifier ),			 "clicked",			 GTK_SIGNAL_FUNC ( clique_sur_modifier_tiers ),			 NULL );    gtk_box_pack_start ( GTK_BOX ( hbox ),			 bouton_modif_tiers_modifier,			 FALSE,			 FALSE,			 0 );    gtk_widget_show ( bouton_modif_tiers_modifier );    bouton_modif_tiers_annuler = gtk_button_new_from_stock (GTK_STOCK_CANCEL);    gtk_button_set_relief ( GTK_BUTTON ( bouton_modif_tiers_annuler ),			    GTK_RELIEF_NONE );    gtk_signal_connect ( GTK_OBJECT ( bouton_modif_tiers_annuler ),			 "clicked",			 GTK_SIGNAL_FUNC ( clique_sur_annuler_tiers ),			 NULL );    gtk_widget_set_sensitive ( bouton_modif_tiers_annuler,			       FALSE );    gtk_box_pack_start ( GTK_BOX ( hbox ),			 bouton_modif_tiers_annuler,			 FALSE,			 FALSE,			 0 );    gtk_widget_show ( bouton_modif_tiers_annuler);    bouton_supprimer_tiers = gtk_button_new_from_stock (GTK_STOCK_REMOVE);    gtk_button_set_relief ( GTK_BUTTON ( bouton_supprimer_tiers ),			    GTK_RELIEF_NONE );    gtk_widget_set_sensitive ( bouton_supprimer_tiers,			       FALSE );    gtk_signal_connect ( GTK_OBJECT ( bouton_supprimer_tiers ),			 "clicked",			 GTK_SIGNAL_FUNC ( supprimer_tiers ),			 NULL );    gtk_box_pack_start ( GTK_BOX ( vbox_frame ),			 bouton_supprimer_tiers,			 FALSE,			 FALSE,			 0 );    gtk_widget_show ( bouton_supprimer_tiers );    /* mise en place du bouton ajout d'1 tiers */    bouton_ajouter_tiers = gtk_button_new_with_label ( _("Add a third party") );    gtk_button_set_relief ( GTK_BUTTON ( bouton_ajouter_tiers ),			    GTK_RELIEF_NONE );    gtk_signal_connect ( GTK_OBJECT ( bouton_ajouter_tiers ),			 "clicked",			 GTK_SIGNAL_FUNC ( appui_sur_ajout_tiers ),			 NULL );    gtk_box_pack_start ( GTK_BOX ( vbox ),			 bouton_ajouter_tiers,			 FALSE,			 FALSE,			 0 );    gtk_widget_show ( bouton_ajouter_tiers );    /*   création 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_tiers(),			 FALSE,			 FALSE,			 0 );    /* création 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_tiers = gtk_ctree_new_with_titles ( 4,					      0,					      titres );    gtk_ctree_set_line_style ( GTK_CTREE ( arbre_tiers ),			       GTK_CTREE_LINES_DOTTED );    gtk_ctree_set_expander_style ( GTK_CTREE ( arbre_tiers ),				   GTK_CTREE_EXPANDER_CIRCULAR );    gtk_clist_column_titles_passive ( GTK_CLIST ( arbre_tiers ));    gtk_clist_set_column_justification ( GTK_CLIST ( arbre_tiers ),					 0,					 GTK_JUSTIFY_LEFT);    gtk_clist_set_column_justification ( GTK_CLIST ( arbre_tiers ),					 1,					 GTK_JUSTIFY_CENTER);    gtk_clist_set_column_justification ( GTK_CLIST ( arbre_tiers ),					 2,					 GTK_JUSTIFY_CENTER);    gtk_clist_set_column_justification ( GTK_CLIST ( arbre_tiers ),					 3,					 GTK_JUSTIFY_CENTER);    gtk_clist_set_column_justification ( GTK_CLIST ( arbre_tiers ),					 4,					 GTK_JUSTIFY_CENTER);    gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_tiers ),				      0,				      FALSE );    gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_tiers ),				      1,				      FALSE );    gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_tiers ),				      2,				      FALSE );    gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_tiers ),				      3,				      FALSE );    gtk_clist_set_column_resizeable ( GTK_CLIST ( arbre_tiers ),				      4,				      FALSE );    /* on met la fontion de tri alphabétique en prenant en compte les accents */    gtk_clist_set_compare_func ( GTK_CLIST ( arbre_tiers ),				 (GtkCListCompareFunc) classement_alphabetique_tree );    gtk_signal_connect ( GTK_OBJECT ( arbre_tiers ),			 "tree-select-row",			 GTK_SIGNAL_FUNC ( selection_ligne_tiers ),			 NULL );    gtk_signal_connect ( GTK_OBJECT ( arbre_tiers ),			 "tree-unselect-row",			 GTK_SIGNAL_FUNC ( enleve_selection_ligne_tiers ),			 NULL );    gtk_signal_connect ( GTK_OBJECT ( arbre_tiers ),			 "button-press-event",			 GTK_SIGNAL_FUNC ( verifie_double_click ),			 NULL );    gtk_signal_connect ( GTK_OBJECT ( arbre_tiers ),			 "key-press-event",			 GTK_SIGNAL_FUNC ( keypress_tiers ),			 NULL );    gtk_signal_connect ( GTK_OBJECT ( arbre_tiers ),			 "size-allocate",			 GTK_SIGNAL_FUNC ( changement_taille_liste_tiers ),			 NULL );    gtk_signal_connect ( GTK_OBJECT ( arbre_tiers ),			 "tree-expand",			 GTK_SIGNAL_FUNC ( ouverture_node_tiers ),			 NULL );    gtk_container_add ( GTK_CONTAINER (  scroll_window ),			arbre_tiers );    gtk_widget_show ( arbre_tiers );    /* on met la fontion de tri alphabétique en prenant en compte les accents */    gtk_clist_set_compare_func ( GTK_CLIST ( arbre_tiers ),				 (GtkCListCompareFunc) classement_alphabetique_tree );    /* la 1ère fois qu'on affichera les tiers, il faudra remplir la liste */    modif_tiers = 1;    return ( onglet );}