Commit 0a7814ae3f290026776fdf5bd0cb1ca27309ff3f

Authored by Perry Werneck
1 parent eea9f2ab
Exists in master and in 1 other branch develop

Signal tables are now static.

src/dialogs/colorscheme.c
... ... @@ -60,7 +60,7 @@
60 60 LAST_SIGNAL
61 61 };
62 62  
63   - static guint color_signal[LAST_SIGNAL] = { 0 };
  63 + static guint signals[LAST_SIGNAL] = { 0 };
64 64  
65 65 G_DEFINE_TYPE(V3270ColorScheme, V3270ColorScheme, GTK_TYPE_COMBO_BOX);
66 66  
... ... @@ -79,7 +79,7 @@
79 79 clr = g_value_get_pointer(&value);
80 80  
81 81 debug("%s=%p",__FUNCTION__,clr);
82   - g_signal_emit(widget, color_signal[CHANGED], 0, clr);
  82 + g_signal_emit(widget, signals[CHANGED], 0, clr);
83 83  
84 84 g_value_unset(&value);
85 85  
... ... @@ -91,7 +91,7 @@
91 91  
92 92 klass->parent_class.changed = changed;
93 93  
94   - color_signal[CHANGED] =
  94 + signals[CHANGED] =
95 95 g_signal_new(
96 96 I_("update-colors"),
97 97 G_OBJECT_CLASS_TYPE (gobject_class),
... ... @@ -102,7 +102,7 @@
102 102 G_TYPE_NONE, 1, G_TYPE_POINTER, 0
103 103 );
104 104  
105   - debug("changed_signal=%d",(int) color_signal[CHANGED]);
  105 + debug("changed_signal=%d",(int) signals[CHANGED]);
106 106  
107 107 }
108 108  
... ... @@ -268,7 +268,7 @@
268 268 g_message("Unable to load color schemes in \"%s\"",filename);
269 269 #else
270 270 g_warning("Unable to load color schemes in \"%s\"",filename);
271   -#endif
  271 +#endif
272 272 gtk_widget_set_sensitive(widget,FALSE);
273 273 return widget;
274 274 }
... ...
src/filetransfer/activitylist.c
... ... @@ -66,7 +66,7 @@
66 66  
67 67 G_DEFINE_TYPE(V3270FTActivityList, V3270FTActivityList, GTK_TYPE_TREE_VIEW);
68 68  
69   - static guint v3270_activity_list_signals[V3270_ACTIVITY_LIST_LAST_SIGNAL] = { 0 };
  69 + static guint signals[V3270_ACTIVITY_LIST_LAST_SIGNAL] = { 0 };
70 70  
71 71 /*--[ Implement ]------------------------------------------------------------------------------------*/
72 72  
... ... @@ -121,7 +121,7 @@
121 121 if(activity)
122 122 {
123 123 debug("%s: activity is %p",__FUNCTION__,activity);
124   - g_signal_emit(view, v3270_activity_list_signals[V3270_ACTIVITY_LIST_SELECTED_SIGNAL], 0, activity);
  124 + g_signal_emit(view, signals[V3270_ACTIVITY_LIST_SELECTED_SIGNAL], 0, activity);
125 125 }
126 126  
127 127 }
... ... @@ -138,7 +138,7 @@
138 138  
139 139 klass->signal.has_file = V3270FTActivityList_has_file;
140 140  
141   - v3270_activity_list_signals[V3270_ACTIVITY_LIST_HAS_FILE_SIGNAL] =
  141 + signals[V3270_ACTIVITY_LIST_HAS_FILE_SIGNAL] =
