Commit 9e851998c448a6c59a40ef937226a7652274731d
1 parent
8ad94851
Exists in
master
and in
5 other branches
Ajustando para compilar direto no SLED 11
Showing
4 changed files
with
39 additions
and
3 deletions
Show diff stats
configure.ac
| @@ -308,7 +308,7 @@ AC_CHECK_FUNCS(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO) ) | @@ -308,7 +308,7 @@ AC_CHECK_FUNCS(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO) ) | ||
| 308 | 308 | ||
| 309 | PKG_CHECK_EXISTS | 309 | PKG_CHECK_EXISTS |
| 310 | 310 | ||
| 311 | -PKG_CHECK_MODULES( [GTK], [gtk+-3.0 gmodule-2.0], [ GTK_VERSION="3.0" ], [ PKG_CHECK_MODULES( [GTK], [gtk+-2.0 >= 2.16 gthread-2.0 gmodule-2.0], [ GTK_VERSION="2.0" ] ) ], [ ] ) | 311 | +PKG_CHECK_MODULES( [GTK], [gtk+-3.0 gmodule-2.0], [ GTK_VERSION="3.0" ], [ PKG_CHECK_MODULES( [GTK], [gtk+-2.0 >= 2.14 gthread-2.0 gmodule-2.0], [ GTK_VERSION="2.0" ] ) ], [ ] ) |
| 312 | 312 | ||
| 313 | AC_SUBST(GTK_LIBS) | 313 | AC_SUBST(GTK_LIBS) |
| 314 | AC_SUBST(GTK_CFLAGS) | 314 | AC_SUBST(GTK_CFLAGS) |
src/pw3270/actions.c
| @@ -492,7 +492,31 @@ static GtkAction * new_action(const gchar *name, const gchar **names, const gcha | @@ -492,7 +492,31 @@ static GtkAction * new_action(const gchar *name, const gchar **names, const gcha | ||
| 492 | } | 492 | } |
| 493 | return action; | 493 | return action; |
| 494 | #else | 494 | #else |
| 495 | - return gtk_action_new(nm,NULL,NULL,NULL); | 495 | + return gtk_action_new(name,NULL,NULL,NULL); |
| 496 | +#endif // GTK(2,16) | ||
| 497 | +} | ||
| 498 | + | ||
| 499 | +static GtkAction * new_toggle(const gchar *name, const gchar **names, const gchar **values) | ||
| 500 | +{ | ||
| 501 | +#if GTK_CHECK_VERSION(2,16,0) | ||
| 502 | + const gchar *label = ui_get_attribute("label",names,values); | ||
| 503 | + const gchar *tooltip = ui_get_attribute("tooltip",names,values); | ||
| 504 | + const gchar *id = ui_get_attribute("label",names,values); | ||
| 505 | + GtkAction *action = NULL; | ||
| 506 | + | ||
| 507 | + if(id) | ||
| 508 | + { | ||
| 509 | + gchar * stock = g_strconcat("gtk-",id,NULL); | ||
| 510 | + action = gtk_toggle_action_new(name,label,tooltip,stock); | ||
| 511 | + g_free(stock); | ||
| 512 | + } | ||
| 513 | + else | ||
| 514 | + { | ||
| 515 | + action = gtk_toggle_action_new(name,label,tooltip,NULL); | ||
| 516 | + } | ||
| 517 | + return GTK_ACTION(action); | ||
| 518 | +#else | ||
| 519 | + return GTK_ACTION(gtk_toggle_action_new(name,NULL,NULL,NULL)); | ||
| 496 | #endif // GTK(2,16) | 520 | #endif // GTK(2,16) |
| 497 | } | 521 | } |
| 498 | 522 | ||
| @@ -752,7 +776,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash | @@ -752,7 +776,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash | ||
| 752 | break; | 776 | break; |
| 753 | 777 | ||
| 754 | case ACTION_TYPE_TOGGLE: | 778 | case ACTION_TYPE_TOGGLE: |
| 755 | - action = GTK_ACTION(gtk_toggle_action_new(nm,NULL,NULL,NULL)); | 779 | + action = new_toggle(nm,names,values); |
| 756 | if(id < LIB3270_TOGGLE_COUNT) | 780 | if(id < LIB3270_TOGGLE_COUNT) |
| 757 | toggle_action[id] = action; | 781 | toggle_action[id] = action; |
| 758 | g_object_set_data(G_OBJECT(action),"toggle_id",GINT_TO_POINTER(id)); | 782 | g_object_set_data(G_OBJECT(action),"toggle_id",GINT_TO_POINTER(id)); |
src/pw3270/fonts.c
| @@ -40,7 +40,11 @@ | @@ -40,7 +40,11 @@ | ||
| 40 | { | 40 | { |
| 41 | if(!gtk_check_menu_item_get_active(item)) | 41 | if(!gtk_check_menu_item_get_active(item)) |
| 42 | return; | 42 | return; |
| 43 | +#if GTK_CHECK_VERSION(2,16,0) | ||
| 43 | v3270_set_font_family(widget,gtk_menu_item_get_label(GTK_MENU_ITEM(item))); | 44 | v3270_set_font_family(widget,gtk_menu_item_get_label(GTK_MENU_ITEM(item))); |
| 45 | +#else | ||
| 46 | + v3270_set_font_family(widget,g_object_get_data(G_OBJECT(item),"fontfamily")); | ||
| 47 | +#endif // GTK(2,16,0) | ||
| 44 | } | 48 | } |
| 45 | 49 | ||
| 46 | static void load_system_monospaced_fonts(GtkWidget *topmenu, GtkWidget *menu, GtkWidget *obj) | 50 | static void load_system_monospaced_fonts(GtkWidget *topmenu, GtkWidget *menu, GtkWidget *obj) |
| @@ -62,6 +66,10 @@ | @@ -62,6 +66,10 @@ | ||
| 62 | 66 | ||
| 63 | group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(item)); | 67 | group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(item)); |
| 64 | 68 | ||
| 69 | +#if ! GTK_CHECK_VERSION(2,16,0) | ||
| 70 | + g_object_set_data_full(G_OBJECT(item),"fontfamily",g_strdup(name),g_free); | ||
| 71 | +#endif // !GTK(2,16,0) | ||
| 72 | + | ||
| 65 | g_signal_connect(G_OBJECT(item),"toggled",G_CALLBACK(activate_font),obj); | 73 | g_signal_connect(G_OBJECT(item),"toggled",G_CALLBACK(activate_font),obj); |
| 66 | 74 | ||
| 67 | gtk_widget_show(item); | 75 | gtk_widget_show(item); |
src/pw3270/uiparser/parser.c
| @@ -153,11 +153,15 @@ static void action_group_setup(gpointer key, GtkAction *action, struct action_in | @@ -153,11 +153,15 @@ static void action_group_setup(gpointer key, GtkAction *action, struct action_in | ||
| 153 | } | 153 | } |
| 154 | 154 | ||
| 155 | // Update proxy widgets | 155 | // Update proxy widgets |
| 156 | +#if GTK_CHECK_VERSION(2,16,0) | ||
| 156 | while(child) | 157 | while(child) |
| 157 | { | 158 | { |
| 158 | gtk_activatable_sync_action_properties(GTK_ACTIVATABLE(child->data),action); | 159 | gtk_activatable_sync_action_properties(GTK_ACTIVATABLE(child->data),action); |
| 159 | child = child->next; | 160 | child = child->next; |
| 160 | } | 161 | } |
| 162 | +#else | ||
| 163 | + | ||
| 164 | +#endif // GTK(2,16,0) | ||
| 161 | 165 | ||
| 162 | } | 166 | } |
| 163 | 167 |