2 * Header file to make compatibility with older GTK versions less
3 * painful, by #defining various things that are pure spelling changes
4 * between GTK1 and GTK2.
7 #if !GTK_CHECK_VERSION(2,0,0)
12 /* Helper macro used in definitions below. Note that although it
13 * *expands* w and flag twice, it does not *evaluate* them twice
14 * because the evaluations are in exclusive branches of ?:. So it's
15 * a side-effect-safe macro. */
16 #define gtk1_widget_set_unset_flag(w, flag, b) \
17 ((b) ? GTK_WIDGET_SET_FLAGS(w, flag) : GTK_WIDGET_UNSET_FLAGS(w, flag))
20 #define GObject GtkObject
21 #define G_CALLBACK(x) GTK_SIGNAL_FUNC(x)
22 #define G_OBJECT(x) GTK_OBJECT(x)
23 #define G_TYPE_CHECK_INSTANCE_TYPE GTK_CHECK_TYPE
24 #define G_TYPE_CHECK_INSTANCE_CAST GTK_CHECK_CAST
25 #define G_TYPE_CHECK_CLASS_TYPE GTK_CHECK_CLASS_TYPE
26 #define G_TYPE_CHECK_CLASS_CAST GTK_CHECK_CLASS_CAST
28 #define g_ascii_isspace(x) (isspace((unsigned char)(x)))
29 #define g_signal_connect gtk_signal_connect
30 #define g_signal_connect_swapped gtk_signal_connect_object
31 #define g_signal_stop_emission_by_name gtk_signal_emit_stop_by_name
32 #define g_signal_emit_by_name gtk_signal_emit_by_name
33 #define g_signal_handler_disconnect gtk_signal_disconnect
34 #define g_object_get_data gtk_object_get_data
35 #define g_object_set_data gtk_object_set_data
36 #define g_object_ref_sink gtk_object_sink
38 #define GDK_GRAB_SUCCESS GrabSuccess
40 #define gtk_widget_set_size_request gtk_widget_set_usize
41 #define gtk_radio_button_get_group gtk_radio_button_group
42 #define gtk_notebook_set_current_page gtk_notebook_set_page
43 #define gtk_color_selection_set_has_opacity_control \
44 gtk_color_selection_set_opacity
46 #define gtk_dialog_get_content_area(dlg) ((dlg)->vbox)
47 #define gtk_dialog_get_action_area(dlg) ((dlg)->action_area)
48 #define gtk_dialog_set_can_default(dlg) ((dlg)->action_area)
49 #define gtk_widget_get_window(w) ((w)->window)
50 #define gtk_widget_get_parent(w) ((w)->parent)
51 #define gtk_widget_set_allocation(w, a) ((w)->allocation = *(a))
52 #define gtk_container_get_border_width(c) ((c)->border_width)
53 #define gtk_bin_get_child(b) ((b)->child)
54 #define gtk_color_selection_dialog_get_color_selection(cs) ((cs)->colorsel)
55 #define gtk_selection_data_get_target(sd) ((sd)->target)
56 #define gtk_selection_data_get_data_type(sd) ((sd)->type)
57 #define gtk_selection_data_get_data(sd) ((sd)->data)
58 #define gtk_selection_data_get_length(sd) ((sd)->length)
59 #define gtk_selection_data_get_format(sd) ((sd)->format)
60 #define gtk_adjustment_set_lower(a, val) ((a)->lower = (val))
61 #define gtk_adjustment_set_upper(a, val) ((a)->upper = (val))
62 #define gtk_adjustment_set_page_size(a, val) ((a)->page_size = (val))
63 #define gtk_adjustment_set_page_increment(a, val) ((a)->page_increment = (val))
64 #define gtk_adjustment_set_step_increment(a, val) ((a)->step_increment = (val))
65 #define gtk_adjustment_get_value(a) ((a)->value)
66 #define gdk_visual_get_depth(v) ((v)->depth)
68 #define gtk_widget_set_has_window(w, b) \
69 gtk1_widget_set_unset_flag(w, GTK_NO_WINDOW, !(b))
70 #define gtk_widget_set_mapped(w, b) \
71 gtk1_widget_set_unset_flag(w, GTK_MAPPED, (b))
72 #define gtk_widget_set_can_default(w, b) \
73 gtk1_widget_set_unset_flag(w, GTK_CAN_DEFAULT, (b))
74 #define gtk_widget_get_visible(w) GTK_WIDGET_VISIBLE(w)
75 #define gtk_widget_get_mapped(w) GTK_WIDGET_MAPPED(w)
76 #define gtk_widget_get_realized(w) GTK_WIDGET_REALIZED(w)
77 #define gtk_widget_get_state(w) GTK_WIDGET_STATE(w)
79 /* This is a bit of a bodge because it relies on us only calling this
80 * macro as GDK_DISPLAY_XDISPLAY(gdk_display_get_default()), so under
81 * GTK1 it makes sense to omit the contained function call and just
82 * return the GDK default display. */
83 #define GDK_DISPLAY_XDISPLAY(x) GDK_DISPLAY()
85 #define GDK_KEY_Alt_L GDK_Alt_L
86 #define GDK_KEY_Alt_R GDK_Alt_R
87 #define GDK_KEY_BackSpace GDK_BackSpace
88 #define GDK_KEY_Begin GDK_Begin
89 #define GDK_KEY_Break GDK_Break
90 #define GDK_KEY_Delete GDK_Delete
91 #define GDK_KEY_Down GDK_Down
92 #define GDK_KEY_End GDK_End
93 #define GDK_KEY_Escape GDK_Escape
94 #define GDK_KEY_F10 GDK_F10
95 #define GDK_KEY_F11 GDK_F11
96 #define GDK_KEY_F12 GDK_F12
97 #define GDK_KEY_F13 GDK_F13
98 #define GDK_KEY_F14 GDK_F14
99 #define GDK_KEY_F15 GDK_F15
100 #define GDK_KEY_F16 GDK_F16
101 #define GDK_KEY_F17 GDK_F17
102 #define GDK_KEY_F18 GDK_F18
103 #define GDK_KEY_F19 GDK_F19
104 #define GDK_KEY_F1 GDK_F1
105 #define GDK_KEY_F20 GDK_F20
106 #define GDK_KEY_F2 GDK_F2
107 #define GDK_KEY_F3 GDK_F3
108 #define GDK_KEY_F4 GDK_F4
109 #define GDK_KEY_F5 GDK_F5
110 #define GDK_KEY_F6 GDK_F6
111 #define GDK_KEY_F7 GDK_F7
112 #define GDK_KEY_F8 GDK_F8
113 #define GDK_KEY_F9 GDK_F9
114 #define GDK_KEY_Home GDK_Home
115 #define GDK_KEY_Insert GDK_Insert
116 #define GDK_KEY_ISO_Left_Tab GDK_ISO_Left_Tab
117 #define GDK_KEY_KP_0 GDK_KP_0
118 #define GDK_KEY_KP_1 GDK_KP_1
119 #define GDK_KEY_KP_2 GDK_KP_2
120 #define GDK_KEY_KP_3 GDK_KP_3
121 #define GDK_KEY_KP_4 GDK_KP_4
122 #define GDK_KEY_KP_5 GDK_KP_5
123 #define GDK_KEY_KP_6 GDK_KP_6
124 #define GDK_KEY_KP_7 GDK_KP_7
125 #define GDK_KEY_KP_8 GDK_KP_8
126 #define GDK_KEY_KP_9 GDK_KP_9
127 #define GDK_KEY_KP_Add GDK_KP_Add
128 #define GDK_KEY_KP_Begin GDK_KP_Begin
129 #define GDK_KEY_KP_Decimal GDK_KP_Decimal
130 #define GDK_KEY_KP_Delete GDK_KP_Delete
131 #define GDK_KEY_KP_Divide GDK_KP_Divide
132 #define GDK_KEY_KP_Down GDK_KP_Down
133 #define GDK_KEY_KP_End GDK_KP_End
134 #define GDK_KEY_KP_Enter GDK_KP_Enter
135 #define GDK_KEY_KP_Home GDK_KP_Home
136 #define GDK_KEY_KP_Insert GDK_KP_Insert
137 #define GDK_KEY_KP_Left GDK_KP_Left
138 #define GDK_KEY_KP_Multiply GDK_KP_Multiply
139 #define GDK_KEY_KP_Page_Down GDK_KP_Page_Down
140 #define GDK_KEY_KP_Page_Up GDK_KP_Page_Up
141 #define GDK_KEY_KP_Right GDK_KP_Right
142 #define GDK_KEY_KP_Subtract GDK_KP_Subtract
143 #define GDK_KEY_KP_Up GDK_KP_Up
144 #define GDK_KEY_Left GDK_Left
145 #define GDK_KEY_Meta_L GDK_Meta_L
146 #define GDK_KEY_Meta_R GDK_Meta_R
147 #define GDK_KEY_Num_Lock GDK_Num_Lock
148 #define GDK_KEY_Page_Down GDK_Page_Down
149 #define GDK_KEY_Page_Up GDK_Page_Up
150 #define GDK_KEY_Return GDK_Return
151 #define GDK_KEY_Right GDK_Right
152 #define GDK_KEY_Tab GDK_Tab
153 #define GDK_KEY_Up GDK_Up