Commit 2a70d81d8689ac0956b1b089041cfe6bdbf1c7b1
1 parent
b8583e1c
Exists in
master
and in
1 other branch
Fixing build in newest gcc.
Showing
12 changed files
with
66 additions
and
52 deletions
Show diff stats
src/dialogs/load.c
@@ -299,10 +299,9 @@ static void icon_press(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconPosition icon_ | @@ -299,10 +299,9 @@ static void icon_press(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconPosition icon_ | ||
299 | 299 | ||
300 | debug("next=%s",remains > 0 ? "YES" : "NO"); | 300 | debug("next=%s",remains > 0 ? "YES" : "NO"); |
301 | 301 | ||
302 | - g_signal_emit( | 302 | + v3270_signal_emit( |
303 | dialog->terminal, | 303 | dialog->terminal, |
304 | - v3270_widget_signal[V3270_SIGNAL_PASTENEXT], | ||
305 | - 0, | 304 | + V3270_SIGNAL_PASTENEXT, |
306 | remains > 0 | 305 | remains > 0 |
307 | ); | 306 | ); |
308 | 307 |
src/dialogs/print/print.c
@@ -93,7 +93,7 @@ | @@ -93,7 +93,7 @@ | ||
93 | 93 | ||
94 | } | 94 | } |
95 | 95 | ||
96 | - g_signal_emit(GTK_WIDGET(operation->widget), v3270_widget_signal[V3270_SIGNAL_PRINT_DONE], 0, prt, (guint) result); | 96 | + v3270_signal_emit(GTK_WIDGET(operation->widget), V3270_SIGNAL_PRINT_DONE, prt, (guint) result); |
97 | } | 97 | } |
98 | 98 | ||
99 | } | 99 | } |
@@ -244,7 +244,7 @@ | @@ -244,7 +244,7 @@ | ||
244 | g_object_ref(G_OBJECT(opr->widget)); | 244 | g_object_ref(G_OBJECT(opr->widget)); |
245 | } | 245 | } |
246 | 246 | ||
247 | - g_signal_emit(GTK_WIDGET(opr->widget), v3270_widget_signal[V3270_SIGNAL_PRINT_SETUP], 0, operation); | 247 | + v3270_signal_emit(GTK_WIDGET(opr->widget), V3270_SIGNAL_PRINT_SETUP, operation); |
248 | 248 | ||
249 | } | 249 | } |
250 | 250 |
src/dialogs/settings/dialog.c
@@ -176,7 +176,7 @@ void v3270_settings_dialog_apply(GtkWidget *dialog) | @@ -176,7 +176,7 @@ void v3270_settings_dialog_apply(GtkWidget *dialog) | ||
176 | 176 | ||
177 | // Don't delay save settings signal! | 177 | // Don't delay save settings signal! |
178 | GTK_V3270(terminal)->freeze = 0; | 178 | GTK_V3270(terminal)->freeze = 0; |
179 | - g_signal_emit(terminal,v3270_widget_signal[V3270_SIGNAL_SAVE_SETTINGS], 0, FALSE); | 179 | + v3270_signal_emit(terminal,V3270_SIGNAL_SAVE_SETTINGS, FALSE); |
180 | 180 | ||
181 | gdk_window_set_cursor( | 181 | gdk_window_set_cursor( |
182 | window, | 182 | window, |
src/include/internals.h
@@ -75,7 +75,7 @@ | @@ -75,7 +75,7 @@ | ||
75 | //--[ Globals ]-------------------------------------------------------------------------------------- | 75 | //--[ Globals ]-------------------------------------------------------------------------------------- |
76 | 76 | ||
77 | /// @brief V3270 Signal list | 77 | /// @brief V3270 Signal list |
78 | - enum | 78 | + enum V3270_SIGNAL |
79 | { | 79 | { |
80 | V3270_SIGNAL_TOGGLE_CHANGED, | 80 | V3270_SIGNAL_TOGGLE_CHANGED, |
81 | V3270_SIGNAL_MESSAGE_CHANGED, | 81 | V3270_SIGNAL_MESSAGE_CHANGED, |
@@ -119,8 +119,6 @@ | @@ -119,8 +119,6 @@ | ||
119 | V3270_SIGNAL_LAST | 119 | V3270_SIGNAL_LAST |
120 | }; | 120 | }; |
121 | 121 | ||
122 | - G_GNUC_INTERNAL guint v3270_widget_signal[V3270_SIGNAL_LAST]; | ||
123 | - | ||
124 | /*--[ Constants ]------------------------------------------------------------------------------------*/ | 122 | /*--[ Constants ]------------------------------------------------------------------------------------*/ |
125 | 123 | ||
126 | G_GNUC_INTERNAL const gchar * v3270_get_default_colors(); | 124 | G_GNUC_INTERNAL const gchar * v3270_get_default_colors(); |
@@ -135,6 +133,8 @@ | @@ -135,6 +133,8 @@ | ||
135 | G_GNUC_INTERNAL GtkWidget * v3270_dialog_create_grid(GtkAlign align); | 133 | G_GNUC_INTERNAL GtkWidget * v3270_dialog_create_grid(GtkAlign align); |
136 | G_GNUC_INTERNAL GtkWidget * v3270_dialog_create_frame(GtkWidget * child, const gchar *title); | 134 | G_GNUC_INTERNAL GtkWidget * v3270_dialog_create_frame(GtkWidget * child, const gchar *title); |
137 | 135 | ||
136 | + G_GNUC_INTERNAL void v3270_signal_emit(gpointer instance, enum V3270_SIGNAL signal_id, ...); | ||
137 | + | ||
138 | G_GNUC_INTERNAL void v3270_dialog_close(GtkDialog *dialog, gpointer user_data); | 138 | G_GNUC_INTERNAL void v3270_dialog_close(GtkDialog *dialog, gpointer user_data); |
139 | 139 | ||
140 | /// @brief Emit the "save-settings" signal. | 140 | /// @brief Emit the "save-settings" signal. |
src/selection/selection.c
@@ -73,7 +73,7 @@ void v3270_emit_copy_state(GtkWidget *widget) | @@ -73,7 +73,7 @@ void v3270_emit_copy_state(GtkWidget *widget) | ||
73 | 73 | ||
74 | debug("%s(%s)",__FUNCTION__,has_copy ? "TRUE" : "FALSE"); | 74 | debug("%s(%s)",__FUNCTION__,has_copy ? "TRUE" : "FALSE"); |
75 | 75 | ||
76 | - g_signal_emit(widget,v3270_widget_signal[V3270_SIGNAL_CLIPBOARD], 0, has_copy); | 76 | + v3270_signal_emit(widget,V3270_SIGNAL_CLIPBOARD, has_copy); |
77 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.has_copy); | 77 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.has_copy); |
78 | 78 | ||
79 | lib3270_set_has_copy(GTK_V3270(widget)->host, has_copy ? 1 : 0); | 79 | lib3270_set_has_copy(GTK_V3270(widget)->host, has_copy ? 1 : 0); |
src/selection/text.c
@@ -178,10 +178,9 @@ LIB3270_EXPORT void v3270_input_text(GtkWidget *widget, const gchar *text, const | @@ -178,10 +178,9 @@ LIB3270_EXPORT void v3270_input_text(GtkWidget *widget, const gchar *text, const | ||
178 | 178 | ||
179 | if(error) | 179 | if(error) |
180 | { | 180 | { |
181 | - g_signal_emit( | 181 | + v3270_signal_emit( |
182 | widget, | 182 | widget, |
183 | - v3270_widget_signal[V3270_SIGNAL_PASTENEXT], | ||
184 | - 0, | 183 | + V3270_SIGNAL_PASTENEXT, |
185 | FALSE | 184 | FALSE |
186 | ); | 185 | ); |
187 | v3270_popup_gerror(widget,error,NULL,"%s",_("Can't paste text")); | 186 | v3270_popup_gerror(widget,error,NULL,"%s",_("Can't paste text")); |
@@ -195,10 +194,9 @@ LIB3270_EXPORT void v3270_input_text(GtkWidget *widget, const gchar *text, const | @@ -195,10 +194,9 @@ LIB3270_EXPORT void v3270_input_text(GtkWidget *widget, const gchar *text, const | ||
195 | (unsigned char *) buffer | 194 | (unsigned char *) buffer |
196 | ) ? TRUE : FALSE; | 195 | ) ? TRUE : FALSE; |
197 | 196 | ||
198 | - g_signal_emit( | 197 | + v3270_signal_emit( |
199 | widget, | 198 | widget, |
200 | - v3270_widget_signal[V3270_SIGNAL_PASTENEXT], | ||
201 | - 0, | 199 | + V3270_SIGNAL_PASTENEXT, |
202 | remains > 0 | 200 | remains > 0 |
203 | ); | 201 | ); |
204 | 202 |
src/terminal/callbacks.c
@@ -67,10 +67,9 @@ static gboolean bg_update_message(H3270 *session) | @@ -67,10 +67,9 @@ static gboolean bg_update_message(H3270 *session) | ||
67 | { | 67 | { |
68 | v3270 *terminal = (v3270 *) lib3270_get_user_data(session); | 68 | v3270 *terminal = (v3270 *) lib3270_get_user_data(session); |
69 | 69 | ||
70 | - g_signal_emit( | 70 | + v3270_signal_emit( |
71 | terminal, | 71 | terminal, |
72 | - v3270_widget_signal[V3270_SIGNAL_MESSAGE_CHANGED], | ||
73 | - 0, | 72 | + V3270_SIGNAL_MESSAGE_CHANGED, |
74 | (gint) lib3270_get_program_message(session) | 73 | (gint) lib3270_get_program_message(session) |
75 | ); | 74 | ); |
76 | 75 | ||
@@ -93,7 +92,7 @@ static gboolean v3270_update_url(v3270 *terminal) | @@ -93,7 +92,7 @@ static gboolean v3270_update_url(v3270 *terminal) | ||
93 | GtkWidget * widget = GTK_WIDGET(terminal); | 92 | GtkWidget * widget = GTK_WIDGET(terminal); |
94 | debug("url=%s",v3270_get_url(widget)); | 93 | debug("url=%s",v3270_get_url(widget)); |
95 | v3270_notify_setting(widget,V3270_SETTING_URL); | 94 | v3270_notify_setting(widget,V3270_SETTING_URL); |
96 | - g_signal_emit(widget, v3270_widget_signal[V3270_SIGNAL_SESSION_CHANGED], 0); | 95 | + v3270_signal_emit(widget, V3270_SIGNAL_SESSION_CHANGED); |
97 | return FALSE; | 96 | return FALSE; |
98 | } | 97 | } |
99 | 98 | ||
@@ -151,12 +150,12 @@ static void update_connect(H3270 *session, unsigned char connected) | @@ -151,12 +150,12 @@ static void update_connect(H3270 *session, unsigned char connected) | ||
151 | if(connected) | 150 | if(connected) |
152 | { | 151 | { |
153 | widget->cursor.show |= 2; | 152 | widget->cursor.show |= 2; |
154 | - g_signal_emit(GTK_WIDGET(widget), v3270_widget_signal[V3270_SIGNAL_CONNECTED], 0, lib3270_get_url(session)); | 153 | + v3270_signal_emit(GTK_WIDGET(widget), V3270_SIGNAL_CONNECTED, lib3270_get_url(session)); |
155 | } | 154 | } |
156 | else | 155 | else |
157 | { | 156 | { |
158 | widget->cursor.show &= ~2; | 157 | widget->cursor.show &= ~2; |
159 | - g_signal_emit(GTK_WIDGET(widget), v3270_widget_signal[V3270_SIGNAL_DISCONNECTED], 0); | 158 | + v3270_signal_emit(GTK_WIDGET(widget), V3270_SIGNAL_DISCONNECTED); |
160 | } | 159 | } |
161 | 160 | ||
162 | debug("%s(%p)",__FUNCTION__,GTK_V3270_GET_CLASS(widget)->properties.online); | 161 | debug("%s(%p)",__FUNCTION__,GTK_V3270_GET_CLASS(widget)->properties.online); |
@@ -184,7 +183,7 @@ static void update_model(H3270 *session, const char *name, int model, G_GNUC_UNU | @@ -184,7 +183,7 @@ static void update_model(H3270 *session, const char *name, int model, G_GNUC_UNU | ||
184 | debug("%s: terminal=%p pspec=%p",__FUNCTION__,widget,GTK_V3270_GET_CLASS(widget)->properties.settings[V3270_SETTING_MODEL_NUMBER]); | 183 | debug("%s: terminal=%p pspec=%p",__FUNCTION__,widget,GTK_V3270_GET_CLASS(widget)->properties.settings[V3270_SETTING_MODEL_NUMBER]); |
185 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.settings[V3270_SETTING_MODEL_NUMBER]); | 184 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.settings[V3270_SETTING_MODEL_NUMBER]); |
186 | 185 | ||
187 | - g_signal_emit(widget,v3270_widget_signal[V3270_SIGNAL_MODEL_CHANGED], 0, (guint) model, name); | 186 | + v3270_signal_emit(widget,V3270_SIGNAL_MODEL_CHANGED, (guint) model, name); |
188 | } | 187 | } |
189 | 188 | ||
190 | static void changed(H3270 *session, int offset, int len) | 189 | static void changed(H3270 *session, int offset, int len) |
@@ -231,7 +230,7 @@ static void changed(H3270 *session, int offset, int len) | @@ -231,7 +230,7 @@ static void changed(H3270 *session, int offset, int len) | ||
231 | gtk_widget_queue_draw(widget); | 230 | gtk_widget_queue_draw(widget); |
232 | #endif // WIN32 | 231 | #endif // WIN32 |
233 | 232 | ||
234 | - g_signal_emit(GTK_WIDGET(widget),v3270_widget_signal[V3270_SIGNAL_CHANGED], 0, (guint) offset, (guint) len); | 233 | + v3270_signal_emit(GTK_WIDGET(widget),V3270_SIGNAL_CHANGED, (guint) offset, (guint) len); |
235 | } | 234 | } |
236 | 235 | ||
237 | static void set_selection(H3270 *session, unsigned char status) | 236 | static void set_selection(H3270 *session, unsigned char status) |
@@ -241,7 +240,7 @@ static void set_selection(H3270 *session, unsigned char status) | @@ -241,7 +240,7 @@ static void set_selection(H3270 *session, unsigned char status) | ||
241 | debug("%s(%p)",__FUNCTION__,GTK_V3270_GET_CLASS(widget)->properties.selection); | 240 | debug("%s(%p)",__FUNCTION__,GTK_V3270_GET_CLASS(widget)->properties.selection); |
242 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.selection); | 241 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.selection); |
243 | 242 | ||
244 | - g_signal_emit(widget,v3270_widget_signal[V3270_SIGNAL_SELECTING], 0, status ? TRUE : FALSE); | 243 | + v3270_signal_emit(widget,V3270_SIGNAL_SELECTING, status ? TRUE : FALSE); |
245 | 244 | ||
246 | } | 245 | } |
247 | 246 | ||
@@ -258,15 +257,17 @@ static void update_selection(H3270 *session, G_GNUC_UNUSED int start, G_GNUC_UNU | @@ -258,15 +257,17 @@ static void update_selection(H3270 *session, G_GNUC_UNUSED int start, G_GNUC_UNU | ||
258 | 257 | ||
259 | static void message(H3270 *session, LIB3270_NOTIFY id , const char *title, const char *message, const char *text) | 258 | static void message(H3270 *session, LIB3270_NOTIFY id , const char *title, const char *message, const char *text) |
260 | { | 259 | { |
261 | - g_signal_emit( GTK_WIDGET(lib3270_get_user_data(session)), v3270_widget_signal[V3270_SIGNAL_MESSAGE], 0, | ||
262 | - (int) id, | ||
263 | - (gchar *) title, | ||
264 | - (gchar *) message, | ||
265 | - (gchar *) text ); | 260 | + v3270_signal_emit( |
261 | + GTK_WIDGET(lib3270_get_user_data(session)), | ||
262 | + V3270_SIGNAL_MESSAGE, | ||
263 | + (int) id, | ||
264 | + (gchar *) title, | ||
265 | + (gchar *) message, | ||
266 | + (gchar *) text | ||
267 | + ); | ||
266 | 268 | ||
267 | } | 269 | } |
268 | 270 | ||
269 | - | ||
270 | static int print(H3270 *session, LIB3270_CONTENT_OPTION mode) | 271 | static int print(H3270 *session, LIB3270_CONTENT_OPTION mode) |
271 | { | 272 | { |
272 | return v3270_print_dialog(GTK_WIDGET(lib3270_get_user_data(session)), mode, NULL); | 273 | return v3270_print_dialog(GTK_WIDGET(lib3270_get_user_data(session)), mode, NULL); |
src/terminal/keyboard.c
@@ -121,10 +121,9 @@ | @@ -121,10 +121,9 @@ | ||
121 | 121 | ||
122 | // Signal to the application. | 122 | // Signal to the application. |
123 | gboolean handled = FALSE; | 123 | gboolean handled = FALSE; |
124 | - g_signal_emit( | 124 | + v3270_signal_emit( |
125 | GTK_WIDGET(widget), | 125 | GTK_WIDGET(widget), |
126 | - v3270_widget_signal[V3270_SIGNAL_KEYPRESS], | ||
127 | - 0, | 126 | + V3270_SIGNAL_KEYPRESS, |
128 | event->keyval, | 127 | event->keyval, |
129 | event->state & (GDK_SHIFT_MASK|GDK_CONTROL_MASK|GDK_MOD1_MASK), | 128 | event->state & (GDK_SHIFT_MASK|GDK_CONTROL_MASK|GDK_MOD1_MASK), |
130 | &handled | 129 | &handled |
src/terminal/mouse.c
@@ -143,11 +143,13 @@ void v3270_emit_popup(v3270 *widget, int baddr, GdkEventButton *event) { | @@ -143,11 +143,13 @@ void v3270_emit_popup(v3270 *widget, int baddr, GdkEventButton *event) { | ||
143 | 143 | ||
144 | lib3270_get_contents(widget->host,baddr,baddr,&chr,&attr); | 144 | lib3270_get_contents(widget->host,baddr,baddr,&chr,&attr); |
145 | 145 | ||
146 | - g_signal_emit(GTK_WIDGET(widget), v3270_widget_signal[V3270_SIGNAL_POPUP], 0, | ||
147 | - (attr & LIB3270_ATTR_SELECTED) ? TRUE : FALSE, | ||
148 | - lib3270_is_connected(widget->host) ? TRUE : FALSE, | ||
149 | - event, | ||
150 | - &handled); | 146 | + v3270_signal_emit( GTK_WIDGET(widget), |
147 | + V3270_SIGNAL_POPUP, | ||
148 | + (attr & LIB3270_ATTR_SELECTED) ? TRUE : FALSE, | ||
149 | + lib3270_is_connected(widget->host) ? TRUE : FALSE, | ||
150 | + event, | ||
151 | + &handled | ||
152 | + ); | ||
151 | 153 | ||
152 | if(handled) | 154 | if(handled) |
153 | return; | 155 | return; |
@@ -216,11 +218,12 @@ gboolean v3270_button_press_event(GtkWidget *widget, GdkEventButton *event) | @@ -216,11 +218,12 @@ gboolean v3270_button_press_event(GtkWidget *widget, GdkEventButton *event) | ||
216 | { | 218 | { |
217 | gboolean handled = FALSE; | 219 | gboolean handled = FALSE; |
218 | 220 | ||
219 | - g_signal_emit(widget, v3270_widget_signal[V3270_SIGNAL_OIA_POPUP], | ||
220 | - 0, | ||
221 | - (guint) field, | ||
222 | - event, | ||
223 | - &handled); | 221 | + v3270_signal_emit( |
222 | + widget, V3270_SIGNAL_OIA_POPUP, | ||
223 | + (guint) field, | ||
224 | + event, | ||
225 | + &handled | ||
226 | + ); | ||
224 | 227 | ||
225 | if(!handled) | 228 | if(!handled) |
226 | gdk_display_beep(gtk_widget_get_display(widget)); | 229 | gdk_display_beep(gtk_widget_get_display(widget)); |
@@ -255,11 +258,14 @@ gboolean v3270_button_release_event(GtkWidget *widget, GdkEventButton*event) { | @@ -255,11 +258,14 @@ gboolean v3270_button_release_event(GtkWidget *widget, GdkEventButton*event) { | ||
255 | gboolean connected = lib3270_is_connected(terminal->host) ? TRUE : FALSE; | 258 | gboolean connected = lib3270_is_connected(terminal->host) ? TRUE : FALSE; |
256 | V3270_OIA_FIELD field = terminal->oia.selected; | 259 | V3270_OIA_FIELD field = terminal->oia.selected; |
257 | 260 | ||
258 | - g_signal_emit(widget, v3270_widget_signal[V3270_SIGNAL_FIELD], 0, | ||
259 | - connected, | ||
260 | - field, | ||
261 | - event, | ||
262 | - &handled); | 261 | + v3270_signal_emit( |
262 | + widget, | ||
263 | + V3270_SIGNAL_FIELD, | ||
264 | + connected, | ||
265 | + field, | ||
266 | + event, | ||
267 | + &handled | ||
268 | + ); | ||
263 | 269 | ||
264 | debug("Field click was %s", handled ? "Handled" : "Not handled"); | 270 | debug("Field click was %s", handled ? "Handled" : "Not handled"); |
265 | 271 |
src/terminal/properties/set.c
@@ -216,7 +216,7 @@ LIB3270_EXPORT void v3270_set_session_name(GtkWidget *widget, const gchar *name) | @@ -216,7 +216,7 @@ LIB3270_EXPORT void v3270_set_session_name(GtkWidget *widget, const gchar *name) | ||
216 | 216 | ||
217 | g_message("Session name changes to \"%s\"",terminal->session.name); | 217 | g_message("Session name changes to \"%s\"",terminal->session.name); |
218 | 218 | ||
219 | - g_signal_emit(GTK_WIDGET(widget), v3270_widget_signal[V3270_SIGNAL_SESSION_CHANGED], 0); | 219 | + v3270_signal_emit(GTK_WIDGET(widget), V3270_SIGNAL_SESSION_CHANGED); |
220 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.session_name); | 220 | g_object_notify_by_pspec(G_OBJECT(widget), GTK_V3270_GET_CLASS(widget)->properties.session_name); |
221 | 221 | ||
222 | } | 222 | } |
src/terminal/toggles.c
@@ -123,7 +123,7 @@ void v3270_update_toggle(GtkWidget *widget, LIB3270_TOGGLE_ID id, unsigned char | @@ -123,7 +123,7 @@ void v3270_update_toggle(GtkWidget *widget, LIB3270_TOGGLE_ID id, unsigned char | ||
123 | 123 | ||
124 | debug("%s: pspec=%p",__FUNCTION__,klass->properties.toggle[id]); | 124 | debug("%s: pspec=%p",__FUNCTION__,klass->properties.toggle[id]); |
125 | g_object_notify_by_pspec(G_OBJECT(widget), klass->properties.toggle[id]); | 125 | g_object_notify_by_pspec(G_OBJECT(widget), klass->properties.toggle[id]); |
126 | - g_signal_emit(widget, v3270_widget_signal[V3270_SIGNAL_TOGGLE_CHANGED], 0, (guint) id, (gboolean) (value != 0), (gchar *) name); | 126 | + v3270_signal_emit(widget, V3270_SIGNAL_TOGGLE_CHANGED, (guint) id, (gboolean) (value != 0), (gchar *) name); |
127 | 127 | ||
128 | // Can't emit the signal on every toggle change because, sometimes, the saving of the settings file takes time. | 128 | // Can't emit the signal on every toggle change because, sometimes, the saving of the settings file takes time. |
129 | // v3270_emit_save_settings(widget); | 129 | // v3270_emit_save_settings(widget); |
src/terminal/widget.c
@@ -64,7 +64,7 @@ | @@ -64,7 +64,7 @@ | ||
64 | 64 | ||
65 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ | 65 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ |
66 | 66 | ||
67 | - guint v3270_widget_signal[V3270_SIGNAL_LAST] = { 0 }; | 67 | +static guint v3270_widget_signal[V3270_SIGNAL_LAST] = { 0 }; |
68 | 68 | ||
69 | /*--[ Prototipes ]-----------------------------------------------------------------------------------*/ | 69 | /*--[ Prototipes ]-----------------------------------------------------------------------------------*/ |
70 | 70 | ||
@@ -824,3 +824,14 @@ void v3270_emit_save_settings(GtkWidget *widget) | @@ -824,3 +824,14 @@ void v3270_emit_save_settings(GtkWidget *widget) | ||
824 | } | 824 | } |
825 | } | 825 | } |
826 | 826 | ||
827 | +void v3270_signal_emit(gpointer instance, enum V3270_SIGNAL signal_id, ...) | ||
828 | +{ | ||
829 | + va_list var_args; | ||
830 | + | ||
831 | + va_start (var_args, signal_id); | ||
832 | + g_signal_emit_valist(instance, (guint) signal_id, 0, var_args); | ||
833 | + va_end (var_args); | ||
834 | + | ||
835 | +} | ||
836 | + | ||
837 | + |