142 142 g_signal_new( I_("has-file"),
143 143 G_OBJECT_CLASS_TYPE (gobject_class),
144 144 G_SIGNAL_RUN_FIRST,
... ... @@ -147,7 +147,7 @@
147 147 v3270ft_VOID__VOID_BOOLEAN,
148 148 G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
149 149  
150   - v3270_activity_list_signals[V3270_ACTIVITY_LIST_SELECTED_SIGNAL] =
  150 + signals[V3270_ACTIVITY_LIST_SELECTED_SIGNAL] =
151 151 g_signal_new( I_("changed"),
152 152 G_OBJECT_CLASS_TYPE (gobject_class),
153 153 G_SIGNAL_RUN_FIRST,
... ... @@ -286,7 +286,7 @@
286 286 {
287 287 debug("%s: Selecting inserted activity",__FUNCTION__);
288 288 gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(widget)),&iter);
289   - g_signal_emit(widget, v3270_activity_list_signals[V3270_ACTIVITY_LIST_SELECTED_SIGNAL], 0, activity);
  289 + g_signal_emit(widget, signals[V3270_ACTIVITY_LIST_SELECTED_SIGNAL], 0, activity);
290 290 }
291 291  
292 292 }
... ... @@ -391,7 +391,7 @@
391 391  
392 392 reload(widget);
393 393  
394   - g_signal_emit(widget, v3270_activity_list_signals[V3270_ACTIVITY_LIST_HAS_FILE_SIGNAL], 0, (list->filename == NULL ? FALSE : TRUE));
  394 + g_signal_emit(widget, signals[V3270_ACTIVITY_LIST_HAS_FILE_SIGNAL], 0, (list->filename == NULL ? FALSE : TRUE));
395 395  
396 396  
397 397 }
... ... @@ -460,7 +460,7 @@
460 460 v3270_activity_list_save(widget);
461 461 }
462 462  
463   - g_signal_emit(widget, v3270_activity_list_signals[V3270_ACTIVITY_LIST_HAS_FILE_SIGNAL], 0, (list->filename == NULL ? FALSE : TRUE));
  463 + g_signal_emit(widget, signals[V3270_ACTIVITY_LIST_HAS_FILE_SIGNAL], 0, (list->filename == NULL ? FALSE : TRUE));
464 464  
465 465 }
466 466  
... ...
src/filetransfer/private.h
... ... @@ -198,8 +198,6 @@
198 198  
199 199 };
200 200  
201   - G_GNUC_INTERNAL guint v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_COUNT];
202   -
203 201  
204 202 G_GNUC_INTERNAL void v3270ft_update_actions(v3270ft *dialog);
205 203 G_GNUC_INTERNAL void v3270ft_update_state(struct v3270ft_entry *entry);
... ... @@ -216,6 +214,7 @@
216 214 G_GNUC_INTERNAL struct v3270ft_entry * v3270ft_get_selected(v3270ft *dialog);
217 215 G_GNUC_INTERNAL struct v3270ft_entry * v3270ft_create_entry(void);
218 216  
  217 + G_GNUC_INTERNAL void v3270ftprogress_signal_emit(gpointer instance, enum V3270FTPROGRESS_SIGNAL signal_id, ...);
219 218  
220 219  
221 220 #endif // PRIVATE_H_INCLUDED
... ...
src/filetransfer/settings.c
... ... @@ -95,7 +95,7 @@
95 95 V3270_FT_SETTINGS_LAST_SIGNAL
96 96 };
97 97  
98   - static guint v3270_ft_settings_signals[V3270_FT_SETTINGS_LAST_SIGNAL] = { 0 };
  98 + static guint signals[V3270_FT_SETTINGS_LAST_SIGNAL] = { 0 };
