sync to libegg

This commit is contained in:
Jonathan Blandford 2002-05-21 23:23:47 +00:00
parent 76c9ad8773
commit 26e67dbc73
2 changed files with 24 additions and 20 deletions

View file

@ -88,25 +88,26 @@ egg_cell_renderer_keys_init (EggCellRendererKeys *cell_keys)
} }
/* FIXME setup stuff to generate this */ /* FIXME setup stuff to generate this */
/* VOID:STRING,UINT,FLAGS */ /* VOID:STRING,UINT,FLAGS,UINT */
static void static void
marshal_VOID__STRING_UINT_FLAGS (GClosure *closure, marshal_VOID__STRING_UINT_FLAGS_UINT (GClosure *closure,
GValue *return_value, GValue *return_value,
guint n_param_values, guint n_param_values,
const GValue *param_values, const GValue *param_values,
gpointer invocation_hint, gpointer invocation_hint,
gpointer marshal_data) gpointer marshal_data)
{ {
typedef void (*GMarshalFunc_VOID__STRING_UINT_FLAGS) (gpointer data1, typedef void (*GMarshalFunc_VOID__STRING_UINT_FLAGS_UINT) (gpointer data1,
const char *arg_1, const char *arg_1,
guint arg_2, guint arg_2,
int arg_3, int arg_3,
gpointer data2); guint arg_4,
register GMarshalFunc_VOID__STRING_UINT_FLAGS callback; gpointer data2);
register GMarshalFunc_VOID__STRING_UINT_FLAGS_UINT callback;
register GCClosure *cc = (GCClosure*) closure; register GCClosure *cc = (GCClosure*) closure;
register gpointer data1, data2; register gpointer data1, data2;
g_return_if_fail (n_param_values == 4); g_return_if_fail (n_param_values == 5);
if (G_CCLOSURE_SWAP_DATA (closure)) if (G_CCLOSURE_SWAP_DATA (closure))
{ {
@ -119,12 +120,13 @@ marshal_VOID__STRING_UINT_FLAGS (GClosure *closure,
data2 = closure->data; data2 = closure->data;
} }
callback = (GMarshalFunc_VOID__STRING_UINT_FLAGS) (marshal_data ? marshal_data : cc->callback); callback = (GMarshalFunc_VOID__STRING_UINT_FLAGS_UINT) (marshal_data ? marshal_data : cc->callback);
callback (data1, callback (data1,
g_value_get_string (param_values + 1), g_value_get_string (param_values + 1),
g_value_get_uint (param_values + 2), g_value_get_uint (param_values + 2),
g_value_get_flags (param_values + 3), g_value_get_flags (param_values + 3),
g_value_get_uint (param_values + 4),
data2); data2);
} }
@ -174,11 +176,12 @@ egg_cell_renderer_keys_class_init (EggCellRendererKeysClass *cell_keys_class)
G_SIGNAL_RUN_LAST, G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (EggCellRendererKeysClass, keys_edited), G_STRUCT_OFFSET (EggCellRendererKeysClass, keys_edited),
NULL, NULL, NULL, NULL,
marshal_VOID__STRING_UINT_FLAGS, marshal_VOID__STRING_UINT_FLAGS_UINT,
G_TYPE_NONE, 3, G_TYPE_NONE, 4,
G_TYPE_STRING, G_TYPE_STRING,
G_TYPE_UINT, G_TYPE_UINT,
GDK_TYPE_MODIFIER_TYPE); GDK_TYPE_MODIFIER_TYPE,
G_TYPE_UINT);
} }
@ -375,7 +378,7 @@ grab_key_callback (GtkWidget *widget,
if (edited) if (edited)
g_signal_emit_by_name (G_OBJECT (keys), "keys_edited", path, g_signal_emit_by_name (G_OBJECT (keys), "keys_edited", path,
accel_keyval, accel_mods); accel_keyval, accel_mods, event->hardware_keycode);
g_free (path); g_free (path);

View file

@ -52,7 +52,8 @@ struct _EggCellRendererKeysClass
void (* keys_edited) (EggCellRendererKeys *keys, void (* keys_edited) (EggCellRendererKeys *keys,
guint keyval, guint keyval,
GdkModifierType mask); GdkModifierType mask,
guint hardware_keycode);
}; };
GType egg_cell_renderer_keys_get_type (void); GType egg_cell_renderer_keys_get_type (void);