Re: [evolution-patches] Re: Please review my patch for bug #48145



I would suspect it is less efficient by a long way - but key bindings
done in this way can be altered I believe without having to change the
code.  This is the reason to do it that way rather than a key press
handler.

I think, anyway, from talks with a gtk expert.

On Sat, 2003-09-06 at 03:23, Charles Zhang wrote:
> en, you mean that bending a 'cancel' signal to a key, I think it also
> makes, and more efficent than check all key_press.
> But that's the same, both are simple and reliable enough, 
> and to be coordinate with the common method used in the evolution
> bug-fixing,
> I think catching the 'ESC' key is ok for us.
> 
> 
> Charles Zhang wrote:
> 
> > Thank you for your advice. :)
> > 
> > In fact, in this dialog, a gnome-druid is embedded.
> > These buttions "previous", "next", "help" and "cancel" are also
> > created in thiat gnome_druid.
> > So I think the best way is to handle the key_press_event for "ESC"
> > in the dialog.
> 
> > Not Zed wrote:
> > > I can't remember if the wizard is also a gtkdialog, if it is, then you
> > > should just use a CANCEL button and/or connect to the close signal.
> > > 
> > > On Thu, 2003-09-04 at 09:02, Charles Zhang wrote:
> > >   
> > > > Hello All,
> > > > 
> > > > Could you review my patch for bug #48145?
> > > > I found that the key_press_event for `ESC` was not handled in 
> > > > startup-wizard dialog, so I fixed it.
> > > > 
> > > > Bug Summary: Starup wizard does not close on `ESC`
> > > > Bug URL: http://bugzilla.ximian.com/show_bug.cgi?id=48145
> > > > 
> > > > Best Regards
> > > > Charles Zhang
> > > > 
> > > > ______________________________________________________________________
> > > > Index: shell/ChangeLog
> > > > ===================================================================
> > > > RCS file: /cvs/gnome/evolution/shell/ChangeLog,v
> > > > retrieving revision 1.1286.2.6
> > > > diff -p -u -r1.1286.2.6 ChangeLog
> > > > --- shell/ChangeLog	30 Jul 2003 13:57:14 -0000	1.1286.2.6
> > > > +++ shell/ChangeLog	3 Sep 2003 13:44:17 -0000
> > > > @@ -26,6 +26,12 @@
> > > >  	(prepare_intelligent_page): Display some error log and disable
> > > >  	forward button rather than jump to finish page.  [#46017]
> > > >  
> > > > +2003-09-02  Charles Zhang <charles zhang sun com>
> > > > +
> > > > +	* e-shell-startup-wizard.c (e_shell_startup_wizard_create): connect
> > > > +	"key_press_event" signal to startup_wizard_escape.
> > > > +	(startup_wizard_escape): handle "key_press_event" signal.  [4913305]
> > > > +
> > > >  2003-07-15  Antonio Xu  <antonio xu sun com>
> > > >  
> > > >  	* e-shell-startup-wizard.c (e_shell_startup_wizard_create): connect
> > > > Index: shell/e-shell-startup-wizard.c
> > > > ===================================================================
> > > > RCS file: /cvs/gnome/evolution/shell/e-shell-startup-wizard.c,v
> > > > retrieving revision 1.41.4.2
> > > > diff -p -u -r1.41.4.2 e-shell-startup-wizard.c
> > > > --- shell/e-shell-startup-wizard.c	22 Jul 2003 09:29:30 -0000	1.41.4.2
> > > > +++ shell/e-shell-startup-wizard.c	3 Sep 2003 13:44:21 -0000
> > > > @@ -758,6 +758,18 @@ startup_wizard_delete (GnomeDruid *druid
> > > >  	return FALSE;
> > > >  }
> > > >  
> > > > +static gboolean
> > > > +startup_wizard_escape( GtkWidget   *widget,
> > > > +		       GdkEventKey *keyev,
> > > > +		       SWData 	   *data )
> > > > +{
> > > > +	if (keyev->keyval == gdk_keyval_from_name ("Escape")) {
> > > > +		startup_wizard_cancel (data->druid, data);
> > > > +		return TRUE;
> > > > +	}
> > > > +	return FALSE;
> > > > +}
> > > > +
> > > >  gboolean
> > > >  e_shell_startup_wizard_create (void)
> > > >  {
> > > > @@ -798,6 +810,9 @@ e_shell_startup_wizard_create (void)
> > > >  	g_signal_connect (data->druid, "cancel",
> > > >  			  G_CALLBACK (startup_wizard_cancel), data);
> > > >  
> > > > +	g_signal_connect (data->dialog, "key_press_event",
> > > > +			  G_CALLBACK (startup_wizard_escape), data);
> > > > +
> > > >  	data->start = glade_xml_get_widget (data->wizard, "start-page");
> > > >  	data->finish = glade_xml_get_widget (data->wizard, "done-page");
> > > >  	g_return_val_if_fail (data->start != NULL, FALSE);
> > > >     
> > > _______________________________________________
> > > Evolution-patches mailing list
> > > Evolution-patches lists ximian com
> > > http://lists.ximian.com/mailman/listinfo/evolution-patches
> > >   
> > 
> 




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]