99 99  
100 100 /*--[ Implement ]------------------------------------------------------------------------------------*/
101 101  
... ... @@ -116,7 +116,7 @@ static void V3270FTSettings_has_activity(GtkWidget G_GNUC_UNUSED(*widget), gbool
116 116 klass->signal.validity = V3270FTSettings_validity;
117 117 klass->signal.has_activity = V3270FTSettings_has_activity;
118 118  
119   - v3270_ft_settings_signals[V3270_FT_SETTINGS_VALIDITY_SIGNAL] =
  119 + signals[V3270_FT_SETTINGS_VALIDITY_SIGNAL] =
120 120 g_signal_new( I_("validity"),
121 121 G_OBJECT_CLASS_TYPE (gobject_class),
122 122 G_SIGNAL_RUN_FIRST,
... ... @@ -126,7 +126,7 @@ static void V3270FTSettings_has_activity(GtkWidget G_GNUC_UNUSED(*widget), gbool
126 126 G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
127 127  
128 128  
129   - v3270_ft_settings_signals[V3270_FT_SETTINGS_HAS_ACTIVITY_SIGNAL] =
  129 + signals[V3270_FT_SETTINGS_HAS_ACTIVITY_SIGNAL] =
130 130 g_signal_new( I_("has-activity"),
131 131 G_OBJECT_CLASS_TYPE (gobject_class),
132 132 G_SIGNAL_RUN_FIRST,
... ... @@ -272,7 +272,7 @@ static void open_select_file_dialog(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconP
272 272 widget->transfer.is_valid = is_valid;
273 273  
274 274 debug("Transfer is now \"%s\"", is_valid ? "valid" : "invalid");
275   - g_signal_emit(widget, v3270_ft_settings_signals[V3270_FT_SETTINGS_VALIDITY_SIGNAL], 0, widget->transfer.is_valid);
  275 + g_signal_emit(widget, signals[V3270_FT_SETTINGS_VALIDITY_SIGNAL], 0, widget->transfer.is_valid);
276 276  
277 277 }
278 278  
... ... @@ -607,7 +607,7 @@ static void open_select_file_dialog(GtkEntry *entry, G_GNUC_UNUSED GtkEntryIconP
607 607 {
608 608 GTK_V3270_FT_SETTINGS(widget)->activity = activity;
609 609 v3270_ft_settings_reset(widget);
610   - g_signal_emit(widget, v3270_ft_settings_signals[V3270_FT_SETTINGS_HAS_ACTIVITY_SIGNAL], 0, (activity == NULL ? FALSE : TRUE));
  610 + g_signal_emit(widget, signals[V3270_FT_SETTINGS_HAS_ACTIVITY_SIGNAL], 0, (activity == NULL ? FALSE : TRUE));
611 611 }
612 612  
613 613 LIB3270_EXPORT GObject * v3270_ft_settings_get_activity(GtkWidget *widget)
... ...
src/filetransfer/v3270ftprogress.c
... ... @@ -47,7 +47,7 @@
47 47  
48 48 /*--[ Globals ]--------------------------------------------------------------------------------------*/
49 49  
50   -guint v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_COUNT] = { 0 };
  50 +static guint signals[V3270FTPROGRESS_SIGNAL_COUNT] = { 0 };
51 51  
52 52 // http://www3.rocketsoftware.com/bluezone/help/v42/en/bz/DISPLAY/IND$FILE/IND$FILE_Technical_Reference.htm
53 53  
... ... @@ -316,7 +316,7 @@ static void v3270ftprogress_class_init(v3270ftprogressClass *klass) {
316 316 dialog_class->response = dialog_response;
317 317 dialog_class->close = dialog_close;
318 318  
319   - v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_SUCCESS] =
  319 + signals[V3270FTPROGRESS_SIGNAL_SUCCESS] =
320 320 g_signal_new( I_("success"),
321 321 G_OBJECT_CLASS_TYPE (gobject_class),
322 322 G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION,
... ... @@ -325,7 +325,7 @@ static void v3270ftprogress_class_init(v3270ftprogressClass *klass) {
325 325 v3270ft_VOID__POINTER_POINTER,
326 326 G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER);
327 327  
328   - v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_FAILED] =
  328 + signals[V3270FTPROGRESS_SIGNAL_FAILED] =
329 329 g_signal_new( I_("failed"),
330 330 G_OBJECT_CLASS_TYPE (gobject_class),
331 331 G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION,
... ... @@ -544,7 +544,7 @@ gboolean send_delayed_signal(struct delayed_signal *sig) {
544 544 lib3270_ft_destroy(sig->hSession,NULL);
545 545  
546 546 if(userdata) {
547   - g_signal_emit(GTK_WIDGET(userdata),v3270ftprogress_signal[sig->signal], 0, sig->msg, sig->text);
  547 + v3270ftprogress_signal_emit(GTK_WIDGET(userdata),sig->signal, sig->msg, sig->text);
548 548 }
549 549  
550 550 return FALSE;
... ... @@ -718,7 +718,7 @@ static gboolean do_timer(v3270ftprogress *dialog) {
718 718 lib3270_ft_destroy(dialog->session,NULL);
719 719 }
720 720  
721   - g_signal_emit(GTK_WIDGET(dialog),v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_FAILED], 0, _( "Transfer failed" ), strerror(ETIMEDOUT));
  721 + v3270ftprogress_signal_emit(GTK_WIDGET(dialog),V3270FTPROGRESS_SIGNAL_FAILED, _( "Transfer failed" ), strerror(ETIMEDOUT));
722 722 }
723 723  
724 724 return TRUE;
... ... @@ -753,11 +753,11 @@ void v3270ftprogress_start_transfer(GtkWidget *widget) {
753 753  
754 754 if(message && *message) {
755 755  
756   - g_signal_emit(GTK_WIDGET(widget),v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_FAILED], 0, message, NULL);
  756 + v3270ftprogress_signal_emit(GTK_WIDGET(widget),V3270FTPROGRESS_SIGNAL_FAILED, message, NULL);
757 757  
758 758 } else {
759 759  
760   - g_signal_emit(GTK_WIDGET(widget),v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_FAILED], 0, _( "Can't start file transfer session" ), NULL);
  760 + v3270ftprogress_signal_emit(GTK_WIDGET(widget),V3270FTPROGRESS_SIGNAL_FAILED, _( "Can't start file transfer session" ), NULL);
761 761  
762 762 }
763 763  
... ... @@ -770,7 +770,7 @@ void v3270ftprogress_start_transfer(GtkWidget *widget) {
770 770 if(!cbk) {
771 771  
772 772 lib3270_ft_destroy(dialog->session,NULL);
773   - g_signal_emit(GTK_WIDGET(widget),v3270ftprogress_signal[V3270FTPROGRESS_SIGNAL_FAILED], 0, _( "Can't set callback table" ), NULL);
  773 + v3270ftprogress_signal_emit(GTK_WIDGET(widget),V3270FTPROGRESS_SIGNAL_FAILED, _( "Can't set callback table" ), NULL);
774 774  
775 775 return;
776 776 }
... ... @@ -802,3 +802,13 @@ void v3270ftprogress_start_transfer(GtkWidget *widget) {
802 802 lib3270_ft_start(dialog->session);
803 803  
804 804 }
  805 +
  806 +void v3270ftprogress_signal_emit(gpointer instance, enum V3270FTPROGRESS_SIGNAL signal_id, ...)
  807 +{
  808 + va_list var_args;
  809 +
  810 + va_start (var_args, signal_id);
  811 + g_signal_emit_valist(instance, signals[signal_id], 0, var_args);
  812 + va_end (var_args);
  813 +
  814 +}
... ...
src/filetransfer/worker.c
... ... @@ -76,7 +76,7 @@
76 76  
77 77 G_DEFINE_TYPE(V3270FTWorker, V3270FTWorker, GTK_TYPE_GRID);
78 78  
79   - static guint v3270_worker_signals[V3270_WORKER_LAST_SIGNAL] = { 0 };
  79 + static guint signals[V3270_WORKER_LAST_SIGNAL] = { 0 };
80 80  
81 81 /*--[ Implement ]------------------------------------------------------------------------------------*/
82 82  
... ... @@ -143,7 +143,7 @@
143 143  
144 144 gobject_class->finalize = finalize;
145 145  
146   - v3270_worker_signals[V3270_WORKER_ACTIVITY_SIGNAL] =
  146 + signals[V3270_WORKER_ACTIVITY_SIGNAL] =
147 147 g_signal_new(
148 148 I_("activity"),
149 149 G_OBJECT_CLASS_TYPE (gobject_class),
... ... @@ -154,7 +154,7 @@
154 154 G_TYPE_NONE, 1, G_TYPE_OBJECT
155 155 );
156 156  
157   - v3270_worker_signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL] =
  157 + signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL] =
158 158 g_signal_new(
159 159 I_("failed"),
160 160 G_OBJECT_CLASS_TYPE (gobject_class),
... ... @@ -165,7 +165,7 @@
165 165 G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER
166 166 );
167 167  
168   - v3270_worker_signals[V3270_WORKER_TRANSFER_SUCCESS_SIGNAL] =
  168 + signals[V3270_WORKER_TRANSFER_SUCCESS_SIGNAL] =
169 169 g_signal_new(
170 170 I_("success"),
171 171 G_OBJECT_CLASS_TYPE (gobject_class),
... ... @@ -176,7 +176,7 @@
176 176 G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER
177 177 );
178 178  
179   - v3270_worker_signals[V3270_WORKER_TRANSFER_STATE_SIGNAL] =
  179 + signals[V3270_WORKER_TRANSFER_STATE_SIGNAL] =
180 180 g_signal_new(
181 181 I_("ft-state-changed"),
182 182 G_OBJECT_CLASS_TYPE (gobject_class),
... ... @@ -328,7 +328,7 @@
328 328 gtk_entry_set_text(worker->field[ix],"");
329 329 }
330 330  
331   - g_signal_emit(widget, v3270_worker_signals[V3270_WORKER_ACTIVITY_SIGNAL], 0, worker->activity);
  331 + g_signal_emit(widget, signals[V3270_WORKER_ACTIVITY_SIGNAL], 0, worker->activity);
332 332  
333 333 }
334 334  
... ... @@ -381,7 +381,7 @@
381 381  
382 382 g_signal_emit(
383 383 GTK_WIDGET(cfg->worker),
384   - v3270_worker_signals[cfg->signal],
  384 + signals[cfg->signal],
385 385 0,
386 386 cfg->msg,
387 387 description
... ... @@ -522,7 +522,7 @@
522 522  
523 523 static gboolean bg_emit_state_changed(struct bg_state_changed * cfg)
524 524 {
525   - g_signal_emit(cfg->worker, v3270_worker_signals[V3270_WORKER_TRANSFER_STATE_SIGNAL], 0, (guint) cfg->st, cfg->msg);
  525 + g_signal_emit(cfg->worker, signals[V3270_WORKER_TRANSFER_STATE_SIGNAL], 0, (guint) cfg->st, cfg->msg);
526 526 return FALSE;
527 527 }
528 528  
... ... @@ -563,7 +563,7 @@ static gboolean do_timer(V3270FTWorker *worker) {
563 563  
564 564 g_signal_emit(
565 565 GTK_WIDGET(worker),
566   - v3270_worker_signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL],
  566 + signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL],
567 567 0,
568 568 _( "Transfer failed" ),
569 569 message
... ... @@ -595,7 +595,7 @@ static gboolean do_timer(V3270FTWorker *worker) {
595 595 pulse_stop(worker);
596 596  
597 597 // Emit "transfer failed"
598   - g_signal_emit(GTK_WIDGET(widget),v3270_worker_signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL], 0, message, NULL);
  598 + g_signal_emit(GTK_WIDGET(widget),signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL], 0, message, NULL);
599 599  
600 600 // Emit "no transfer"
601 601 ft_state_changed(worker->hSession, LIB3270_FT_STATE_NONE, _("No transfer in progress"), widget);
... ... @@ -616,7 +616,7 @@ static gboolean do_timer(V3270FTWorker *worker) {
616 616  
617 617 g_signal_emit(
618 618 GTK_WIDGET(widget),
619   - v3270_worker_signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL],
  619 + signals[V3270_WORKER_TRANSFER_FAILED_SIGNAL],
620 620 0,
621 621 message,
622 622 _("The callback table for file transfer was rejected, possible version mismatch on lib3270")
... ...