diff options
| author | Alex Valavanis <valavanisalex@gmail.com> | 2012-04-15 00:17:25 +0000 |
|---|---|---|
| committer | Alex Valavanis <valavanisalex@gmail.com> | 2012-04-15 00:17:25 +0000 |
| commit | 0024197c76bca50d557edc2824646a636d695c4d (patch) | |
| tree | 5806bbba74cc9460371d2175f8a354917004245e | |
| parent | Don't prevent deprecated symbol usage with GTK+ 3 build yet... let's go one s... (diff) | |
| download | inkscape-0024197c76bca50d557edc2824646a636d695c4d.tar.gz inkscape-0024197c76bca50d557edc2824646a636d695c4d.zip | |
Get rid of remaining deprecated GDK Key symbols
(bzr r11250)
| -rw-r--r-- | src/desktop-events.cpp | 80 | ||||
| -rw-r--r-- | src/dialogs/dialog-events.cpp | 107 | ||||
| -rw-r--r-- | src/draw-context.cpp | 78 | ||||
| -rw-r--r-- | src/ege-adjustment-action.cpp | 100 | ||||
| -rw-r--r-- | src/event-context.cpp | 157 | ||||
| -rw-r--r-- | src/flood-context.cpp | 95 | ||||
| -rw-r--r-- | src/inkview.cpp | 143 | ||||
| -rw-r--r-- | src/interface.cpp | 98 | ||||
| -rw-r--r-- | src/interface.h | 4 | ||||
| -rw-r--r-- | src/main.cpp | 13 | ||||
| -rw-r--r-- | src/pencil-context.cpp | 8 | ||||
| -rw-r--r-- | src/shortcuts.cpp | 10 | ||||
| -rw-r--r-- | src/spray-context.cpp | 148 | ||||
| -rw-r--r-- | src/text-context.cpp | 217 | ||||
| -rw-r--r-- | src/ui/dialog/xml-tree.cpp | 9 | ||||
| -rw-r--r-- | src/ui/tool/control-point-selection.cpp | 147 | ||||
| -rw-r--r-- | src/ui/tool/control-point.cpp | 12 | ||||
| -rw-r--r-- | src/ui/tool/multi-path-manipulator.cpp | 179 | ||||
| -rw-r--r-- | src/ui/tool/node-tool.cpp | 18 | ||||
| -rw-r--r-- | src/ui/tool/node.cpp | 17 | ||||
| -rw-r--r-- | src/ui/tool/selector.cpp | 6 | ||||
| -rw-r--r-- | src/ui/widget/spinbutton.cpp | 12 | ||||
| -rw-r--r-- | src/verbs.cpp | 9 | ||||
| -rw-r--r-- | src/widgets/toolbox.cpp | 6 |
24 files changed, 1407 insertions, 266 deletions
diff --git a/src/desktop-events.cpp b/src/desktop-events.cpp index b16cebee2..68b372d99 100644 --- a/src/desktop-events.cpp +++ b/src/desktop-events.cpp @@ -47,6 +47,72 @@ #include "widgets/desktop-widget.h" #include "xml/repr.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + using Inkscape::DocumentUndo; static void snoop_extended(GdkEvent* event, SPDesktop *desktop); @@ -478,9 +544,9 @@ gint sp_dt_guide_event(SPCanvasItem *item, GdkEvent *event, gpointer data) break; case GDK_KEY_PRESS: switch (get_group0_keyval (&event->key)) { - case GDK_Delete: - case GDK_KP_Delete: - case GDK_BackSpace: + case GDK_KEY_Delete: + case GDK_KEY_KP_Delete: + case GDK_KEY_BackSpace: { SPDocument *doc = guide->document; sp_guide_remove(guide); @@ -489,8 +555,8 @@ gint sp_dt_guide_event(SPCanvasItem *item, GdkEvent *event, gpointer data) sp_event_context_discard_delayed_snap_event(desktop->event_context); break; } - case GDK_Shift_L: - case GDK_Shift_R: + case GDK_KEY_Shift_L: + case GDK_KEY_Shift_R: if (drag_type != SP_DRAG_MOVE_ORIGIN) { GdkCursor *guide_cursor; guide_cursor = gdk_cursor_new (GDK_EXCHANGE); @@ -511,8 +577,8 @@ gint sp_dt_guide_event(SPCanvasItem *item, GdkEvent *event, gpointer data) break; case GDK_KEY_RELEASE: switch (get_group0_keyval (&event->key)) { - case GDK_Shift_L: - case GDK_Shift_R: + case GDK_KEY_Shift_L: + case GDK_KEY_Shift_R: GdkCursor *guide_cursor; guide_cursor = gdk_cursor_new (GDK_EXCHANGE); gdk_window_set_cursor(gtk_widget_get_window (GTK_WIDGET(sp_desktop_canvas(desktop))), guide_cursor); diff --git a/src/dialogs/dialog-events.cpp b/src/dialogs/dialog-events.cpp index f8fce8bd7..70899d4d7 100644 --- a/src/dialogs/dialog-events.cpp +++ b/src/dialogs/dialog-events.cpp @@ -27,6 +27,105 @@ #include "dialog-events.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_b 0x062 +#define GDK_KEY_B 0x042 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_i 0x069 +#define GDK_KEY_I 0x049 +#define GDK_KEY_j 0x06a +#define GDK_KEY_J 0x04a +#define GDK_KEY_k 0x06b +#define GDK_KEY_K 0x04b +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_KP_Space 0xff80 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#define GDK_KEY_KP_Add 0xffab +#define GDK_KEY_KP_Subtract 0xffad +#endif + /** * Remove focus from window to whoever it is transient for. @@ -105,13 +204,13 @@ sp_dialog_event_handler (GtkWindow *win, GdkEvent *event, gpointer data) case GDK_KEY_PRESS: switch (get_group0_keyval (&event->key)) { - case GDK_Escape: + case GDK_KEY_Escape: sp_dialog_defocus (win); ret = TRUE; break; - case GDK_F4: - case GDK_w: - case GDK_W: + case GDK_KEY_F4: + case GDK_KEY_w: + case GDK_KEY_W: // close dialog if (MOD__CTRL_ONLY) { diff --git a/src/draw-context.cpp b/src/draw-context.cpp index 36d7eb8de..d8ce2729d 100644 --- a/src/draw-context.cpp +++ b/src/draw-context.cpp @@ -45,6 +45,76 @@ #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + using Inkscape::DocumentUndo; static void sp_draw_context_class_init(SPDrawContextClass *klass); @@ -240,10 +310,10 @@ sp_draw_context_root_handler(SPEventContext *ec, GdkEvent *event) switch (event->type) { case GDK_KEY_PRESS: switch (get_group0_keyval (&event->key)) { - case GDK_Up: - case GDK_Down: - case GDK_KP_Up: - case GDK_KP_Down: + case GDK_KEY_Up: + case GDK_KEY_Down: + case GDK_KEY_KP_Up: + case GDK_KEY_KP_Down: // prevent the zoom field from activation if (!MOD__CTRL_ONLY) { ret = TRUE; diff --git a/src/ege-adjustment-action.cpp b/src/ege-adjustment-action.cpp index 47500c8c4..181d63d8f 100644 --- a/src/ege-adjustment-action.cpp +++ b/src/ege-adjustment-action.cpp @@ -48,6 +48,76 @@ #include "icon-size.h" #include "ege-adjustment-action.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + static void ege_adjustment_action_class_init( EgeAdjustmentActionClass* klass ); static void ege_adjustment_action_init( EgeAdjustmentAction* action ); @@ -1025,7 +1095,7 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) 0, &key, 0, 0, 0 ); switch ( key ) { - case GDK_Escape: + case GDK_KEY_Escape: { action->private_data->transferFocus = TRUE; gtk_spin_button_set_value( GTK_SPIN_BUTTON(widget), action->private_data->lastVal ); @@ -1034,8 +1104,8 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) } break; - case GDK_Return: - case GDK_KP_Enter: + case GDK_KEY_Return: + case GDK_KEY_KP_Enter: { action->private_data->transferFocus = TRUE; ege_adjustment_action_defocus( action ); @@ -1043,22 +1113,22 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) } break; - case GDK_Tab: + case GDK_KEY_Tab: { action->private_data->transferFocus = FALSE; wasConsumed = process_tab( widget, 1 ); } break; - case GDK_ISO_Left_Tab: + case GDK_KEY_ISO_Left_Tab: { action->private_data->transferFocus = FALSE; wasConsumed = process_tab( widget, -1 ); } break; - case GDK_Up: - case GDK_KP_Up: + case GDK_KEY_Up: + case GDK_KEY_KP_Up: { action->private_data->transferFocus = FALSE; gdouble val = gtk_spin_button_get_value( GTK_SPIN_BUTTON(widget) ); @@ -1067,8 +1137,8 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) } break; - case GDK_Down: - case GDK_KP_Down: + case GDK_KEY_Down: + case GDK_KEY_KP_Down: { action->private_data->transferFocus = FALSE; gdouble val = gtk_spin_button_get_value( GTK_SPIN_BUTTON(widget) ); @@ -1077,8 +1147,8 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) } break; - case GDK_Page_Up: - case GDK_KP_Page_Up: + case GDK_KEY_Page_Up: + case GDK_KEY_KP_Page_Up: { action->private_data->transferFocus = FALSE; gdouble val = gtk_spin_button_get_value( GTK_SPIN_BUTTON(widget) ); @@ -1087,8 +1157,8 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) } break; - case GDK_Page_Down: - case GDK_KP_Page_Down: + case GDK_KEY_Page_Down: + case GDK_KEY_KP_Page_Down: { action->private_data->transferFocus = FALSE; gdouble val = gtk_spin_button_get_value( GTK_SPIN_BUTTON(widget) ); @@ -1097,8 +1167,8 @@ gboolean keypress_cb( GtkWidget *widget, GdkEventKey *event, gpointer data ) } break; - case GDK_z: - case GDK_Z: + case GDK_KEY_z: + case GDK_KEY_Z: { action->private_data->transferFocus = FALSE; gtk_spin_button_set_value( GTK_SPIN_BUTTON(widget), action->private_data->lastVal ); diff --git a/src/event-context.cpp b/src/event-context.cpp index 3bf1179c8..db7b29640 100644 --- a/src/event-context.cpp +++ b/src/event-context.cpp @@ -64,6 +64,93 @@ #include "sp-guide.h" #include "color.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + static void sp_event_context_class_init(SPEventContextClass *klass); static void sp_event_context_init(SPEventContext *event_context); static void sp_event_context_dispose(GObject *object); @@ -558,9 +645,9 @@ static gint sp_event_context_private_root_handler( // in the editing window). So we resteal them back and run our regular shortcut // invoker on them. unsigned int shortcut; - case GDK_Tab: - case GDK_ISO_Left_Tab: - case GDK_F1: + case GDK_KEY_Tab: + case GDK_KEY_ISO_Left_Tab: + case GDK_KEY_F1: shortcut = get_group0_keyval(&event->key); if (event->key.state & GDK_SHIFT_MASK) shortcut |= SP_SHORTCUT_SHIFT_MASK; @@ -571,15 +658,15 @@ static gint sp_event_context_private_root_handler( ret = sp_shortcut_invoke(shortcut, desktop); break; - case GDK_D: - case GDK_d: + case GDK_KEY_D: + case GDK_KEY_d: if (!MOD__SHIFT && !MOD__CTRL && !MOD__ALT) { sp_toggle_dropper(desktop); ret = TRUE; } break; - case GDK_Q: - case GDK_q: + case GDK_KEY_Q: + case GDK_KEY_q: if (desktop->quick_zoomed()) { ret = TRUE; } @@ -588,18 +675,18 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_W: - case GDK_w: - case GDK_F4: + case GDK_KEY_W: + case GDK_KEY_w: + case GDK_KEY_F4: /* Close view */ if (MOD__CTRL_ONLY) { sp_ui_close_view(NULL); ret = TRUE; } break; - case GDK_Left: // Ctrl Left - case GDK_KP_Left: - case GDK_KP_4: + case GDK_KEY_Left: // Ctrl Left + case GDK_KEY_KP_Left: + case GDK_KEY_KP_4: if (MOD__CTRL_ONLY) { int i = (int) floor(key_scroll * accelerate_scroll(event, acceleration, sp_desktop_canvas(desktop))); @@ -608,9 +695,9 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_Up: // Ctrl Up - case GDK_KP_Up: - case GDK_KP_8: + case GDK_KEY_Up: // Ctrl Up + case GDK_KEY_KP_Up: + case GDK_KEY_KP_8: if (MOD__CTRL_ONLY) { int i = (int) floor(key_scroll * accelerate_scroll(event, acceleration, sp_desktop_canvas(desktop))); @@ -619,9 +706,9 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_Right: // Ctrl Right - case GDK_KP_Right: - case GDK_KP_6: + case GDK_KEY_Right: // Ctrl Right + case GDK_KEY_KP_Right: + case GDK_KEY_KP_6: if (MOD__CTRL_ONLY) { int i = (int) floor(key_scroll * accelerate_scroll(event, acceleration, sp_desktop_canvas(desktop))); @@ -630,9 +717,9 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_Down: // Ctrl Down - case GDK_KP_Down: - case GDK_KP_2: + case GDK_KEY_Down: // Ctrl Down + case GDK_KEY_KP_Down: + case GDK_KEY_KP_2: if (MOD__CTRL_ONLY) { int i = (int) floor(key_scroll * accelerate_scroll(event, acceleration, sp_desktop_canvas(desktop))); @@ -641,13 +728,13 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_F10: + case GDK_KEY_F10: if (MOD__SHIFT_ONLY) { sp_event_root_menu_popup(desktop, NULL, event); ret = TRUE; } break; - case GDK_space: + case GDK_KEY_space: if (prefs->getBool("/options/spacepans/value")) { event_context->space_panning = true; event_context->_message_context->set(Inkscape::INFORMATION_MESSAGE, @@ -658,8 +745,8 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_z: - case GDK_Z: + case GDK_KEY_z: + case GDK_KEY_Z: if (MOD__ALT_ONLY) { desktop->zoom_grab_focus(); ret = TRUE; @@ -672,7 +759,7 @@ static gint sp_event_context_private_root_handler( break; case GDK_KEY_RELEASE: switch (get_group0_keyval(&event->key)) { - case GDK_space: + case GDK_KEY_space: if (event_context->space_panning) { event_context->space_panning = false; event_context->_message_context->clear(); @@ -685,8 +772,8 @@ static gint sp_event_context_private_root_handler( ret = TRUE; } break; - case GDK_Q: - case GDK_q: + case GDK_KEY_Q: + case GDK_KEY_q: if (desktop->quick_zoomed()) { desktop->zoom_quick(false); ret = TRUE; @@ -1074,12 +1161,12 @@ void sp_event_show_modifier_tip(Inkscape::MessageContext *message_context, gchar const *alt_tip) { guint keyval = get_group0_keyval(&event->key); - bool ctrl = ctrl_tip && (MOD__CTRL || (keyval == GDK_Control_L) || (keyval - == GDK_Control_R)); - bool shift = shift_tip && (MOD__SHIFT || (keyval == GDK_Shift_L) || (keyval - == GDK_Shift_R)); - bool alt = alt_tip && (MOD__ALT || (keyval == GDK_Alt_L) || (keyval - == GDK_Alt_R) || (keyval == GDK_Meta_L) || (keyval == GDK_Meta_R)); + bool ctrl = ctrl_tip && (MOD__CTRL || (keyval == GDK_KEY_Control_L) || (keyval + == GDK_KEY_Control_R)); + bool shift = shift_tip && (MOD__SHIFT || (keyval == GDK_KEY_Shift_L) || (keyval + == GDK_KEY_Shift_R)); + bool alt = alt_tip && (MOD__ALT || (keyval == GDK_KEY_Alt_L) || (keyval + == GDK_KEY_Alt_R) || (keyval == GDK_KEY_Meta_L) || (keyval == GDK_KEY_Meta_R)); gchar *tip = g_strdup_printf("%s%s%s%s%s", (ctrl ? ctrl_tip : ""), (ctrl && (shift || alt) ? "; " : ""), (shift ? shift_tip : ""), ((ctrl diff --git a/src/flood-context.cpp b/src/flood-context.cpp index c9f4a0097..7d798a93e 100644 --- a/src/flood-context.cpp +++ b/src/flood-context.cpp @@ -70,6 +70,93 @@ #include "pixmaps/cursor-paintbucket.xpm" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + using Inkscape::DocumentUndo; using Inkscape::Display::ExtractARGB32; @@ -1239,10 +1326,10 @@ static gint sp_flood_context_root_handler(SPEventContext *event_context, GdkEven break; case GDK_KEY_PRESS: switch (get_group0_keyval (&event->key)) { - case GDK_Up: - case GDK_Down: - case GDK_KP_Up: - case GDK_KP_Down: + case GDK_KEY_Up: + case GDK_KEY_Down: + case GDK_KEY_KP_Up: + case GDK_KEY_KP_Down: // prevent the zoom field from activation if (!MOD__CTRL_ONLY) ret = TRUE; diff --git a/src/inkview.cpp b/src/inkview.cpp index 57963577c..76d12aa46 100644 --- a/src/inkview.cpp +++ b/src/inkview.cpp @@ -70,6 +70,115 @@ Inkscape::Application *inkscape; #define bind_textdomain_codeset(p,c) #endif +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_b 0x062 +#define GDK_KEY_B 0x042 +#define GDK_KEY_c 0x063 +#define GDK_KEY_C 0x043 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_h 0x068 +#define GDK_KEY_H 0x048 +#define GDK_KEY_i 0x069 +#define GDK_KEY_I 0x049 +#define GDK_KEY_j 0x06a +#define GDK_KEY_J 0x04a +#define GDK_KEY_k 0x06b +#define GDK_KEY_K 0x04b +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_v 0x076 +#define GDK_KEY_V 0x056 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_y 0x079 +#define GDK_KEY_Y 0x059 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_KP_Space 0xff80 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_braceleft 0x07b +#define GDK_KEY_braceright 0x07d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#define GDK_KEY_KP_Add 0xffab +#define GDK_KEY_KP_Subtract 0xffad +#endif + extern char *optarg; extern int optind, opterr; @@ -117,15 +226,15 @@ static int sp_svgview_main_key_press (GtkWidget */*widget*/, GdkEventKey *event, struct SPSlideShow *ss) { switch (event->keyval) { - case GDK_Up: - case GDK_Home: + case GDK_KEY_Up: + case GDK_KEY_Home: sp_svgview_goto_first(ss); break; - case GDK_Down: - case GDK_End: + case GDK_KEY_Down: + case GDK_KEY_End: sp_svgview_goto_last(ss); break; - case GDK_F11: + case GDK_KEY_F11: #ifdef HAVE_GTK_WINDOW_FULLSCREEN if (ss->fullscreen) { gtk_window_unfullscreen (GTK_WINDOW(ss->window)); @@ -138,24 +247,24 @@ sp_svgview_main_key_press (GtkWidget */*widget*/, GdkEventKey *event, struct SPS std::cout<<"Your GTK+ does not support fullscreen mode. Upgrade to 2.2."<<std::endl; #endif break; - case GDK_Return: + case GDK_KEY_Return: sp_svgview_control_show (ss); break; - case GDK_KP_Page_Down: - case GDK_Page_Down: - case GDK_Right: - case GDK_space: + case GDK_KEY_KP_Page_Down: + case GDK_KEY_Page_Down: + case GDK_KEY_Right: + case GDK_KEY_space: sp_svgview_show_next (ss); break; - case GDK_KP_Page_Up: - case GDK_Page_Up: - case GDK_Left: - case GDK_BackSpace: + case GDK_KEY_KP_Page_Up: + case GDK_KEY_Page_Up: + case GDK_KEY_Left: + case GDK_KEY_BackSpace: sp_svgview_show_prev (ss); break; - case GDK_Escape: - case GDK_q: - case GDK_Q: + case GDK_KEY_Escape: + case GDK_KEY_q: + case GDK_KEY_Q: gtk_main_quit(); break; default: diff --git a/src/interface.cpp b/src/interface.cpp index 91f16cbf9..762a1692d 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -26,6 +26,8 @@ #include "file.h" #include <glib.h> #include <gtkmm/icontheme.h> +#include <gtkmm/imagemenuitem.h> +#include <gtkmm/separatormenuitem.h> #include "inkscape-private.h" #include "extension/db.h" @@ -81,6 +83,94 @@ #include <gdk/gdkkeysyms.h> #include <gtk/gtk.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + using Inkscape::DocumentUndo; /* Drag and Drop */ @@ -415,7 +505,7 @@ sp_ui_dialog_title_string(Inkscape::Verb *verb, gchar *c) g_free(atitle); shortcut = sp_shortcut_get_primary(verb); - if (shortcut!=GDK_VoidSymbol) { + if (shortcut!=GDK_KEY_VoidSymbol) { gchar* key = sp_shortcut_get_label(shortcut); s = g_stpcpy(s, " ("); s = g_stpcpy(s, key); @@ -446,7 +536,7 @@ static GtkWidget *sp_ui_menu_append_item_from_verb(GtkMenu *menu, Inkscape::Verb if (!action) return NULL; shortcut = sp_shortcut_get_primary(verb); - if (shortcut!=GDK_VoidSymbol) { + if (shortcut!=GDK_KEY_VoidSymbol) { gchar* c = sp_shortcut_get_label(shortcut); #if GTK_CHECK_VERSION(3,0,0) GtkWidget *const hb = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 16); @@ -634,7 +724,7 @@ sp_ui_menu_append_check_item_from_verb(GtkMenu *menu, Inkscape::UI::View::View * SPAction *action = (verb) ? verb->get_action(view) : 0; GtkWidget *item = gtk_check_menu_item_new(); - if (verb && shortcut!=GDK_VoidSymbol) { + if (verb && shortcut!=GDK_KEY_VoidSymbol) { gchar* c = sp_shortcut_get_label(shortcut); #if GTK_CHECK_VERSION(3,0,0) @@ -1601,7 +1691,7 @@ void ContextMenu::AppendItemFromVerb(Inkscape::Verb *verb)//, SPDesktop *view)// Gtk::ImageMenuItem *item = NULL; unsigned int shortcut = sp_shortcut_get_primary(verb); - if (shortcut!=GDK_VoidSymbol) { + if (shortcut!=GDK_KEY_VoidSymbol) { gchar* c = sp_shortcut_get_label(shortcut); Gtk::HBox *const hb = new Gtk::HBox (FALSE, 16); Gtk::Label *const name_lbl = new Gtk::Label(action->name, true); diff --git a/src/interface.h b/src/interface.h index 0751171e2..1ea13f639 100644 --- a/src/interface.h +++ b/src/interface.h @@ -24,6 +24,10 @@ class SPObject; class SPDesktop; class SPViewWidget; +namespace Gtk { +class SeparatorMenuItem; +} + namespace Inkscape { class Verb; diff --git a/src/main.cpp b/src/main.cpp index 4bf327284..7a5d15cb7 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -117,6 +117,11 @@ #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#endif + enum { SP_ARG_NONE, SP_ARG_NOGUI, @@ -889,8 +894,8 @@ snooper(GdkEvent *event, gpointer /*data*/) { break; case GDK_KEY_PRESS: keyval = get_group0_keyval(&event->key); - if (keyval == GDK_Alt_L) altL_pressed = TRUE; - if (keyval == GDK_Alt_R) altR_pressed = TRUE; + if (keyval == GDK_KEY_Alt_L) altL_pressed = TRUE; + if (keyval == GDK_KEY_Alt_R) altR_pressed = TRUE; alt_pressed = alt_pressed || altL_pressed || altR_pressed; alt_pressed = alt_pressed || (event->button.state & GDK_MOD1_MASK); if (alt_pressed) @@ -900,8 +905,8 @@ snooper(GdkEvent *event, gpointer /*data*/) { break; case GDK_KEY_RELEASE: keyval = get_group0_keyval(&event->key); - if (keyval == GDK_Alt_L) altL_pressed = FALSE; - if (keyval == GDK_Alt_R) altR_pressed = FALSE; + if (keyval == GDK_KEY_Alt_L) altL_pressed = FALSE; + if (keyval == GDK_KEY_Alt_R) altR_pressed = FALSE; if (!altL_pressed && !altR_pressed) alt_pressed = FALSE; break; diff --git a/src/pencil-context.cpp b/src/pencil-context.cpp index 03fa507de..6db7c8ae2 100644 --- a/src/pencil-context.cpp +++ b/src/pencil-context.cpp @@ -673,10 +673,10 @@ pencil_handle_key_release(SPPencilContext *const pc, guint const keyval, guint c { gint ret = FALSE; switch (keyval) { - case GDK_Alt_L: - case GDK_Alt_R: - case GDK_Meta_L: - case GDK_Meta_R: + case GDK_KEY_Alt_L: + case GDK_KEY_Alt_R: + case GDK_KEY_Meta_L: + case GDK_KEY_Meta_R: if (pc->state == SP_PENCIL_CONTEXT_SKETCH) { spdc_concat_colors_and_flush(pc, FALSE); pc->sketch_n = 0; diff --git a/src/shortcuts.cpp b/src/shortcuts.cpp index aab55327d..57fc59614 100644 --- a/src/shortcuts.cpp +++ b/src/shortcuts.cpp @@ -39,6 +39,10 @@ #include "xml/node-iterators.h" #include "xml/repr.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#endif + using namespace Inkscape; static void sp_shortcut_set(unsigned int const shortcut, Inkscape::Verb *const verb, bool const is_primary); @@ -127,7 +131,7 @@ static void read_shortcuts_file(char const *filename) { } guint keyval=gdk_keyval_from_name(keyval_name); - if (keyval == GDK_VoidSymbol || keyval == 0) { + if (keyval == GDK_KEY_VoidSymbol || keyval == 0) { g_warning("Unknown keyval %s for %s", keyval_name, verb_name); continue; } @@ -202,7 +206,7 @@ sp_shortcut_get_verb(unsigned int shortcut) unsigned int sp_shortcut_get_primary(Inkscape::Verb *verb) { - unsigned int result = GDK_VoidSymbol; + unsigned int result = GDK_KEY_VoidSymbol; if (!primary_shortcuts) { sp_shortcut_init(); } @@ -225,7 +229,7 @@ gchar *sp_shortcut_get_label(unsigned int shortcut) * gtk_label_set_text_with_mnemonic(lbl, str). */ gchar *result = 0; - if (shortcut != GDK_VoidSymbol) { + if (shortcut != GDK_KEY_VoidSymbol) { result = gtk_accelerator_get_label( shortcut & (~SP_SHORTCUT_MODIFIER_MASK), static_cast<GdkModifierType>( ((shortcut & SP_SHORTCUT_SHIFT_MASK) ? GDK_SHIFT_MASK : 0) | diff --git a/src/spray-context.cpp b/src/spray-context.cpp index 89da66b8f..b10c486c7 100644 --- a/src/spray-context.cpp +++ b/src/spray-context.cpp @@ -72,6 +72,98 @@ #include <gdk/gdkkeysyms.h> #include <glibmm/i18n.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_j 0x06a +#define GDK_KEY_J 0x04a +#define GDK_KEY_k 0x06b +#define GDK_KEY_K 0x04b +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#endif + using Inkscape::DocumentUndo; using namespace std; @@ -796,29 +888,29 @@ gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *even case GDK_KEY_PRESS: switch (get_group0_keyval (&event->key)) { - case GDK_j: - case GDK_J: + case GDK_KEY_j: + case GDK_KEY_J: if (MOD__SHIFT_ONLY) { sp_spray_switch_mode(tc, SPRAY_MODE_COPY, MOD__SHIFT); ret = TRUE; } break; - case GDK_k: - case GDK_K: + case GDK_KEY_k: + case GDK_KEY_K: if (MOD__SHIFT_ONLY) { sp_spray_switch_mode(tc, SPRAY_MODE_CLONE, MOD__SHIFT); ret = TRUE; } break; - case GDK_l: - case GDK_L: + case GDK_KEY_l: + case GDK_KEY_L: if (MOD__SHIFT_ONLY) { sp_spray_switch_mode(tc, SPRAY_MODE_SINGLE_PATH, MOD__SHIFT); ret = TRUE; } break; - case GDK_Up: - case GDK_KP_Up: + case GDK_KEY_Up: + case GDK_KEY_KP_Up: if (!MOD__CTRL_ONLY) { tc->population += 0.01; if (tc->population > 1.0) { @@ -828,8 +920,8 @@ gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *even ret = TRUE; } break; - case GDK_Down: - case GDK_KP_Down: + case GDK_KEY_Down: + case GDK_KEY_KP_Down: if (!MOD__CTRL_ONLY) { tc->population -= 0.01; if (tc->population < 0.0) { @@ -839,8 +931,8 @@ gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *even ret = TRUE; } break; - case GDK_Right: - case GDK_KP_Right: + case GDK_KEY_Right: + case GDK_KEY_KP_Right: if (!MOD__CTRL_ONLY) { tc->width += 0.01; if (tc->width > 1.0) { @@ -852,8 +944,8 @@ gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *even ret = TRUE; } break; - case GDK_Left: - case GDK_KP_Left: + case GDK_KEY_Left: + case GDK_KEY_KP_Left: if (!MOD__CTRL_ONLY) { tc->width -= 0.01; if (tc->width < 0.01) { @@ -864,33 +956,33 @@ gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *even ret = TRUE; } break; - case GDK_Home: - case GDK_KP_Home: + case GDK_KEY_Home: + case GDK_KEY_KP_Home: tc->width = 0.01; desktop->setToolboxAdjustmentValue("altx-spray", tc->width * 100); sp_spray_update_area(tc); ret = TRUE; break; - case GDK_End: - case GDK_KP_End: + case GDK_KEY_End: + case GDK_KEY_KP_End: tc->width = 1.0; desktop->setToolboxAdjustmentValue("altx-spray", tc->width * 100); sp_spray_update_area(tc); ret = TRUE; break; - case GDK_x: - case GDK_X: + case GDK_KEY_x: + case GDK_KEY_X: if (MOD__ALT_ONLY) { desktop->setToolboxFocusTo("altx-spray"); ret = TRUE; } break; - case GDK_Shift_L: - case GDK_Shift_R: + case GDK_KEY_Shift_L: + case GDK_KEY_Shift_R: sp_spray_update_cursor(tc, true); break; - case GDK_Control_L: - case GDK_Control_R: + case GDK_KEY_Control_L: + case GDK_KEY_Control_R: break; default: break; @@ -900,12 +992,12 @@ gint sp_spray_context_root_handler(SPEventContext *event_context, GdkEvent *even case GDK_KEY_RELEASE: { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); switch (get_group0_keyval(&event->key)) { - case GDK_Shift_L: - case GDK_Shift_R: + case GDK_KEY_Shift_L: + case GDK_KEY_Shift_R: sp_spray_update_cursor(tc, false); break; - case GDK_Control_L: - case GDK_Control_R: + case GDK_KEY_Control_L: + case GDK_KEY_Control_R: sp_spray_switch_mode (tc, prefs->getInt("/tools/spray/mode"), MOD__SHIFT); tc->_message_context->clear(); break; diff --git a/src/text-context.cpp b/src/text-context.cpp index 724c40aa8..c2a9b6a24 100644 --- a/src/text-context.cpp +++ b/src/text-context.cpp @@ -54,6 +54,105 @@ #include "xml/repr.h" #include <gtk/gtk.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_b 0x062 +#define GDK_KEY_B 0x042 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_i 0x069 +#define GDK_KEY_I 0x049 +#define GDK_KEY_j 0x06a +#define GDK_KEY_J 0x04a +#define GDK_KEY_k 0x06b +#define GDK_KEY_K 0x04b +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_KP_Space 0xff80 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#define GDK_KEY_KP_Add 0xffab +#define GDK_KEY_KP_Subtract 0xffad +#endif + using Inkscape::DocumentUndo; static void sp_text_context_class_init(SPTextContextClass *klass); @@ -741,8 +840,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd case GDK_KEY_PRESS: { guint const group0_keyval = get_group0_keyval(&event->key); - if (group0_keyval == GDK_KP_Add || - group0_keyval == GDK_KP_Subtract) { + if (group0_keyval == GDK_KEY_KP_Add || + group0_keyval == GDK_KEY_KP_Subtract) { if (!(event->key.state & GDK_MOD2_MASK)) // mod2 is NumLock; if on, type +/- keys break; // otherwise pass on keypad +/- so they can zoom } @@ -765,8 +864,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd keyboard shortcuts), but differs from the ISO 14755 recommendation. */ switch (group0_keyval) { - case GDK_space: - case GDK_KP_Space: { + case GDK_KEY_space: + case GDK_KEY_KP_Space: { if (tc->unipos) { insert_uni_char(tc); } @@ -775,7 +874,7 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } - case GDK_BackSpace: { + case GDK_KEY_BackSpace: { g_return_val_if_fail(tc->unipos < sizeof(tc->uni), TRUE); if (tc->unipos) { tc->uni[--tc->unipos] = '\0'; @@ -784,8 +883,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } - case GDK_Return: - case GDK_KP_Enter: { + case GDK_KEY_Return: + case GDK_KEY_KP_Enter: { if (tc->unipos) { insert_uni_char(tc); } @@ -795,7 +894,7 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } - case GDK_Escape: { + case GDK_KEY_Escape: { // Cancel unimode. tc->unimode = false; gtk_im_context_reset(tc->imc); @@ -803,8 +902,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } - case GDK_Shift_L: - case GDK_Shift_R: + case GDK_KEY_Shift_L: + case GDK_KEY_Shift_R: break; default: { @@ -850,14 +949,14 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd /* Neither unimode nor IM consumed key; process text tool shortcuts */ switch (group0_keyval) { - case GDK_x: - case GDK_X: + case GDK_KEY_x: + case GDK_KEY_X: if (MOD__ALT_ONLY) { desktop->setToolboxFocusTo ("altx-text"); return TRUE; } break; - case GDK_space: + case GDK_KEY_space: if (MOD__CTRL_ONLY) { /* No-break space */ if (!tc->text) { // printable key; create text if none (i.e. if nascent_object) @@ -873,8 +972,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } break; - case GDK_U: - case GDK_u: + case GDK_KEY_U: + case GDK_KEY_u: if (MOD__CTRL_ONLY || (MOD__CTRL && MOD__SHIFT)) { if (tc->unimode) { tc->unimode = false; @@ -890,8 +989,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } break; - case GDK_B: - case GDK_b: + case GDK_KEY_B: + case GDK_KEY_b: if (MOD__CTRL_ONLY && tc->text) { SPStyle const *style = sp_te_style_at_position(tc->text, std::min(tc->text_sel_start, tc->text_sel_end)); SPCSSAttr *css = sp_repr_css_attr_new(); @@ -912,8 +1011,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd return TRUE; } break; - case GDK_I: - case GDK_i: + case GDK_KEY_I: + case GDK_KEY_i: if (MOD__CTRL_ONLY && tc->text) { SPStyle const *style = sp_te_style_at_position(tc->text, std::min(tc->text_sel_start, tc->text_sel_end)); SPCSSAttr *css = sp_repr_css_attr_new(); @@ -931,8 +1030,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } break; - case GDK_A: - case GDK_a: + case GDK_KEY_A: + case GDK_KEY_a: if (MOD__CTRL_ONLY && tc->text) { Inkscape::Text::Layout const *layout = te_get_layout(tc->text); if (layout) { @@ -945,8 +1044,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } break; - case GDK_Return: - case GDK_KP_Enter: + case GDK_KEY_Return: + case GDK_KEY_KP_Enter: { if (!tc->text) { // printable key; create text if none (i.e. if nascent_object) sp_text_context_setup_text(tc); @@ -966,7 +1065,7 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd _("New line")); return TRUE; } - case GDK_BackSpace: + case GDK_KEY_BackSpace: if (tc->text) { // if nascent_object, do nothing, but return TRUE; same for all other delete and move keys bool noSelection = false; @@ -1000,8 +1099,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd _("Backspace")); } return TRUE; - case GDK_Delete: - case GDK_KP_Delete: + case GDK_KEY_Delete: + case GDK_KEY_KP_Delete: if (tc->text) { bool noSelection = false; @@ -1031,9 +1130,9 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd _("Delete")); } return TRUE; - case GDK_Left: - case GDK_KP_Left: - case GDK_KP_4: + case GDK_KEY_Left: + case GDK_KEY_KP_Left: + case GDK_KEY_KP_4: if (tc->text) { if (MOD__ALT) { gint mul = 1 + gobble_key_events( @@ -1056,9 +1155,9 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } return TRUE; - case GDK_Right: - case GDK_KP_Right: - case GDK_KP_6: + case GDK_KEY_Right: + case GDK_KEY_KP_Right: + case GDK_KEY_KP_6: if (tc->text) { if (MOD__ALT) { gint mul = 1 + gobble_key_events( @@ -1081,9 +1180,9 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } return TRUE; - case GDK_Up: - case GDK_KP_Up: - case GDK_KP_8: + case GDK_KEY_Up: + case GDK_KEY_KP_Up: + case GDK_KEY_KP_8: if (tc->text) { if (MOD__ALT) { gint mul = 1 + gobble_key_events( @@ -1106,9 +1205,9 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } return TRUE; - case GDK_Down: - case GDK_KP_Down: - case GDK_KP_2: + case GDK_KEY_Down: + case GDK_KEY_KP_Down: + case GDK_KEY_KP_2: if (tc->text) { if (MOD__ALT) { gint mul = 1 + gobble_key_events( @@ -1131,8 +1230,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } return TRUE; - case GDK_Home: - case GDK_KP_Home: + case GDK_KEY_Home: + case GDK_KEY_KP_Home: if (tc->text) { if (MOD__CTRL) tc->text_sel_end.thisStartOfShape(); @@ -1142,8 +1241,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd break; } return TRUE; - case GDK_End: - case GDK_KP_End: + case GDK_KEY_End: + case GDK_KEY_KP_End: if (tc->text) { if (MOD__CTRL) tc->text_sel_end.nextStartOfShape(); @@ -1153,23 +1252,23 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd break; } return TRUE; - case GDK_Page_Down: - case GDK_KP_Page_Down: + case GDK_KEY_Page_Down: + case GDK_KEY_KP_Page_Down: if (tc->text) { tc->text_sel_end.cursorDown(screenlines); cursor_moved = true; break; } return TRUE; - case GDK_Page_Up: - case GDK_KP_Page_Up: + case GDK_KEY_Page_Up: + case GDK_KEY_KP_Page_Up: if (tc->text) { tc->text_sel_end.cursorUp(screenlines); cursor_moved = true; break; } return TRUE; - case GDK_Escape: + case GDK_KEY_Escape: if (tc->creating) { tc->creating = 0; if (tc->grabbed) { @@ -1182,7 +1281,7 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } tc->nascent_object = FALSE; return TRUE; - case GDK_bracketleft: + case GDK_KEY_bracketleft: if (tc->text) { if (MOD__ALT || MOD__CTRL) { if (MOD__ALT) { @@ -1203,7 +1302,7 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } break; - case GDK_bracketright: + case GDK_KEY_bracketright: if (tc->text) { if (MOD__ALT || MOD__CTRL) { if (MOD__ALT) { @@ -1224,8 +1323,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } break; - case GDK_less: - case GDK_comma: + case GDK_KEY_less: + case GDK_KEY_comma: if (tc->text) { if (MOD__ALT) { if (MOD__CTRL) { @@ -1249,8 +1348,8 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } } break; - case GDK_greater: - case GDK_period: + case GDK_KEY_greater: + case GDK_KEY_period: if (tc->text) { if (MOD__ALT) { if (MOD__CTRL) { @@ -1291,13 +1390,13 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } else return TRUE; // return the "I took care of it" value if it was consumed by the IM } else { // do nothing if there's no object to type in - the key will be sent to parent context, // except up/down that are swallowed to prevent the zoom field from activation - if ((group0_keyval == GDK_Up || - group0_keyval == GDK_Down || - group0_keyval == GDK_KP_Up || - group0_keyval == GDK_KP_Down ) + if ((group0_keyval == GDK_KEY_Up || + group0_keyval == GDK_KEY_Down || + group0_keyval == GDK_KEY_KP_Up || + group0_keyval == GDK_KEY_KP_Down ) && !MOD__CTRL_ONLY) { return TRUE; - } else if (group0_keyval == GDK_Escape) { // cancel rubberband + } else if (group0_keyval == GDK_KEY_Escape) { // cancel rubberband if (tc->creating) { tc->creating = 0; if (tc->grabbed) { @@ -1306,7 +1405,7 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd } Inkscape::Rubberband::get(desktop)->stop(); } - } else if ((group0_keyval == GDK_x || group0_keyval == GDK_X) && MOD__ALT_ONLY) { + } else if ((group0_keyval == GDK_KEY_x || group0_keyval == GDK_KEY_X) && MOD__ALT_ONLY) { desktop->setToolboxFocusTo ("altx-text"); return TRUE; } diff --git a/src/ui/dialog/xml-tree.cpp b/src/ui/dialog/xml-tree.cpp index 20460474b..5c39a2b22 100644 --- a/src/ui/dialog/xml-tree.cpp +++ b/src/ui/dialog/xml-tree.cpp @@ -48,6 +48,11 @@ #include "widgets/sp-xmlview-content.h" #include "widgets/sp-xmlview-tree.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Return 0xff0d +#endif + namespace Inkscape { namespace UI { namespace Dialog { @@ -334,7 +339,7 @@ bool XmlTree::sp_xml_tree_key_press(GdkEventKey *event) /* fixme: if you need to add more xml-tree-specific callbacks, you should probably upgrade * the sp_shortcut mechanism to take into account windows. */ - if (shortcut == (SP_SHORTCUT_CONTROL_MASK | GDK_Return)) { + if (shortcut == (SP_SHORTCUT_CONTROL_MASK | GDK_KEY_Return)) { cmd_set_attr(); return true; } @@ -839,7 +844,7 @@ void XmlTree::on_document_uri_set(gchar const * /*uri*/, SPDocument * /*document gboolean XmlTree::quit_on_esc (GtkWidget *w, GdkEventKey *event, GObject */*tbl*/) { switch (get_group0_keyval (event)) { - case GDK_Escape: // defocus + case GDK_KEY_Escape: // defocus gtk_widget_destroy(w); return TRUE; } diff --git a/src/ui/tool/control-point-selection.cpp b/src/ui/tool/control-point-selection.cpp index a44fde3be..e4899691a 100644 --- a/src/ui/tool/control-point-selection.cpp +++ b/src/ui/tool/control-point-selection.cpp @@ -21,6 +21,109 @@ #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_b 0x062 +#define GDK_KEY_B 0x042 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_h 0x068 +#define GDK_KEY_H 0x048 +#define GDK_KEY_i 0x069 +#define GDK_KEY_I 0x049 +#define GDK_KEY_j 0x06a +#define GDK_KEY_J 0x04a +#define GDK_KEY_k 0x06b +#define GDK_KEY_K 0x04b +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_v 0x076 +#define GDK_KEY_V 0x056 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_KP_Space 0xff80 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#define GDK_KEY_KP_Add 0xffab +#define GDK_KEY_KP_Subtract 0xffad +#endif + namespace Inkscape { namespace UI { @@ -593,43 +696,43 @@ bool ControlPointSelection::event(SPEventContext * /*event_context*/, GdkEvent * switch(shortcut_key(event->key)) { // moves - case GDK_Up: - case GDK_KP_Up: - case GDK_KP_8: + case GDK_KEY_Up: + case GDK_KEY_KP_Up: + case GDK_KEY_KP_8: return _keyboardMove(event->key, Geom::Point(0, 1)); - case GDK_Down: - case GDK_KP_Down: - case GDK_KP_2: + case GDK_KEY_Down: + case GDK_KEY_KP_Down: + case GDK_KEY_KP_2: return _keyboardMove(event->key, Geom::Point(0, -1)); - case GDK_Right: - case GDK_KP_Right: - case GDK_KP_6: + case GDK_KEY_Right: + case GDK_KEY_KP_Right: + case GDK_KEY_KP_6: return _keyboardMove(event->key, Geom::Point(1, 0)); - case GDK_Left: - case GDK_KP_Left: - case GDK_KP_4: + case GDK_KEY_Left: + case GDK_KEY_KP_Left: + case GDK_KEY_KP_4: return _keyboardMove(event->key, Geom::Point(-1, 0)); // rotates - case GDK_bracketleft: + case GDK_KEY_bracketleft: return _keyboardRotate(event->key, 1); - case GDK_bracketright: + case GDK_KEY_bracketright: return _keyboardRotate(event->key, -1); // scaling - case GDK_less: - case GDK_comma: + case GDK_KEY_less: + case GDK_KEY_comma: return _keyboardScale(event->key, -1); - case GDK_greater: - case GDK_period: + case GDK_KEY_greater: + case GDK_KEY_period: return _keyboardScale(event->key, 1); // TODO: skewing // flipping // NOTE: H is horizontal flip, while Shift+H switches transform handle mode! - case GDK_h: - case GDK_H: + case GDK_KEY_h: + case GDK_KEY_H: if (held_shift(event->key)) { toggleTransformHandlesMode(); return true; @@ -637,8 +740,8 @@ bool ControlPointSelection::event(SPEventContext * /*event_context*/, GdkEvent * // any modifiers except shift should cause no action if (held_any_modifiers(event->key)) break; return _keyboardFlip(Geom::X); - case GDK_v: - case GDK_V: + case GDK_KEY_v: + case GDK_KEY_V: if (held_any_modifiers(event->key)) break; return _keyboardFlip(Geom::Y); default: break; diff --git a/src/ui/tool/control-point.cpp b/src/ui/tool/control-point.cpp index a5509655f..15af21777 100644 --- a/src/ui/tool/control-point.cpp +++ b/src/ui/tool/control-point.cpp @@ -27,6 +27,12 @@ #include "ui/tool/event-utils.h" #include "ui/tool/transform-handle-set.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#endif + namespace Inkscape { namespace UI { @@ -440,7 +446,7 @@ bool ControlPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) case GDK_KEY_PRESS: switch (get_group0_keyval(&event->key)) { - case GDK_Escape: { + case GDK_KEY_Escape: { // ignore Escape if this is not a drag if (!_drag_initiated) break; @@ -480,7 +486,7 @@ bool ControlPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) ungrabbed(NULL); // ungrabbed handlers can handle a NULL event snapprefs.setSnapEnabledGlobally(snap_save); } return true; - case GDK_Tab: + case GDK_KEY_Tab: {// Downcast from ControlPoint to TransformHandle, if possible // This is an ugly hack; we should have the transform handle intercept the keystrokes itself TransformHandle *th = dynamic_cast<TransformHandle*>(this); @@ -490,7 +496,7 @@ bool ControlPoint::_eventHandler(SPEventContext *event_context, GdkEvent *event) } break; } - case GDK_ISO_Left_Tab: + case GDK_KEY_ISO_Left_Tab: {// Downcast from ControlPoint to TransformHandle, if possible // This is an ugly hack; we should have the transform handle intercept the keystrokes itself TransformHandle *th = dynamic_cast<TransformHandle*>(this); diff --git a/src/ui/tool/multi-path-manipulator.cpp b/src/ui/tool/multi-path-manipulator.cpp index 597a151c0..2be96afad 100644 --- a/src/ui/tool/multi-path-manipulator.cpp +++ b/src/ui/tool/multi-path-manipulator.cpp @@ -31,6 +31,115 @@ #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#define GDK_KEY_Up 0xff52 +#define GDK_KEY_KP_Up 0xff97 +#define GDK_KEY_Down 0xff54 +#define GDK_KEY_KP_Down 0xff99 +#define GDK_KEY_Left 0xff51 +#define GDK_KEY_KP_Left 0xff96 +#define GDK_KEY_Right 0xff53 +#define GDK_KEY_KP_Right 0xff98 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#define GDK_KEY_Home 0xff50 +#define GDK_KEY_KP_Home 0xff95 +#define GDK_KEY_End 0xff57 +#define GDK_KEY_KP_End 0xff9c +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_b 0x062 +#define GDK_KEY_B 0x042 +#define GDK_KEY_c 0x063 +#define GDK_KEY_C 0x043 +#define GDK_KEY_d 0x064 +#define GDK_KEY_D 0x044 +#define GDK_KEY_g 0x067 +#define GDK_KEY_G 0x047 +#define GDK_KEY_h 0x068 +#define GDK_KEY_H 0x048 +#define GDK_KEY_i 0x069 +#define GDK_KEY_I 0x049 +#define GDK_KEY_j 0x06a +#define GDK_KEY_J 0x04a +#define GDK_KEY_k 0x06b +#define GDK_KEY_K 0x04b +#define GDK_KEY_l 0x06c +#define GDK_KEY_L 0x04c +#define GDK_KEY_q 0x071 +#define GDK_KEY_Q 0x051 +#define GDK_KEY_r 0x072 +#define GDK_KEY_R 0x052 +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_u 0x075 +#define GDK_KEY_U 0x055 +#define GDK_KEY_v 0x076 +#define GDK_KEY_V 0x056 +#define GDK_KEY_w 0x077 +#define GDK_KEY_W 0x057 +#define GDK_KEY_x 0x078 +#define GDK_KEY_X 0x058 +#define GDK_KEY_y 0x079 +#define GDK_KEY_Y 0x059 +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_Control_L 0xffe3 +#define GDK_KEY_Control_R 0xffe4 +#define GDK_KEY_Alt_L 0xffe9 +#define GDK_KEY_Alt_R 0xffea +#define GDK_KEY_Shift_L 0xffe1 +#define GDK_KEY_Shift_R 0xffe2 +#define GDK_KEY_Meta_L 0xffe7 +#define GDK_KEY_Meta_R 0xffe8 +#define GDK_KEY_KP_0 0xffb0 +#define GDK_KEY_KP_1 0xffb1 +#define GDK_KEY_KP_2 0xffb2 +#define GDK_KEY_KP_3 0xffb3 +#define GDK_KEY_KP_4 0xffb4 +#define GDK_KEY_KP_5 0xffb5 +#define GDK_KEY_KP_6 0xffb6 +#define GDK_KEY_KP_7 0xffb7 +#define GDK_KEY_KP_8 0xffb8 +#define GDK_KEY_KP_9 0xffb9 +#define GDK_KEY_F1 0xffbe +#define GDK_KEY_F2 0xffbf +#define GDK_KEY_F3 0xffc0 +#define GDK_KEY_F4 0xffc1 +#define GDK_KEY_F5 0xffc2 +#define GDK_KEY_F6 0xffc3 +#define GDK_KEY_F7 0xffc4 +#define GDK_KEY_F8 0xffc5 +#define GDK_KEY_F9 0xffc6 +#define GDK_KEY_F10 0xffc7 +#define GDK_KEY_F11 0xffc8 +#define GDK_KEY_Insert 0xff63 +#define GDK_KEY_KP_Insert 0xff9e +#define GDK_KEY_Delete 0xffff +#define GDK_KEY_KP_Delete 0xff9f +#define GDK_KEY_BackSpace 0xff08 +#define GDK_KEY_Return 0xff0d +#define GDK_KEY_KP_Enter 0xff8d +#define GDK_KEY_space 0x020 +#define GDK_KEY_KP_Space 0xff80 +#define GDK_KEY_Tab 0xff09 +#define GDK_KEY_ISO_Left_Tab 0xfe20 +#define GDK_KEY_bracketleft 0x05b +#define GDK_KEY_bracketright 0x05d +#define GDK_KEY_braceleft 0x07b +#define GDK_KEY_braceright 0x07d +#define GDK_KEY_less 0x03c +#define GDK_KEY_greater 0x03e +#define GDK_KEY_comma 0x02c +#define GDK_KEY_period 0x02e +#define GDK_KEY_KP_Add 0xffab +#define GDK_KEY_KP_Subtract 0xffad +#endif + #ifdef USE_GNU_HASHES namespace __gnu_cxx { template<> @@ -581,21 +690,21 @@ bool MultiPathManipulator::event(SPEventContext *event_context, GdkEvent *event) switch (key) { // single handle functions // rotation - case GDK_bracketleft: - case GDK_braceleft: + case GDK_KEY_bracketleft: + case GDK_KEY_braceleft: pm.rotateHandle(n, which, 1, one_pixel); break; - case GDK_bracketright: - case GDK_braceright: + case GDK_KEY_bracketright: + case GDK_KEY_braceright: pm.rotateHandle(n, which, -1, one_pixel); break; // adjust length - case GDK_period: - case GDK_greater: + case GDK_KEY_period: + case GDK_KEY_greater: pm.scaleHandle(n, which, 1, one_pixel); break; - case GDK_comma: - case GDK_less: + case GDK_KEY_comma: + case GDK_KEY_less: pm.scaleHandle(n, which, -1, one_pixel); break; default: @@ -611,13 +720,13 @@ bool MultiPathManipulator::event(SPEventContext *event_context, GdkEvent *event) switch (event->type) { case GDK_KEY_PRESS: switch (key) { - case GDK_Insert: - case GDK_KP_Insert: + case GDK_KEY_Insert: + case GDK_KEY_KP_Insert: // Insert - insert nodes in the middle of selected segments insertNodes(); return true; - case GDK_i: - case GDK_I: + case GDK_KEY_i: + case GDK_KEY_I: if (held_only_shift(event->key)) { // Shift+I - insert nodes (alternate keybinding for Mac keyboards // that don't have the Insert key) @@ -625,14 +734,14 @@ bool MultiPathManipulator::event(SPEventContext *event_context, GdkEvent *event) return true; } break; - case GDK_d: - case GDK_D: + case GDK_KEY_d: + case GDK_KEY_D: if (held_only_shift(event->key)) { duplicateNodes(); return true; } - case GDK_j: - case GDK_J: + case GDK_KEY_j: + case GDK_KEY_J: if (held_only_shift(event->key)) { // Shift+J - join nodes joinNodes(); @@ -644,17 +753,17 @@ bool MultiPathManipulator::event(SPEventContext *event_context, GdkEvent *event) return true; } break; - case GDK_b: - case GDK_B: + case GDK_KEY_b: + case GDK_KEY_B: if (held_only_shift(event->key)) { // Shift+B - break nodes breakNodes(); return true; } break; - case GDK_Delete: - case GDK_KP_Delete: - case GDK_BackSpace: + case GDK_KEY_Delete: + case GDK_KEY_KP_Delete: + case GDK_KEY_BackSpace: if (held_shift(event->key)) break; if (held_alt(event->key)) { // Alt+Delete - delete segments @@ -669,55 +778,55 @@ bool MultiPathManipulator::event(SPEventContext *event_context, GdkEvent *event) deleteNodes(del_preserves_shape ^ held_control(event->key)); } return true; - case GDK_c: - case GDK_C: + case GDK_KEY_c: + case GDK_KEY_C: if (held_only_shift(event->key)) { // Shift+C - make nodes cusp setNodeType(NODE_CUSP); return true; } break; - case GDK_s: - case GDK_S: + case GDK_KEY_s: + case GDK_KEY_S: if (held_only_shift(event->key)) { // Shift+S - make nodes smooth setNodeType(NODE_SMOOTH); return true; } break; - case GDK_a: - case GDK_A: + case GDK_KEY_a: + case GDK_KEY_A: if (held_only_shift(event->key)) { // Shift+A - make nodes auto-smooth setNodeType(NODE_AUTO); return true; } break; - case GDK_y: - case GDK_Y: + case GDK_KEY_y: + case GDK_KEY_Y: if (held_only_shift(event->key)) { // Shift+Y - make nodes symmetric setNodeType(NODE_SYMMETRIC); return true; } break; - case GDK_r: - case GDK_R: + case GDK_KEY_r: + case GDK_KEY_R: if (held_only_shift(event->key)) { // Shift+R - reverse subpaths reverseSubpaths(); return true; } break; - case GDK_l: - case GDK_L: + case GDK_KEY_l: + case GDK_KEY_L: if (held_only_shift(event->key)) { // Shift+L - make segments linear setSegmentType(SEGMENT_STRAIGHT); return true; } - case GDK_u: - case GDK_U: + case GDK_KEY_u: + case GDK_KEY_U: if (held_only_shift(event->key)) { // Shift+L - make segments curves setSegmentType(SEGMENT_CUBIC_BEZIER); diff --git a/src/ui/tool/node-tool.cpp b/src/ui/tool/node-tool.cpp index 3c1e7de71..95cf7aebb 100644 --- a/src/ui/tool/node-tool.cpp +++ b/src/ui/tool/node-tool.cpp @@ -43,6 +43,14 @@ #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_a 0x061 +#define GDK_KEY_A 0x041 +#define GDK_KEY_h 0x068 +#define GDK_KEY_H 0x048 +#endif + /** @struct InkNodeTool * * Node tool event context. @@ -503,7 +511,7 @@ gint ink_node_tool_root_handler(SPEventContext *event_context, GdkEvent *event) case GDK_KEY_PRESS: switch (get_group0_keyval(&event->key)) { - case GDK_Escape: // deselect everything + case GDK_KEY_Escape: // deselect everything if (nt->_selected_nodes->empty()) { selection->clear(); } else { @@ -511,8 +519,8 @@ gint ink_node_tool_root_handler(SPEventContext *event_context, GdkEvent *event) } ink_node_tool_update_tip(nt, event); return TRUE; - case GDK_a: - case GDK_A: + case GDK_KEY_a: + case GDK_KEY_A: if (held_control(event->key) && held_alt(event->key)) { nt->_selected_nodes->selectAll(); // Ctrl+A is handled in selection-chemistry.cpp via verb @@ -520,8 +528,8 @@ gint ink_node_tool_root_handler(SPEventContext *event_context, GdkEvent *event) return TRUE; } break; - case GDK_h: - case GDK_H: + case GDK_KEY_h: + case GDK_KEY_H: if (held_only_control(event->key)) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setBool("/tools/nodes/show_handles", !nt->show_handles); diff --git a/src/ui/tool/node.cpp b/src/ui/tool/node.cpp index ff644b4e3..1d3acb4a5 100644 --- a/src/ui/tool/node.cpp +++ b/src/ui/tool/node.cpp @@ -33,6 +33,15 @@ #include "ui/tool/path-manipulator.h" #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_s 0x073 +#define GDK_KEY_S 0x053 +#define GDK_KEY_Page_Up 0xff55 +#define GDK_KEY_KP_Page_Up 0xff9a +#define GDK_KEY_Page_Down 0xff56 +#define GDK_KEY_KP_Page_Down 0xff9b +#endif + namespace Inkscape { namespace UI { @@ -232,8 +241,8 @@ bool Handle::_eventHandler(SPEventContext *event_context, GdkEvent *event) case GDK_KEY_PRESS: switch (shortcut_key(event->key)) { - case GDK_s: - case GDK_S: + case GDK_KEY_s: + case GDK_KEY_S: if (held_only_shift(event->key) && _parent->_type == NODE_CUSP) { // when Shift+S is pressed when hovering over a handle belonging to a cusp node, // hold this handle in place; otherwise process normally @@ -803,10 +812,10 @@ bool Node::_eventHandler(SPEventContext *event_context, GdkEvent *event) case GDK_KEY_PRESS: switch (shortcut_key(event->key)) { - case GDK_Page_Up: + case GDK_KEY_Page_Up: dir = 1; break; - case GDK_Page_Down: + case GDK_KEY_Page_Down: dir = -1; break; default: goto bail_out; diff --git a/src/ui/tool/selector.cpp b/src/ui/tool/selector.cpp index 86ad05515..6820b7635 100644 --- a/src/ui/tool/selector.cpp +++ b/src/ui/tool/selector.cpp @@ -19,6 +19,10 @@ #include <gdk/gdkkeysyms.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Escape 0xff1b +#endif + namespace Inkscape { namespace UI { @@ -49,7 +53,7 @@ public: protected: virtual bool _eventHandler(SPEventContext *event_context, GdkEvent *event) { - if (event->type == GDK_KEY_PRESS && shortcut_key(event->key) == GDK_Escape && + if (event->type == GDK_KEY_PRESS && shortcut_key(event->key) == GDK_KEY_Escape && sp_canvas_item_is_visible(_rubber)) { _cancel = true; diff --git a/src/ui/widget/spinbutton.cpp b/src/ui/widget/spinbutton.cpp index 60b7856f6..8ba8d413d 100644 --- a/src/ui/widget/spinbutton.cpp +++ b/src/ui/widget/spinbutton.cpp @@ -17,6 +17,12 @@ #include "util/expression-evaluator.h" #include "event-context.h" +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_Escape 0xff1b +#define GDK_KEY_z 0x07a +#define GDK_KEY_Z 0x05a +#endif + namespace Inkscape { namespace UI { namespace Widget { @@ -64,12 +70,12 @@ bool SpinButton::on_my_focus_in_event(GdkEventFocus* /*event*/) bool SpinButton::on_my_key_press_event(GdkEventKey* event) { switch (get_group0_keyval (event)) { - case GDK_Escape: + case GDK_KEY_Escape: undo(); return true; // I consumed the event break; - case GDK_z: - case GDK_Z: + case GDK_KEY_z: + case GDK_KEY_Z: if (event->state & GDK_CONTROL_MASK) { undo(); return true; // I consumed the event diff --git a/src/verbs.cpp b/src/verbs.cpp index d4ac35b33..1b57ad4ff 100644 --- a/src/verbs.cpp +++ b/src/verbs.cpp @@ -84,6 +84,11 @@ #include <gtk/gtk.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_KP_Add 0xffab +#define GDK_KEY_KP_Subtract 0xffad +#endif + using Inkscape::DocumentUndo; //#ifdef WITH_INKBOARD @@ -1656,7 +1661,7 @@ void ZoomVerb::perform(SPAction *action, void *data) case SP_VERB_ZOOM_IN: { gint mul = 1 + gobble_key_events( - GDK_KP_Add, 0); // with any mask + GDK_KEY_KP_Add, 0); // with any mask // While drawing with the pen/pencil tool, zoom towards the end of the unfinished path if (tools_isactive(dt, TOOLS_FREEHAND_PENCIL) || tools_isactive(dt, TOOLS_FREEHAND_PEN)) { SPCurve *rc = SP_DRAW_CONTEXT(ec)->red_curve; @@ -1674,7 +1679,7 @@ void ZoomVerb::perform(SPAction *action, void *data) case SP_VERB_ZOOM_OUT: { gint mul = 1 + gobble_key_events( - GDK_KP_Subtract, 0); // with any mask + GDK_KEY_KP_Subtract, 0); // with any mask // While drawing with the pen/pencil tool, zoom away from the end of the unfinished path if (tools_isactive(dt, TOOLS_FREEHAND_PENCIL) || tools_isactive(dt, TOOLS_FREEHAND_PEN)) { SPCurve *rc = SP_DRAW_CONTEXT(ec)->red_curve; diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index aa87fb873..58c7958ba 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -113,6 +113,10 @@ #include "toolbox.h" #include <gtk/gtk.h> +#if !GTK_CHECK_VERSION(2,22,0) +#define GDK_KEY_VoidSymbol 0xffffff +#endif + //#define DEBUG_TEXT using Inkscape::UnitTracker; @@ -860,7 +864,7 @@ GtkWidget * sp_toolbox_button_new_from_verb_with_doubleclick(GtkWidget *t, Inksc unsigned int shortcut = sp_shortcut_get_primary(verb); - if (shortcut != GDK_VoidSymbol) { + if (shortcut != GDK_KEY_VoidSymbol) { gchar *key = sp_shortcut_get_label(shortcut); gchar *tip = g_strdup_printf ("%s (%s)", action->tip, key); if ( t ) { |
