Commit 004109bcb3579e250ccef96925cc78a766b1c587

Authored by perry.werneck@gmail.com
1 parent 22765196

Mudando tratamento de acoes para incluir novos atributos

src/gtk/actions.c
@@ -240,12 +240,22 @@ static void action_pakey(GtkAction *action, GtkWidget *widget) @@ -240,12 +240,22 @@ static void action_pakey(GtkAction *action, GtkWidget *widget)
240 lib3270_pakey(GTK_V3270(widget)->host,(int) g_object_get_data(G_OBJECT(action),"pakey")); 240 lib3270_pakey(GTK_V3270(widget)->host,(int) g_object_get_data(G_OBJECT(action),"pakey"));
241 } 241 }
242 242
243 -/*  
244 -static void action_fullscreen(GtkAction *action, GtkWidget *widget) 243 +static void action_set_toggle(GtkAction *action, GtkWidget *widget)
  244 +{
  245 + LIB3270_TOGGLE id = (LIB3270_TOGGLE) g_object_get_data(G_OBJECT(action),"toggle_id");
  246 + trace("Action %s activated on widget %p toggle=%d",gtk_action_get_name(action),widget,id);
  247 + lib3270_set_toggle(GTK_V3270(widget)->host,id,1);
  248 +}
  249 +
  250 +static void action_reset_toggle(GtkAction *action, GtkWidget *widget)
245 { 251 {
246 - lib3270_set_toggle(GTK_V3270(widget)->host,LIB3270_TOGGLE_FULL_SCREEN,1); 252 + LIB3270_TOGGLE id = (LIB3270_TOGGLE) g_object_get_data(G_OBJECT(action),"toggle_id");
  253 + trace("Action %s activated on widget %p toggle=%d",gtk_action_get_name(action),widget,id);
  254 + lib3270_set_toggle(GTK_V3270(widget)->host,id,0);
247 } 255 }
248 256
  257 +/*
  258 +
249 static void action_reselect(GtkAction *action, GtkWidget *widget) 259 static void action_reselect(GtkAction *action, GtkWidget *widget)
250 { 260 {
251 lib3270_reselect(GTK_V3270(widget)->host); 261 lib3270_reselect(GTK_V3270(widget)->host);
@@ -261,12 +271,6 @@ static void action_pastnext(GtkAction *action, GtkWidget *widget) @@ -261,12 +271,6 @@ static void action_pastnext(GtkAction *action, GtkWidget *widget)
261 lib3270_pastenext(GTK_V3270(widget)->host); 271 lib3270_pastenext(GTK_V3270(widget)->host);
262 } 272 }
263 273
264 -void ui_connect_pakey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id)  
265 -{  
266 - g_object_set_data(G_OBJECT(action),"pakey",(gpointer) atoi(id));  
267 - g_signal_connect(action,"activate",G_CALLBACK(action_pakey),widget);  
268 -}  
269 -  
270 void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAction **lst) 274 void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAction **lst)
271 { 275 {
272 // trace("action(%d): %p",ix,action); 276 // trace("action(%d): %p",ix,action);
@@ -298,6 +302,11 @@ void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAc @@ -298,6 +302,11 @@ void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAc
298 302
299 GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash, const gchar **names, const gchar **values, GError **error) 303 GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash, const gchar **names, const gchar **values, GError **error)
300 { 304 {
  305 + static const gchar *actionname[ACTION_COUNT] = { "pastenext",
  306 + "reselect",
  307 + "setfullscreen",
  308 + "resetfullscreen"
  309 + };
301 GtkAction * action = NULL; 310 GtkAction * action = NULL;
302 GtkAction **toggle_action = (GtkAction **) g_object_get_data(G_OBJECT(widget),"toggle_actions"); 311 GtkAction **toggle_action = (GtkAction **) g_object_get_data(G_OBJECT(widget),"toggle_actions");
303 const gchar * direction = ui_get_attribute("direction",names,values); 312 const gchar * direction = ui_get_attribute("direction",names,values);
@@ -305,6 +314,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash @@ -305,6 +314,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
305 const gchar * attr; 314 const gchar * attr;
306 int id = 0; 315 int id = 0;
307 gchar * nm = NULL; 316 gchar * nm = NULL;
  317 + int f;
308 318
309 enum _action_type 319 enum _action_type
310 { 320 {
@@ -365,6 +375,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash @@ -365,6 +375,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
365 } 375 }
366 else if(!g_strcasecmp(name,"set")) 376 else if(!g_strcasecmp(name,"set"))
367 { 377 {
  378 + action_type = ACTION_TYPE_SET;
368 attr = ui_get_attribute("toggle",names,values); 379 attr = ui_get_attribute("toggle",names,values);
369 id = lib3270_get_toggle_id(attr); 380 id = lib3270_get_toggle_id(attr);
370 if(id < 0) 381 if(id < 0)
@@ -376,6 +387,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash @@ -376,6 +387,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
376 } 387 }
377 else if(!g_strcasecmp(name,"reset")) 388 else if(!g_strcasecmp(name,"reset"))
378 { 389 {
  390 + action_type = ACTION_TYPE_RESET;
379 attr = ui_get_attribute("toggle",names,values); 391 attr = ui_get_attribute("toggle",names,values);
380 id = lib3270_get_toggle_id(attr); 392 id = lib3270_get_toggle_id(attr);
381 if(id < 0) 393 if(id < 0)
@@ -455,13 +467,27 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash @@ -455,13 +467,27 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
455 467
456 case ACTION_TYPE_SET: 468 case ACTION_TYPE_SET:
457 action = gtk_action_new(nm,NULL,NULL,NULL); 469 action = gtk_action_new(nm,NULL,NULL,NULL);
  470 + g_object_set_data(G_OBJECT(action),"toggle_id",(gpointer) id);
  471 + g_signal_connect(action,"activate",G_CALLBACK(action_set_toggle),widget);
458 break; 472 break;
459 473
460 case ACTION_TYPE_RESET: 474 case ACTION_TYPE_RESET:
461 action = gtk_action_new(nm,NULL,NULL,NULL); 475 action = gtk_action_new(nm,NULL,NULL,NULL);
  476 + g_object_set_data(G_OBJECT(action),"toggle_id",(gpointer) id);
  477 + g_signal_connect(action,"activate",G_CALLBACK(action_reset_toggle),widget);
462 break; 478 break;
463 } 479 }
464 480
  481 + for(f=0;f<ACTION_COUNT;f++)
  482 + {
  483 + if(!g_strcasecmp(actionname[f],nm))
  484 + {
  485 + GtkAction **named_action = (GtkAction **) g_object_get_data(G_OBJECT(widget),"named_actions");
  486 + named_action[f] = action;
  487 + break;
  488 + }
  489 + }
  490 +
465 g_hash_table_insert(hash,nm,action); 491 g_hash_table_insert(hash,nm,action);
466 g_free(nm); 492 g_free(nm);
467 493
src/gtk/mainwindow.c
@@ -32,6 +32,10 @@ @@ -32,6 +32,10 @@
32 #include "globals.h" 32 #include "globals.h"
33 #include "uiparser/parser.h" 33 #include "uiparser/parser.h"
34 34
  35 +#ifdef DEBUG
  36 + #include <lib3270/actions.h>
  37 +#endif
  38 +
35 /*--[ Globals ]--------------------------------------------------------------------------------------*/ 39 /*--[ Globals ]--------------------------------------------------------------------------------------*/
36 40
37 enum action_group 41 enum action_group
@@ -74,11 +78,6 @@ @@ -74,11 +78,6 @@
74 NULL 78 NULL
75 }; 79 };
76 80
77 - static const gchar *actionname[ACTION_COUNT+1] = { "pastenext",  
78 - "reselect",  
79 - "setfullscreen",  
80 - "resetfullscreen"  
81 - };  
82 /*--[ Implement ]------------------------------------------------------------------------------------*/ 81 /*--[ Implement ]------------------------------------------------------------------------------------*/
83 82
84 static void toggle_changed(GtkWidget *widget, LIB3270_TOGGLE id, gboolean toggled, const gchar *name, GtkWindow *toplevel) 83 static void toggle_changed(GtkWidget *widget, LIB3270_TOGGLE id, gboolean toggled, const gchar *name, GtkWindow *toplevel)
@@ -104,7 +103,7 @@ @@ -104,7 +103,7 @@
104 static gboolean window_state_event(GtkWidget *window, GdkEventWindowState *event, GtkWidget *widget) 103 static gboolean window_state_event(GtkWidget *window, GdkEventWindowState *event, GtkWidget *widget)
105 { 104 {
106 gboolean fullscreen = event->new_window_state & GDK_WINDOW_STATE_FULLSCREEN ? TRUE : FALSE; 105 gboolean fullscreen = event->new_window_state & GDK_WINDOW_STATE_FULLSCREEN ? TRUE : FALSE;
107 - GtkAction **action = (GtkAction **) g_object_get_data(G_OBJECT(window),"named_actions"); 106 + GtkAction **action = (GtkAction **) g_object_get_data(G_OBJECT(widget),"named_actions");
108 107
109 // Update fullscreen toggles 108 // Update fullscreen toggles
110 if(action[ACTION_FULLSCREEN]) 109 if(action[ACTION_FULLSCREEN])
@@ -284,11 +283,13 @@ @@ -284,11 +283,13 @@
284 H3270 * host = v3270_get_session(terminal); 283 H3270 * host = v3270_get_session(terminal);
285 gchar * path = build_data_filename("ui",NULL); 284 gchar * path = build_data_filename("ui",NULL);
286 GtkActionGroup **group; 285 GtkActionGroup **group;
287 - GtkAction **action; 286 + GtkAction **action = g_new0(GtkAction *,ACTION_COUNT);
288 GtkWidget **popup; 287 GtkWidget **popup;
289 int f; 288 int f;
290 289
291 g_object_set_data_full(G_OBJECT(terminal),"toggle_actions",g_new0(GtkAction *,LIB3270_TOGGLE_COUNT),g_free); 290 g_object_set_data_full(G_OBJECT(terminal),"toggle_actions",g_new0(GtkAction *,LIB3270_TOGGLE_COUNT),g_free);
  291 + g_object_set_data_full(G_OBJECT(terminal),"named_actions",(gpointer) action, (GDestroyNotify) g_free);
  292 +
292 // Initialize terminal config 293 // Initialize terminal config
293 for(f=0;f<G_N_ELEMENTS(widget_config);f++) 294 for(f=0;f<G_N_ELEMENTS(widget_config);f++)
294 { 295 {
@@ -307,12 +308,9 @@ @@ -307,12 +308,9 @@
307 } 308 }
308 309
309 // Create window 310 // Create window
310 - window = ui_parse_xml_folder(path,groupname,popupname,actionname,terminal,widget_setup); 311 + window = ui_parse_xml_folder(path,groupname,popupname,terminal,widget_setup);
311 group = g_object_get_data(G_OBJECT(window),"action_groups"); 312 group = g_object_get_data(G_OBJECT(window),"action_groups");
312 popup = g_object_get_data(G_OBJECT(window),"popup_menus"); 313 popup = g_object_get_data(G_OBJECT(window),"popup_menus");
313 - action = (GtkAction **) g_object_get_data(G_OBJECT(window),"named_actions");  
314 -  
315 - g_object_set_data(G_OBJECT(terminal),"named_actions",action);  
316 314
317 // Setup action groups 315 // Setup action groups
318 gtk_action_group_set_sensitive(group[ACTION_GROUP_SELECTION],FALSE); 316 gtk_action_group_set_sensitive(group[ACTION_GROUP_SELECTION],FALSE);
@@ -359,6 +357,7 @@ @@ -359,6 +357,7 @@
359 lib3270_testpattern(host); 357 lib3270_testpattern(host);
360 #endif 358 #endif
361 359
  360 + trace("%s ends",__FUNCTION__);
362 return window; 361 return window;
363 } 362 }
364 363
src/gtk/uiparser/parsefile.c
@@ -146,7 +146,7 @@ @@ -146,7 +146,7 @@
146 action = g_hash_table_lookup(info->actions,name); 146 action = g_hash_table_lookup(info->actions,name);
147 if(!action) 147 if(!action)
148 { 148 {
149 - action = gtk_action_new(name,NULL,NULL,NULL); 149 + action = gtk_action_new(name,NULL,NULL,GTK_STOCK_QUIT);
150 g_signal_connect(action,"activate",G_CALLBACK(gtk_main_quit), NULL); 150 g_signal_connect(action,"activate",G_CALLBACK(gtk_main_quit), NULL);
151 } 151 }
152 } 152 }
@@ -155,95 +155,8 @@ @@ -155,95 +155,8 @@
155 action = ui_get_action(info->center_widget,name,info->actions,names,values,error); 155 action = ui_get_action(info->center_widget,name,info->actions,names,values,error);
156 } 156 }
157 157
158 - if(!action)  
159 - return action;  
160 -  
161 -/*  
162 - const gchar * target = NULL;  
163 - const gchar * direction = ui_get_attribute("direction",names,values);  
164 - const gchar * id = ui_get_attribute("id",names,values);  
165 - GtkAction * action;  
166 - gchar * nm;  
167 - void (*connect)(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id) = ui_connect_action;  
168 - GtkAction * (*create)(const gchar *,const gchar *,const gchar *,const gchar *) = gtk_action_new;  
169 -  
170 - if(!g_strcasecmp(name,"toggle"))  
171 - {  
172 - nm = g_strconcat(name,id,NULL);  
173 - create = (GtkAction * (*)(const gchar *,const gchar *,const gchar *,const gchar *)) gtk_toggle_action_new;  
174 - connect = ui_connect_toggle;  
175 - }  
176 - else if(!g_strcasecmp(name,"move"))  
177 - {  
178 - target = ui_get_attribute("target",names,values);  
179 -  
180 - if(!(target && direction))  
181 - {  
182 - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("Move action needs target & direction attributes" ));  
183 - return NULL;  
184 - }  
185 -  
186 - nm = g_strconcat((flags & 0x80) ? "select" : "move",target,direction, NULL);  
187 -  
188 - }  
189 - else if(!g_strcasecmp(name,"toggleset"))  
190 - {  
191 - nm = g_strconcat("set",id,NULL);  
192 - }  
193 - else if(!g_strcasecmp(name,"togglereset"))  
194 - {  
195 - nm = g_strconcat("reset",id,NULL);  
196 - }  
197 - else if(!g_strcasecmp(name,"pfkey"))  
198 - {  
199 - nm = g_strdup_printf("pf%02d",atoi(id ? id : "0"));  
200 - connect = ui_connect_pfkey;  
201 - }  
202 - else if(!g_strcasecmp(name,"pakey"))  
203 - {  
204 - nm = g_strdup_printf("pa%02d",atoi(id ? id : "0"));  
205 - connect = ui_connect_pakey;  
206 - }  
207 - else  
208 - {  
209 - nm = g_strdup(name);  
210 - }  
211 -  
212 - action = g_hash_table_lookup(info->actions,nm);  
213 -  
214 if(action) 158 if(action)
215 - {  
216 - g_free(nm);  
217 - }  
218 - else  
219 - {  
220 - int ix = -1;  
221 -  
222 - action = GTK_ACTION(create(nm,NULL,NULL,NULL));  
223 - g_hash_table_insert(info->actions,nm,action);  
224 -  
225 - if(info->actionname)  
226 - {  
227 - int f;  
228 - for(f=0;info->actionname[f] && ix < 0;f++)  
229 - {  
230 - if(!g_strcasecmp(nm,info->actionname[f]))  
231 - ix = f;  
232 - }  
233 - }  
234 -  
235 - if(ix >= 0)  
236 - ui_connect_index_action(info->action[ix] = action,info->center_widget,ix,info->action);  
237 - else if(target)  
238 - ui_connect_target_action(action,info->center_widget,target,flags,error);  
239 - else if(g_strcasecmp(name,"quit"))  
240 - connect(action,info->center_widget,name,id);  
241 - else  
242 - g_signal_connect(action,"activate",G_CALLBACK(gtk_main_quit), NULL);  
243 -  
244 - }  
245 -*/  
246 - ui_action_set_options(action,info,names,values,error); 159 + ui_action_set_options(action,info,names,values,error);
247 160
248 return action; 161 return action;
249 } 162 }
src/gtk/uiparser/parser.c
@@ -217,7 +217,7 @@ static void release_list(GObject **obj) @@ -217,7 +217,7 @@ static void release_list(GObject **obj)
217 g_free(obj); 217 g_free(obj);
218 } 218 }
219 219
220 -GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, const gchar **actionname, GtkWidget *widget, const UI_WIDGET_SETUP *setup) 220 +GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, GtkWidget *widget, const UI_WIDGET_SETUP *setup)
221 { 221 {
222 struct parser p; 222 struct parser p;
223 GDir * dir; 223 GDir * dir;
@@ -270,17 +270,12 @@ GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, con @@ -270,17 +270,12 @@ GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, con
270 p.popupname = popupname; 270 p.popupname = popupname;
271 p.strings = g_string_chunk_new(0); 271 p.strings = g_string_chunk_new(0);
272 p.setup = setup; 272 p.setup = setup;
273 - p.actionname = actionname;  
274 273
275 sz = (g_strv_length((gchar **) p.popupname)); 274 sz = (g_strv_length((gchar **) p.popupname));
276 p.popup = g_new0(GtkWidget *,sz+1); 275 p.popup = g_new0(GtkWidget *,sz+1);
277 p.popup[sz] = (GtkWidget *) -1; 276 p.popup[sz] = (GtkWidget *) -1;
278 g_object_set_data_full(G_OBJECT(p.toplevel),"popup_menus",(gpointer) p.popup, (GDestroyNotify) release_list); 277 g_object_set_data_full(G_OBJECT(p.toplevel),"popup_menus",(gpointer) p.popup, (GDestroyNotify) release_list);
279 278
280 - sz = (g_strv_length((gchar **) p.actionname));  
281 - p.action = g_new0(GtkAction *,sz);  
282 - g_object_set_data_full(G_OBJECT(p.toplevel),"named_actions",(gpointer) p.action, (GDestroyNotify) g_free);  
283 -  
284 for(current = g_list_first(file);current;current = g_list_next(current)) 279 for(current = g_list_first(file);current;current = g_list_next(current))
285 { 280 {
286 ui_parse_file(&p,(gchar *) current->data); 281 ui_parse_file(&p,(gchar *) current->data);
src/gtk/uiparser/parser.h
@@ -51,17 +51,9 @@ @@ -51,17 +51,9 @@
51 void (*setup)(GtkWidget *widget, GtkWidget *obj); 51 void (*setup)(GtkWidget *widget, GtkWidget *obj);
52 } UI_WIDGET_SETUP; 52 } UI_WIDGET_SETUP;
53 53
54 - GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, const gchar **actionname, GtkWidget *widget, const UI_WIDGET_SETUP *itn); 54 + GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, GtkWidget *widget, const UI_WIDGET_SETUP *itn);
55 const gchar * ui_get_attribute(const gchar *key, const gchar **name, const gchar **value); 55 const gchar * ui_get_attribute(const gchar *key, const gchar **name, const gchar **value);
56 gboolean ui_get_bool_attribute(const gchar *key, const gchar **name, const gchar **value, gboolean def); 56 gboolean ui_get_bool_attribute(const gchar *key, const gchar **name, const gchar **value, gboolean def);
57 GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash, const gchar **names, const gchar **values, GError **error); 57 GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash, const gchar **names, const gchar **values, GError **error);
58 58
59 -  
60 -// void ui_connect_action(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id);  
61 -// void ui_connect_target_action(GtkAction *action, GtkWidget *widget, const gchar *target, unsigned short flags, GError **error);  
62 -// void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAction **lst);  
63 -// void ui_connect_toggle(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id);  
64 -// void ui_connect_pfkey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id);  
65 -// void ui_connect_pakey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id);  
66 -  
67 #endif // UI_PARSER_H_INCLUDED 59 #endif // UI_PARSER_H_INCLUDED
src/gtk/uiparser/private.h
@@ -59,11 +59,9 @@ @@ -59,11 +59,9 @@
59 GObject * element; 59 GObject * element;
60 GtkWidget * center_widget; 60 GtkWidget * center_widget;
61 GtkWidget ** popup; /**< Popup widgets */ 61 GtkWidget ** popup; /**< Popup widgets */
62 - GtkAction ** action; /**< Named actions */  
63 GStringChunk * strings; 62 GStringChunk * strings;
64 const gchar ** group; /**< Action group list */ 63 const gchar ** group; /**< Action group list */
65 const gchar ** popupname; /**< Popup names */ 64 const gchar ** popupname; /**< Popup names */
66 - const gchar ** actionname; /**< Action names */  
67 GHashTable * actions; /**< List of actions */ 65 GHashTable * actions; /**< List of actions */
68 GHashTable * element_list[UI_ELEMENT_COUNT]; 66 GHashTable * element_list[UI_ELEMENT_COUNT];
69 const UI_WIDGET_SETUP * setup; 67 const UI_WIDGET_SETUP * setup;
src/gtk/v3270/clipboard.c
@@ -32,6 +32,7 @@ @@ -32,6 +32,7 @@
32 #include <malloc.h> 32 #include <malloc.h>
33 #include "v3270.h" 33 #include "v3270.h"
34 #include "private.h" 34 #include "private.h"
  35 + #include <lib3270/selection.h>
