Commit 828fe62163e23dea55f8ec57ab779c7fe7e9ec01
1 parent
7632ef36
Exists in
master
and in
1 other branch
Rewriting getter/setters to use lib3270 internal tables.
Showing
5 changed files
with
216 additions
and
38 deletions
Show diff stats
src/testprogram/testprogram.c
@@ -92,12 +92,21 @@ static void activate(GtkApplication* app, gpointer user_data) { | @@ -92,12 +92,21 @@ static void activate(GtkApplication* app, gpointer user_data) { | ||
92 | GtkWidget * window = gtk_application_window_new(app); | 92 | GtkWidget * window = gtk_application_window_new(app); |
93 | GtkWidget * terminal = v3270_new(); | 93 | GtkWidget * terminal = v3270_new(); |
94 | gchar * filename = NULL; | 94 | gchar * filename = NULL; |
95 | + GValue val = G_VALUE_INIT; | ||
95 | 96 | ||
96 | const gchar *url = getenv("LIB3270_DEFAULT_HOST"); | 97 | const gchar *url = getenv("LIB3270_DEFAULT_HOST"); |
97 | if(url) { | 98 | if(url) { |
98 | 99 | ||
100 | + /* | ||
99 | v3270_set_url(terminal,url); | 101 | v3270_set_url(terminal,url); |
100 | v3270_connect(terminal); | 102 | v3270_connect(terminal); |
103 | + */ | ||
104 | + | ||
105 | + g_value_init (&val, G_TYPE_STRING); | ||
106 | + g_value_set_string(&val,url); | ||
107 | + g_object_set_property(G_OBJECT(terminal), "url", &val); | ||
108 | + g_value_unset(&val); | ||
109 | + | ||
101 | gchar * title = g_strdup_printf("%s - %s", v3270_get_session_name(terminal), url); | 110 | gchar * title = g_strdup_printf("%s - %s", v3270_get_session_name(terminal), url); |
102 | gtk_window_set_title(GTK_WINDOW(window), title); | 111 | gtk_window_set_title(GTK_WINDOW(window), title); |
103 | g_free(title); | 112 | g_free(title); |
@@ -106,6 +115,11 @@ static void activate(GtkApplication* app, gpointer user_data) { | @@ -106,6 +115,11 @@ static void activate(GtkApplication* app, gpointer user_data) { | ||
106 | gtk_window_set_title(GTK_WINDOW(window), v3270_get_session_name(terminal)); | 115 | gtk_window_set_title(GTK_WINDOW(window), v3270_get_session_name(terminal)); |
107 | } | 116 | } |
108 | 117 | ||
118 | + g_value_init(&val, G_TYPE_STRING); | ||
119 | + g_object_get_property(G_OBJECT(terminal),"url",&val); | ||
120 | + g_message("URL=%s",g_value_get_string(&val)); | ||
121 | + g_value_unset(&val); | ||
122 | + | ||
109 | g_signal_connect(terminal,"popup",G_CALLBACK(popup_menu),NULL); | 123 | g_signal_connect(terminal,"popup",G_CALLBACK(popup_menu),NULL); |
110 | 124 | ||
111 | // Setup and show window | 125 | // Setup and show window |
src/v3270/oia.c
@@ -711,11 +711,7 @@ void v3270_update_luname(GtkWidget *widget,const gchar *name) | @@ -711,11 +711,7 @@ void v3270_update_luname(GtkWidget *widget,const gchar *name) | ||
711 | v3270_queue_draw_area(GTK_WIDGET(terminal),rect->x,rect->y,rect->width,rect->height); | 711 | v3270_queue_draw_area(GTK_WIDGET(terminal),rect->x,rect->y,rect->width,rect->height); |
712 | } | 712 | } |
713 | 713 | ||
714 | -#if GTK_CHECK_VERSION(2,26,0) | ||
715 | - g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_LUNAME]); | ||
716 | -#else | ||
717 | - g_object_notify(G_OBJECT(widget),"luname"); | ||
718 | -#endif // GTK_CHECK_VERSION | 714 | +// g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_LUNAME]); |
719 | 715 | ||
720 | } | 716 | } |
721 | 717 |
src/v3270/private.h
@@ -201,15 +201,15 @@ G_BEGIN_DECLS | @@ -201,15 +201,15 @@ G_BEGIN_DECLS | ||
201 | 201 | ||
202 | /*--[ Properties ]-----------------------------------------------------------------------------------*/ | 202 | /*--[ Properties ]-----------------------------------------------------------------------------------*/ |
203 | 203 | ||
204 | + /* | ||
204 | enum | 205 | enum |
205 | { | 206 | { |
206 | PROP_0, | 207 | PROP_0, |
207 | 208 | ||
208 | - /* Construct */ | 209 | + // Construct |
209 | PROP_TYPE, | 210 | PROP_TYPE, |
210 | 211 | ||
211 | - | ||
212 | - /* Widget properties */ | 212 | + // Widget properties |
213 | PROP_ONLINE, | 213 | PROP_ONLINE, |
214 | PROP_SELECTION, | 214 | PROP_SELECTION, |
215 | PROP_MODEL, | 215 | PROP_MODEL, |
@@ -218,21 +218,37 @@ G_BEGIN_DECLS | @@ -218,21 +218,37 @@ G_BEGIN_DECLS | ||
218 | PROP_URL, | 218 | PROP_URL, |
219 | PROP_SESSION_NAME, | 219 | PROP_SESSION_NAME, |
220 | 220 | ||
221 | - /* Toggles - always the last one, the real values are PROP_TOGGLE+LIB3270_TOGGLE */ | 221 | + // Toggles - always the last one, the real values are PROP_TOGGLE+LIB3270_TOGGLE |
222 | PROP_TOGGLE | 222 | PROP_TOGGLE |
223 | }; | 223 | }; |
224 | 224 | ||
225 | #define PROP_LAST (PROP_TOGGLE+LIB3270_TOGGLE_COUNT) | 225 | #define PROP_LAST (PROP_TOGGLE+LIB3270_TOGGLE_COUNT) |
226 | - | 226 | + */ |
227 | 227 | ||
228 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ | 228 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ |
229 | 229 | ||
230 | G_GNUC_INTERNAL guint v3270_widget_signal[LAST_SIGNAL]; | 230 | G_GNUC_INTERNAL guint v3270_widget_signal[LAST_SIGNAL]; |
231 | G_GNUC_INTERNAL GdkCursor * v3270_cursor[LIB3270_POINTER_COUNT]; | 231 | G_GNUC_INTERNAL GdkCursor * v3270_cursor[LIB3270_POINTER_COUNT]; |
232 | - G_GNUC_INTERNAL GParamSpec * v3270_properties[PROP_LAST]; | 232 | +// G_GNUC_INTERNAL GParamSpec * v3270_properties[PROP_LAST]; |
233 | G_GNUC_INTERNAL const gchar * v3270_default_colors; | 233 | G_GNUC_INTERNAL const gchar * v3270_default_colors; |
234 | G_GNUC_INTERNAL const gchar * v3270_default_font; | 234 | G_GNUC_INTERNAL const gchar * v3270_default_font; |
235 | 235 | ||
236 | + G_GNUC_INTERNAL struct _v3270_properties | ||
237 | + { | ||
238 | + size_t count; // Number of properties. | ||
239 | + GParamSpec **toggle; // Toggle properties. | ||
240 | + | ||
241 | + struct | ||
242 | + { | ||
243 | + guint toggle; | ||
244 | + guint boolean; | ||
245 | + guint integer; | ||
246 | + guint str; | ||
247 | + } type; | ||
248 | + | ||
249 | + } v3270_properties; | ||
250 | + | ||
251 | + | ||
236 | /*--[ Prototipes ]-----------------------------------------------------------------------------------*/ | 252 | /*--[ Prototipes ]-----------------------------------------------------------------------------------*/ |
237 | 253 | ||
238 | const GtkWidgetClass * v3270_get_parent_class(void); | 254 | const GtkWidgetClass * v3270_get_parent_class(void); |
src/v3270/properties.c
@@ -34,28 +34,74 @@ | @@ -34,28 +34,74 @@ | ||
34 | #endif // WIN32 | 34 | #endif // WIN32 |
35 | 35 | ||
36 | #include <gtk/gtk.h> | 36 | #include <gtk/gtk.h> |
37 | + #include <limits.h> | ||
37 | #include <lib3270.h> | 38 | #include <lib3270.h> |
38 | #include <lib3270/session.h> | 39 | #include <lib3270/session.h> |
39 | #include <lib3270/actions.h> | 40 | #include <lib3270/actions.h> |
40 | #include <lib3270/log.h> | 41 | #include <lib3270/log.h> |
41 | - #include <lib3270/macros.h> | 42 | + #include <lib3270/properties.h> |
42 | #include <stdlib.h> | 43 | #include <stdlib.h> |
43 | #include <errno.h> | 44 | #include <errno.h> |
44 | #include <v3270.h> | 45 | #include <v3270.h> |
45 | #include "private.h" | 46 | #include "private.h" |
46 | 47 | ||
48 | + #define PROP_BEGIN 2 | ||
49 | + | ||
47 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ | 50 | /*--[ Globals ]--------------------------------------------------------------------------------------*/ |
48 | 51 | ||
49 | - GParamSpec * v3270_properties[PROP_LAST] = { 0 }; | 52 | +// GParamSpec * v3270_properties[PROP_LAST] = { 0 }; |
50 | 53 | ||
51 | /*--[ Implement ]------------------------------------------------------------------------------------*/ | 54 | /*--[ Implement ]------------------------------------------------------------------------------------*/ |
52 | 55 | ||
53 | static void v3270_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) | 56 | static void v3270_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) |
54 | { | 57 | { |
55 | - debug("%s(%u)",__FUNCTION__,prop_id); | ||
56 | - | ||
57 | v3270 *window = GTK_V3270(object); | 58 | v3270 *window = GTK_V3270(object); |
58 | 59 | ||
60 | + debug("%s(%u,%s)",__FUNCTION__,prop_id,g_param_spec_get_name(pspec)); | ||
61 | + | ||
62 | + if(prop_id < v3270_properties.type.toggle) | ||
63 | + { | ||
64 | + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); | ||
65 | + } | ||
66 | + else if(prop_id >= v3270_properties.type.str) | ||
67 | + { | ||
68 | + const LIB3270_STRING_PROPERTY * prop = (lib3270_get_string_properties_list()+(prop_id - v3270_properties.type.str)); | ||
69 | + debug("%s.%s.%s=%s",__FUNCTION__,"string",prop->name,g_value_get_string(value)); | ||
70 | + | ||
71 | + if(prop->set) | ||
72 | + prop->set(window->host,g_value_get_string(value)); | ||
73 | + | ||
74 | + } | ||
75 | + else if(prop_id >= v3270_properties.type.integer) | ||
76 | + { | ||
77 | + const LIB3270_INT_PROPERTY * prop = (lib3270_get_int_properties_list()+(prop_id - v3270_properties.type.integer)); | ||
78 | + debug("%s.%s.%s",__FUNCTION__,"integer",prop->name); | ||
79 | + | ||
80 | + if(prop->set) | ||
81 | + prop->set(window->host,g_value_get_int(value)); | ||
82 | + | ||
83 | + } | ||
84 | + else if(prop_id >= v3270_properties.type.boolean) | ||
85 | + { | ||
86 | + const LIB3270_INT_PROPERTY * prop = (lib3270_get_boolean_properties_list()+(prop_id - v3270_properties.type.boolean)); | ||
87 | + debug("%s.%s.%s",__FUNCTION__,"boolean",prop->name); | ||
88 | + | ||
89 | + if(prop->set) | ||
90 | + prop->set(window->host,g_value_get_boolean(value) ? 1 : 0); | ||
91 | + | ||
92 | + } | ||
93 | + else if(prop_id >= v3270_properties.type.toggle) | ||
94 | + { | ||
95 | + debug("%s.%s",__FUNCTION__,"toggle"); | ||
96 | + | ||
97 | + } | ||
98 | + else | ||
99 | + { | ||
100 | + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); | ||
101 | + } | ||
102 | + | ||
103 | + /* | ||
104 | + | ||
59 | switch (prop_id) | 105 | switch (prop_id) |
60 | { | 106 | { |
61 | case PROP_MODEL: | 107 | case PROP_MODEL: |
@@ -82,13 +128,54 @@ | @@ -82,13 +128,54 @@ | ||
82 | } | 128 | } |
83 | G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); | 129 | G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); |
84 | } | 130 | } |
131 | + */ | ||
85 | 132 | ||
86 | } | 133 | } |
87 | 134 | ||
88 | static void v3270_get_property(GObject *object,guint prop_id, GValue *value, GParamSpec *pspec) | 135 | static void v3270_get_property(GObject *object,guint prop_id, GValue *value, GParamSpec *pspec) |
89 | { | 136 | { |
90 | - debug("%s(%u)",__FUNCTION__,prop_id); | 137 | + v3270 *window = GTK_V3270(object); |
138 | + | ||
139 | + debug("%s(%u,%s)",__FUNCTION__,prop_id,g_param_spec_get_name(pspec)); | ||
140 | + | ||
141 | + if(prop_id < v3270_properties.type.toggle) | ||
142 | + { | ||
143 | + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); | ||
144 | + } | ||
145 | + else if(prop_id >= v3270_properties.type.str) | ||
146 | + { | ||
147 | + const LIB3270_STRING_PROPERTY * prop = (lib3270_get_string_properties_list()+(prop_id - v3270_properties.type.str)); | ||
148 | + debug("%s.%s.%s",__FUNCTION__,"string",prop->name); | ||
149 | + | ||
150 | + if(prop->get) | ||
151 | + g_value_set_string(value,prop->get(window->host)); | ||
152 | + | ||
153 | + } | ||
154 | + else if(prop_id >= v3270_properties.type.integer) | ||
155 | + { | ||
156 | + const LIB3270_INT_PROPERTY * prop = (lib3270_get_int_properties_list()+(prop_id - v3270_properties.type.integer)); | ||
157 | + debug("%s.%s.%s",__FUNCTION__,"integer",prop->name); | ||
158 | + | ||
159 | + | ||
160 | + } | ||
161 | + else if(prop_id >= v3270_properties.type.boolean) | ||
162 | + { | ||
163 | + const LIB3270_INT_PROPERTY * prop = (lib3270_get_boolean_properties_list()+(prop_id - v3270_properties.type.boolean)); | ||
164 | + debug("%s.%s.%s",__FUNCTION__,"boolean",prop->name); | ||
165 | + | ||
91 | 166 | ||
167 | + } | ||
168 | + else if(prop_id >= v3270_properties.type.toggle) | ||
169 | + { | ||
170 | + debug("%s.%s",__FUNCTION__,"toggle"); | ||
171 | + | ||
172 | + } | ||
173 | + else | ||
174 | + { | ||
175 | + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); | ||
176 | + } | ||
177 | + | ||
178 | + /* | ||
92 | v3270 *window = GTK_V3270(object); | 179 | v3270 *window = GTK_V3270(object); |
93 | 180 | ||
94 | switch (prop_id) | 181 | switch (prop_id) |
@@ -129,17 +216,96 @@ | @@ -129,17 +216,96 @@ | ||
129 | } | 216 | } |
130 | G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); | 217 | G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); |
131 | } | 218 | } |
219 | + */ | ||
132 | } | 220 | } |
133 | 221 | ||
134 | void v3270_init_properties(GObjectClass * gobject_class) | 222 | void v3270_init_properties(GObjectClass * gobject_class) |
135 | { | 223 | { |
224 | + size_t ix; | ||
225 | + GParamSpec * spec; | ||
226 | + | ||
136 | debug("%s",__FUNCTION__); | 227 | debug("%s",__FUNCTION__); |
137 | 228 | ||
138 | - memset(v3270_properties,0,sizeof(v3270_properties)); | 229 | + memset(&v3270_properties,0,sizeof(v3270_properties)); |
230 | + v3270_properties.count = LIB3270_TOGGLE_COUNT; | ||
231 | + v3270_properties.type.toggle = PROP_BEGIN; | ||
139 | 232 | ||
140 | gobject_class->set_property = v3270_set_property; | 233 | gobject_class->set_property = v3270_set_property; |
141 | gobject_class->get_property = v3270_get_property; | 234 | gobject_class->get_property = v3270_get_property; |
142 | 235 | ||
236 | + // Get property tables | ||
237 | + const LIB3270_INT_PROPERTY * bool_props = lib3270_get_boolean_properties_list(); | ||
238 | + const LIB3270_INT_PROPERTY * int_props = lib3270_get_int_properties_list(); | ||
239 | + const LIB3270_STRING_PROPERTY * str_props = lib3270_get_string_properties_list(); | ||
240 | + | ||
241 | + v3270_properties.type.boolean = v3270_properties.count + PROP_BEGIN; | ||
242 | + for(ix = 0; bool_props[ix].name; ix++) | ||
243 | + { | ||
244 | + v3270_properties.count++; | ||
245 | + } | ||
246 | + | ||
247 | + v3270_properties.type.integer = v3270_properties.count + PROP_BEGIN; | ||
248 | + for(ix = 0; int_props[ix].name; ix++) | ||
249 | + { | ||
250 | + v3270_properties.count++; | ||
251 | + } | ||
252 | + | ||
253 | + v3270_properties.type.str = v3270_properties.count + PROP_BEGIN; | ||
254 | + for(ix = 0; str_props[ix].name; ix++) | ||
255 | + { | ||
256 | + v3270_properties.count++; | ||
257 | + } | ||
258 | + | ||
259 | + debug("Creating %u properties", (unsigned int) v3270_properties.count); | ||
260 | + | ||
261 | + // Creating toggle properties. | ||
262 | + for(ix = 0; ix < LIB3270_TOGGLE_COUNT; ix++) | ||
263 | + { | ||
264 | + debug("Property %u=%s (Toggle)",(unsigned int) v3270_properties.type.toggle + ix, lib3270_get_toggle_name(ix)); | ||
265 | + spec = g_param_spec_boolean(lib3270_get_toggle_name(ix),lib3270_get_toggle_name(ix),lib3270_get_toggle_description(ix),FALSE,G_PARAM_WRITABLE|G_PARAM_READABLE); | ||
266 | + g_object_class_install_property(gobject_class, v3270_properties.type.toggle + ix, spec); | ||
267 | + } | ||
268 | + | ||
269 | + | ||
270 | + // Creating boolean properties. | ||
271 | + for(ix = 0; bool_props[ix].name; ix++) | ||
272 | + { | ||
273 | + debug("Property %u=%s (Boolean)",(unsigned int) v3270_properties.type.boolean + ix, bool_props[ix].name); | ||
274 | + spec = g_param_spec_boolean(bool_props[ix].name, bool_props[ix].name, bool_props[ix].description, FALSE,(bool_props[ix].set == NULL ? G_PARAM_READABLE : (G_PARAM_READABLE|G_PARAM_WRITABLE))); | ||
275 | + g_object_class_install_property(gobject_class, v3270_properties.type.boolean + ix, spec); | ||
276 | + | ||
277 | + } | ||
278 | + | ||
279 | + // Creating integer properties. | ||
280 | + for(ix = 0; int_props[ix].name; ix++) | ||
281 | + { | ||
282 | + debug("Property %u=%s (Integer)",(unsigned int) v3270_properties.type.integer + ix, int_props[ix].name); | ||
283 | + | ||
284 | + spec = g_param_spec_int( | ||
285 | + int_props[ix].name, | ||
286 | + int_props[ix].name, | ||
287 | + int_props[ix].description, | ||
288 | + 0, // Minimo | ||
289 | + INT_MAX, // Máximo | ||
290 | + 0, // Default | ||
291 | + (int_props[ix].set == NULL ? G_PARAM_READABLE : (G_PARAM_READABLE|G_PARAM_WRITABLE)) | ||
292 | + ); | ||
293 | + | ||
294 | + g_object_class_install_property(gobject_class, v3270_properties.type.integer + ix, spec); | ||
295 | + | ||
296 | + } | ||
297 | + | ||
298 | + // Creating string properties. | ||
299 | + for(ix = 0; str_props[ix].name; ix++) | ||
300 | + { | ||
301 | + debug("Property %u=%s (String)",(unsigned int) v3270_properties.type.str + ix, str_props[ix].name); | ||
302 | + spec = g_param_spec_string(str_props[ix].name, str_props[ix].name, str_props[ix].description, FALSE,(str_props[ix].set == NULL ? G_PARAM_READABLE : (G_PARAM_READABLE|G_PARAM_WRITABLE))); | ||
303 | + g_object_class_install_property(gobject_class, v3270_properties.type.str + ix, spec); | ||
304 | + | ||
305 | + } | ||
306 | + | ||
307 | + | ||
308 | + /* | ||
143 | v3270_properties[PROP_ONLINE] = g_param_spec_boolean( | 309 | v3270_properties[PROP_ONLINE] = g_param_spec_boolean( |
144 | "online", | 310 | "online", |
145 | "online", | 311 | "online", |
@@ -206,6 +372,7 @@ | @@ -206,6 +372,7 @@ | ||
206 | g_object_class_install_property(gobject_class,PROP_TOGGLE+f,v3270_properties[PROP_TOGGLE+f]); | 372 | g_object_class_install_property(gobject_class,PROP_TOGGLE+f,v3270_properties[PROP_TOGGLE+f]); |
207 | } | 373 | } |
208 | debug("%s",__FUNCTION__); | 374 | debug("%s",__FUNCTION__); |
375 | + */ | ||
209 | } | 376 | } |
210 | 377 | ||
211 | void v3270_set_auto_disconnect(GtkWidget *widget, guint minutes) | 378 | void v3270_set_auto_disconnect(GtkWidget *widget, guint minutes) |
src/v3270/widget.c
@@ -718,13 +718,10 @@ static void update_toggle(H3270 *session, LIB3270_TOGGLE ix, unsigned char value | @@ -718,13 +718,10 @@ static void update_toggle(H3270 *session, LIB3270_TOGGLE ix, unsigned char value | ||
718 | break; | 718 | break; |
719 | 719 | ||
720 | } | 720 | } |
721 | -#if GTK_CHECK_VERSION(2,26,0) | ||
722 | - g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_TOGGLE+ix]); | ||
723 | -#else | ||
724 | - g_object_notify(G_OBJECT(widget),name); | ||
725 | -#endif // GTK_CHECK_VERSION | ||
726 | 721 | ||
722 | + g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties.toggle[ix]); | ||
727 | g_signal_emit(widget, v3270_widget_signal[SIGNAL_TOGGLE_CHANGED], 0, (guint) ix, (gboolean) (value != 0), (gchar *) name); | 723 | g_signal_emit(widget, v3270_widget_signal[SIGNAL_TOGGLE_CHANGED], 0, (guint) ix, (gboolean) (value != 0), (gchar *) name); |
724 | + | ||
728 | } | 725 | } |
729 | 726 | ||
730 | static void update_message(H3270 *session, LIB3270_MESSAGE id) | 727 | static void update_message(H3270 *session, LIB3270_MESSAGE id) |
@@ -785,11 +782,7 @@ static void update_connect(H3270 *session, unsigned char connected) | @@ -785,11 +782,7 @@ static void update_connect(H3270 *session, unsigned char connected) | ||
785 | g_signal_emit(GTK_WIDGET(widget), v3270_widget_signal[SIGNAL_DISCONNECTED], 0); | 782 | g_signal_emit(GTK_WIDGET(widget), v3270_widget_signal[SIGNAL_DISCONNECTED], 0); |
786 | } | 783 | } |
787 | 784 | ||
788 | -#if GTK_CHECK_VERSION(2,26,0) | ||
789 | - g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_ONLINE]); | ||
790 | -#else | ||
791 | - g_object_notify(G_OBJECT(widget),"online"); | ||
792 | -#endif // GTK_CHECK_VERSION | 785 | + // g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_ONLINE]); |
793 | 786 | ||
794 | widget->activity.timestamp = time(0); | 787 | widget->activity.timestamp = time(0); |
795 | 788 | ||
@@ -804,11 +797,7 @@ static void update_screen_size(H3270 *session,unsigned short rows, unsigned shor | @@ -804,11 +797,7 @@ static void update_screen_size(H3270 *session,unsigned short rows, unsigned shor | ||
804 | 797 | ||
805 | static void update_model(H3270 *session, const char *name, int model, int rows, int cols) | 798 | static void update_model(H3270 *session, const char *name, int model, int rows, int cols) |
806 | { | 799 | { |
807 | -#if GTK_CHECK_VERSION(2,26,0) | ||
808 | - g_object_notify_by_pspec(G_OBJECT(lib3270_get_user_data(session)), v3270_properties[PROP_MODEL]); | ||
809 | -#else | ||
810 | - g_object_notify(G_OBJECT(lib3270_get_user_data(session)),"model"); | ||
811 | -#endif // GTK_CHECK_VERSION | 800 | +// g_object_notify_by_pspec(G_OBJECT(lib3270_get_user_data(session)), v3270_properties[PROP_MODEL]); |
812 | g_signal_emit(GTK_WIDGET(lib3270_get_user_data(session)),v3270_widget_signal[SIGNAL_MODEL_CHANGED], 0, (guint) model, name); | 801 | g_signal_emit(GTK_WIDGET(lib3270_get_user_data(session)),v3270_widget_signal[SIGNAL_MODEL_CHANGED], 0, (guint) model, name); |
813 | } | 802 | } |
814 | 803 | ||
@@ -863,13 +852,9 @@ static void set_selection(H3270 *session, unsigned char status) | @@ -863,13 +852,9 @@ static void set_selection(H3270 *session, unsigned char status) | ||
863 | { | 852 | { |
864 | GtkWidget * widget = GTK_WIDGET(lib3270_get_user_data(session)); | 853 | GtkWidget * widget = GTK_WIDGET(lib3270_get_user_data(session)); |
865 | 854 | ||
866 | -#if GTK_CHECK_VERSION(2,26,0) | ||
867 | - g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_SELECTION]); | ||
868 | -#else | ||
869 | - g_object_notify(G_OBJECT(widget),"selection"); | ||
870 | -#endif // GTK_CHECK_VERSION | ||
871 | - | 855 | +// g_object_notify_by_pspec(G_OBJECT(widget), v3270_properties[PROP_SELECTION]); |
872 | g_signal_emit(widget,v3270_widget_signal[SIGNAL_SELECTING], 0, status ? TRUE : FALSE); | 856 | g_signal_emit(widget,v3270_widget_signal[SIGNAL_SELECTING], 0, status ? TRUE : FALSE); |
857 | + | ||
873 | } | 858 | } |
874 | 859 | ||
875 | static void update_selection(H3270 *session, int start, int end) | 860 | static void update_selection(H3270 *session, int start, int end) |