 708e1a9574
			
		
	
	708e1a9574
	
	
	
		
			
			Wed Feb 20 14:26:47 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkkeyhash.[ch]: Implement "fuzzy" key binding lookups; allow matches on key and level but not group. Also, implement ignoring "consumed modifiers correctly." * gtk/gtkaccelgroup.c gtk/gtkbindings.c: Convert to using GtkKeyHash. * gtk/gtkdebug.h gtk/gtkmain.c: Support GTK_DEBUG=keybindings * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fill in the group for key release events as well as key press events. * gdk/gdkkeys.h gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Rename unused_modifiers to consumed_modifiers, make the docs and non-Xkb implementation match the Xkb implementation. * gdk/linux-fb/gdkkeyboard-fb.c gdk/win32/gdkkeys-win32.c: Propagate doc and parameter name changes. * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): XkbTranslateKeyCode doesn't handle LockMask, we need to handle it ourselves. * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Force <Shift>Tab to give GDK_ISO_Left_Tab, since we need consistency to allow dealing with ISO_Left_Tab. * gtk/gtkwindow.c gtk/gtktextview.c gtk/gtkscrolledwindow.c gtk/gtkpaned.c gtk/gtkcombo.c gtk/gtknotebook.c: Remove inappropriate uses of GDK_ISO_Left_Tab. (GDK_ISO_Left_Tab or <Shift>Tab both are equivalent as a binding specifier.) * gtk/gtkbutton.c (gtk_button_class_init): Make ::activate GTK_RUN_ACTION, so you can bind an accelerator to it. * gtk/gtklabel.c (gtk_label_set_uline_text_internal): Call gdk_unicode_to_keyval on the mnemonic character. * tests/testgtk.c: Add a test for the new fuzzy key binding matching.
		
			
				
	
	
		
			70 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* GTK - The GIMP Toolkit
 | |
|  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
 | |
|  *
 | |
|  * This library is free software; you can redistribute it and/or
 | |
|  * modify it under the terms of the GNU Lesser General Public
 | |
|  * License as published by the Free Software Foundation; either
 | |
|  * version 2 of the License, or (at your option) any later version.
 | |
|  *
 | |
|  * This library is distributed in the hope that it will be useful,
 | |
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | |
|  * Lesser General Public License for more details.
 | |
|  *
 | |
|  * You should have received a copy of the GNU Lesser General Public
 | |
|  * License along with this library; if not, write to the
 | |
|  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 | |
|  * Boston, MA 02111-1307, USA.
 | |
|  */
 | |
| 
 | |
| /*
 | |
|  * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
 | |
|  * file for a list of people on the GTK+ Team.  See the ChangeLog
 | |
|  * files for a list of changes.  These files are distributed with
 | |
|  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
 | |
|  */
 | |
| 
 | |
| #ifndef __GTK_DEBUG_H__
 | |
| #define __GTK_DEBUG_H__
 | |
| 
 | |
| #include <glib.h>
 | |
| 
 | |
| G_BEGIN_DECLS
 | |
| 
 | |
| typedef enum {
 | |
|   GTK_DEBUG_MISC        = 1 << 0,
 | |
|   GTK_DEBUG_PLUGSOCKET  = 1 << 1,
 | |
|   GTK_DEBUG_TEXT        = 1 << 2,
 | |
|   GTK_DEBUG_TREE        = 1 << 3,
 | |
|   GTK_DEBUG_UPDATES     = 1 << 4,
 | |
|   GTK_DEBUG_KEYBINDINGS = 1 << 5
 | |
| } GtkDebugFlag;
 | |
| 
 | |
| #ifdef G_ENABLE_DEBUG
 | |
| 
 | |
| #define GTK_NOTE(type,action)                G_STMT_START { \
 | |
|     if (gtk_debug_flags & GTK_DEBUG_##type)                 \
 | |
|        { action; };                          } G_STMT_END
 | |
| 
 | |
| #else /* !G_ENABLE_DEBUG */
 | |
| 
 | |
| #define GTK_NOTE(type, action)
 | |
|       
 | |
| #endif /* G_ENABLE_DEBUG */
 | |
| 
 | |
| #ifdef G_OS_WIN32
 | |
| #  ifdef GTK_COMPILATION
 | |
| #    define GTKVAR __declspec(dllexport)
 | |
| #  else
 | |
| #    define GTKVAR extern __declspec(dllimport)
 | |
| #  endif
 | |
| #else
 | |
| #  define GTKVAR extern
 | |
| #endif
 | |
| 
 | |
| GTKVAR guint gtk_debug_flags;
 | |
| 
 | |
| G_END_DECLS
 | |
| 
 | |
| #endif /* __GTK_DEBUG_H__ */
 |