35 36
36 /*--[ Globals ]--------------------------------------------------------------------------------------*/ 37 /*--[ Globals ]--------------------------------------------------------------------------------------*/
37 38
@@ -225,7 +226,7 @@ void v3270_paste_string(GtkWidget *widget, const gchar *text, const gchar *encod @@ -225,7 +226,7 @@ void v3270_paste_string(GtkWidget *widget, const gchar *text, const gchar *encod
225 return; 226 return;
226 } 227 }
227 228
228 - next = lib3270_paste(session,buffer) ? TRUE : FALSE; 229 + next = lib3270_paste(session,(unsigned char *) buffer) ? TRUE : FALSE;
229 230
230 trace("Pastenext is %s",next ? "On" : "Off"); 231 trace("Pastenext is %s",next ? "On" : "Off");
231 232
src/gtk/v3270/widget.c
@@ -328,7 +328,6 @@ void v3270_update_font_metrics(v3270 *terminal, cairo_t *cr, int width, int heig @@ -328,7 +328,6 @@ void v3270_update_font_metrics(v3270 *terminal, cairo_t *cr, int width, int heig
328 328
329 cairo_set_font_size(cr,size); 329 cairo_set_font_size(cr,size);
330 330
331 -  
332 /* 331 /*
333 double sx, sy; 332 double sx, sy;
334 cairo_matrix_t font_matrix; 333 cairo_matrix_t font_matrix;
@@ -833,6 +832,8 @@ void v3270_set_font_family(GtkWidget *widget, const gchar *name) @@ -833,6 +832,8 @@ void v3270_set_font_family(GtkWidget *widget, const gchar *name)
833 name = "courier new"; 832 name = "courier new";
834 } 833 }
835 834
  835 + trace("%s(%s)",__FUNCTION__,name);
  836 +
836 terminal->font_family = g_strdup(name); 837 terminal->font_family = g_strdup(name);
837 terminal->font_weight = CAIRO_FONT_WEIGHT_NORMAL; 838 terminal->font_weight = CAIRO_FONT_WEIGHT_NORMAL;
838 839