• Tim Janik's avatar
    applied patch from owen to get rid of accel map notifiers. changed things · 9800f731
    Tim Janik authored
    Tue Nov 20 21:25:08 2001  Tim Janik  <timj@gtk.org>
    
    	* applied patch from owen to get rid of accel map notifiers.
    	changed things to fix reentrancy and API as discussed on gtk-devel.
    
    	* gtk/gtkaccelgroup.[hc]:
    	(gtk_accel_group_finalize): unregister this accel group from all
    	accel map paths.
    	(accel_closure_invalidate): handle invalidation of closures by
    	disconnecting their accelerators.
    	(quick_accel_add): move closure connection and changed notification
    	into this function to reduce code duplication. don't emit change
    	notification on closurers without accelerators.
    	(quick_accel_remove): rewrite, do the exact opposite of quick_accel_add
    	for a GtkAccelGroupEntry.
    	(gtk_accel_group_connect): get rid of the accel_path_quark argument.
    	(gtk_accel_group_connect_by_path): new function to add accelerators
    	with an accel path.
    	(gtk_accel_group_disconnect_closure): new function, disconnect a
    	closure from of an accel group.
    	(gtk_accel_group_disconnect): loop over all closure for a accel_ley,
    	accel_mods pair and remove them.
    	(_gtk_accel_group_reconnect): new function that basically does
    	gtk_accel_group_disconnect_closure() and
    	gtk_accel_group_connect_by_path() once an accel path changed.
    	(gtk_accel_groups_disconnect_closure): remove this, there's
    	gtk_accel_group_disconnect_closure().
    
    	* gtk/gtkaccelmap.[hc]: keep list of accel groups per entry now,
    	nuke notifiers.
    	(_gtk_accel_path_is_valid): make this non-static for
    	gtkwidget.c and gtkaccelgroup.c assertions.
    	(gtk_accel_map_add_notifer): removed this function.
    	(gtk_accel_map_remove_notifer): same.
    	(_gtk_accel_map_add_group):
    	(_gtk_accel_map_remove_group): (un-)register accel groups, with
    	accel paths for correct propagation.
    	(gtk_accel_map_add_entry): return void.
    	(gtk_accel_map_lookup): return gboolean instead of GQuark.
    
    	* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): always
    	set accel_path on widgets.
    
    	* gtk/gtkwidget.[hc]:
    	(accel_path_changed): got rid of this, changes are handled by
    	accel maps internally now.
    	(_gtk_widget_set_accel_path): get things to work without notifiers.
    	(gtk_widget_list_accel_closures): list accel closures of a widget.
    
    	* gtk/gtkwindow.[hc]: rename ::accels_changed, to ::keys_changed.
    9800f731
Name
Last commit
Last update
contrib Loading commit data...
debian Loading commit data...
demos Loading commit data...
docs Loading commit data...
examples Loading commit data...
gdk Loading commit data...
gdk-pixbuf Loading commit data...
gtk Loading commit data...
m4macros Loading commit data...
modules Loading commit data...
po Loading commit data...
tests Loading commit data...
.cvsignore Loading commit data...
AUTHORS Loading commit data...
COPYING Loading commit data...
ChangeLog Loading commit data...
ChangeLog.pre-1-0 Loading commit data...
ChangeLog.pre-1-2 Loading commit data...
ChangeLog.pre-2-0 Loading commit data...
ChangeLog.pre-2-10 Loading commit data...
ChangeLog.pre-2-2 Loading commit data...
ChangeLog.pre-2-4 Loading commit data...
ChangeLog.pre-2-6 Loading commit data...
ChangeLog.pre-2-8 Loading commit data...
HACKING Loading commit data...
INSTALL Loading commit data...
INSTALL.in Loading commit data...
Makefile.am Loading commit data...
NEWS Loading commit data...
NEWS.pre-1-0 Loading commit data...
README Loading commit data...
README.cvs-commits Loading commit data...
README.in Loading commit data...
README.nanox Loading commit data...
README.win32 Loading commit data...
TODO Loading commit data...
TODO.xml Loading commit data...
acconfig.h Loading commit data...
acinclude.m4 Loading commit data...
autogen.sh Loading commit data...
config.guess Loading commit data...
config.h.win32.in Loading commit data...
config.sub Loading commit data...
configure.in Loading commit data...
gdk-2.0-uninstalled.pc.in Loading commit data...
gdk-2.0.pc.in Loading commit data...
gdk-pixbuf-2.0-uninstalled.pc.in Loading commit data...
gdk-pixbuf-2.0.pc.in Loading commit data...
gtk+-2.0-uninstalled.pc.in Loading commit data...
gtk+-2.0.pc.in Loading commit data...
gtk+.spec.in Loading commit data...
gtk-config-2.0.in Loading commit data...
gtk-zip.sh.in Loading commit data...
makecopyright Loading commit data...
sanity_check Loading commit data...