rem: return TRUE;
add: gtk_widget_grab_focus ( liste_echeances ); return FALSE;
context: gboolean pression_touche_formulaire_echeancier ( GtkWidget *widget,						 GdkEventKey *ev,						 gint no_widget ){ /*   si etat.entree = 1, la touche entre finit l'opration ( fonction par dfaut ) *//*   donc si on appuie sur entre et que etat.entree = 0, c'est comme si on faisait tab */  if ( !etat.entree       &&       ( ev->keyval == 65293	 ||	 ev->keyval == 65421 ))    ev->keyval = 65289;  switch ( ev -> keyval)    {    case GDK_Escape:      echap_formulaire_echeancier();      return FALSE;    case GDK_Tab:      if ( GTK_IS_ENTRY ( widget ))	gtk_entry_select_region ( GTK_ENTRY ( widget ), 0, 0);      else	if ( GTK_IS_COMBOFIX ( widget ))	  gtk_entry_select_region (GTK_ENTRY(GTK_COMBOFIX(widget)->entry), 0, 0);      /* on fait perdre le focus au widget courant pour faire les	 changements automatiques si ncessaire */      gtk_widget_grab_focus ( liste_echeances );      /* on donne le focus au widget suivant */      no_widget = (no_widget + 1 ) % 19;      while ( !(GTK_WIDGET_VISIBLE (widget_formulaire_echeancier[no_widget]) &&		GTK_WIDGET_SENSITIVE (widget_formulaire_echeancier[no_widget]) &&		( GTK_IS_COMBOFIX (widget_formulaire_echeancier[no_widget]) ||		  GTK_IS_ENTRY (widget_formulaire_echeancier[no_widget]) ||		  GTK_IS_BUTTON (widget_formulaire_echeancier[no_widget]) )))	no_widget = (no_widget + 1 ) % 19;      /* si on se retrouve sur la date et que etat.entree = 0, on	 enregistre l'oprations */      if ( !(no_widget || etat.entree ))	{	  fin_edition_echeance ();	  return TRUE;	}      /* si le prochain est le dbit, on vrifie s'il n'y a rien dans	 cette entre et s'il y a quelque chose dans l'entre du	 crdit */      if ( no_widget == 2 )	{	  /* si le dbit est gris et le crdit est noir, on met sur le crdit */	  if ( gtk_widget_get_style ( widget_formulaire_echeancier[no_widget] ) == style_entree_formulaire[1]	       &&	       gtk_widget_get_style ( widget_formulaire_echeancier[no_widget+1] ) == style_entree_formulaire[0] )	    no_widget++;	}      /* si le prochain est le crdit et que le dbit a t rempli, on	 se met sur la devise et on efface le crdit */      if ( no_widget == 3 )	if ( gtk_widget_get_style ( widget_formulaire_echeancier[no_widget-1] ) == style_entree_formulaire[0] )	  {	    no_widget++;	    gtk_widget_set_style (widget_formulaire_echeancier[3],				  style_entree_formulaire[1] );	    gtk_entry_set_text ( GTK_ENTRY (widget_formulaire_echeancier[3]),				 _("Credit") );	  }      /* on slectionne le contenu de la nouvelle entre */      if ( GTK_IS_COMBOFIX ( widget_formulaire_echeancier[no_widget] ) )	{	  gtk_widget_grab_focus ( GTK_COMBOFIX ( widget_formulaire_echeancier[no_widget] ) -> entry );  	  gtk_entry_select_region ( GTK_ENTRY ( GTK_COMBOFIX ( widget_formulaire_echeancier[no_widget] ) -> entry ),				    0, -1 );	}      else	{	  if ( GTK_IS_ENTRY ( widget_formulaire_echeancier[no_widget] ) )	    gtk_entry_select_region ( GTK_ENTRY ( widget_formulaire_echeancier[no_widget] ),				      0, -1 );	  gtk_widget_grab_focus ( widget_formulaire_echeancier[no_widget]  );	}      return TRUE;    case GDK_KP_Enter:    case GDK_Return:      if (! etat.formulaire_echeance_dans_fenetre )	{	  /* on fait perdre le focus au widget courant pour faire les	     changements automatiques si ncessaire */	  gtk_widget_grab_focus ( liste_echeances );	  fin_edition_echeance ();	  return FALSE;	}      else	{	  return TRUE;	}    case GDK_KP_Add:    case GDK_plus:      /* si on est dans une entree de date, on augmente d'un jour la	 date */      if ( !no_widget || no_widget == 16 )	{	  gtk_signal_emit_stop_by_name ( GTK_OBJECT ( widget ),					 "key-press-event");	  increment_decrement_date ( widget_formulaire_echeancier[no_widget], 1 );	  return TRUE;	}      return FALSE;    case GDK_KP_Subtract:    case GDK_minus:      /* si on est dans une entree de date, on diminue d'un jour la	 date */      if ( !no_widget || no_widget == 16 )	{	  gtk_signal_emit_stop_by_name ( GTK_OBJECT ( widget ),					 "key-press-event");	  increment_decrement_date ( widget_formulaire_echeancier[no_widget], -1 );	  return TRUE;	}      return FALSE;    default:      /* Reverting to default handler */      return FALSE;    }  return TRUE;}