Commit 735634e3fdc188b803b9c5f8545fdbf77ff37980
1 parent
3262676b
Exists in
v5.2
Save/restore state of dynamic font spacing.
Showing
2 changed files
with
14 additions
and
2 deletions
Show diff stats
src/pw3270/actions.c
| @@ -408,6 +408,8 @@ static void lib3270_toggle_action(GtkToggleAction *action,GtkWidget *widget) | @@ -408,6 +408,8 @@ static void lib3270_toggle_action(GtkToggleAction *action,GtkWidget *widget) | ||
| 408 | else if(toggle = TOGGLE_DYNAMIC_SPACING) | 408 | else if(toggle = TOGGLE_DYNAMIC_SPACING) |
| 409 | { | 409 | { |
| 410 | v3270_set_dynamic_font_spacing(widget,gtk_toggle_action_get_active(action)); | 410 | v3270_set_dynamic_font_spacing(widget,gtk_toggle_action_get_active(action)); |
| 411 | + set_boolean_to_config("toggle","dspacing",gtk_toggle_action_get_active(action)); | ||
| 412 | + | ||
| 411 | } | 413 | } |
| 412 | else if(toggle < LIB3270_TOGGLE_COUNT) | 414 | else if(toggle < LIB3270_TOGGLE_COUNT) |
| 413 | { | 415 | { |
| @@ -939,9 +941,17 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash | @@ -939,9 +941,17 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash | ||
| 939 | if(tooltip && *tooltip) | 941 | if(tooltip && *tooltip) |
| 940 | gtk_action_set_tooltip(GTK_ACTION(action),tooltip); | 942 | gtk_action_set_tooltip(GTK_ACTION(action),tooltip); |
| 941 | toggle_action[id] = action; | 943 | toggle_action[id] = action; |
| 944 | + | ||
| 945 | + gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action),(lib3270_get_toggle(v3270_get_session(widget),id) != 0)); | ||
| 942 | } | 946 | } |
| 947 | + else if(id == TOGGLE_DYNAMIC_SPACING) | ||
| 948 | + { | ||
| 949 | + gboolean active = get_boolean_from_config("toggle","dspacing",FALSE); | ||
| 950 | + v3270_set_dynamic_font_spacing(widget,active); | ||
| 951 | + gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action),active); | ||
| 952 | + } | ||
| 953 | + | ||
| 943 | g_object_set_data(G_OBJECT(action),"toggle_id",GINT_TO_POINTER(id)); | 954 | g_object_set_data(G_OBJECT(action),"toggle_id",GINT_TO_POINTER(id)); |
| 944 | - gtk_toggle_action_set_active(GTK_TOGGLE_ACTION(action),(lib3270_get_toggle(v3270_get_session(widget),id) != 0)); | ||
| 945 | g_signal_connect(action,"toggled",G_CALLBACK(lib3270_toggle_action),widget); | 955 | g_signal_connect(action,"toggled",G_CALLBACK(lib3270_toggle_action),widget); |
| 946 | break; | 956 | break; |
| 947 | 957 |
src/pw3270/window.c
| @@ -264,6 +264,8 @@ static GtkWidget * trace_window = NULL; | @@ -264,6 +264,8 @@ static GtkWidget * trace_window = NULL; | ||
| 264 | GtkWidget * widget = g_object_new(GTK_TYPE_PW3270, NULL); | 264 | GtkWidget * widget = g_object_new(GTK_TYPE_PW3270, NULL); |
| 265 | gboolean connct = FALSE; | 265 | gboolean connct = FALSE; |
| 266 | 266 | ||
| 267 | + v3270_set_dynamic_font_spacing(GTK_PW3270(widget)->terminal,get_boolean_from_config("toggle","dspacing",FALSE)); | ||
| 268 | + | ||
| 267 | if(tracefile) | 269 | if(tracefile) |
| 268 | { | 270 | { |
| 269 | lib3270_set_trace_handler(pw3270_get_session(widget),trace_on_file,(void *) widget); | 271 | lib3270_set_trace_handler(pw3270_get_session(widget),trace_on_file,(void *) widget); |
| @@ -305,7 +307,6 @@ static GtkWidget * trace_window = NULL; | @@ -305,7 +307,6 @@ static GtkWidget * trace_window = NULL; | ||
| 305 | pw3270_set_session_color_type(widget,colors); | 307 | pw3270_set_session_color_type(widget,colors); |
| 306 | 308 | ||
| 307 | v3270_set_scaled_fonts(GTK_PW3270(widget)->terminal,get_boolean_from_config("terminal","sfonts",FALSE)); | 309 | v3270_set_scaled_fonts(GTK_PW3270(widget)->terminal,get_boolean_from_config("terminal","sfonts",FALSE)); |
| 308 | - v3270_set_dynamic_font_spacing(GTK_PW3270(widget)->terminal,get_boolean_from_config("terminal","dspacing",FALSE)); | ||
| 309 | 310 | ||
| 310 | if(pw3270_get_toggle(widget,LIB3270_TOGGLE_CONNECT_ON_STARTUP)) | 311 | if(pw3270_get_toggle(widget,LIB3270_TOGGLE_CONNECT_ON_STARTUP)) |
| 311 | g_idle_add((GSourceFunc) bg_auto_connect, widget); | 312 | g_idle_add((GSourceFunc) bg_auto_connect, widget); |
| @@ -683,6 +684,7 @@ static GtkWidget * trace_window = NULL; | @@ -683,6 +684,7 @@ static GtkWidget * trace_window = NULL; | ||
| 683 | { | 684 | { |
| 684 | GtkAction **list = (GtkAction **) g_object_get_data(G_OBJECT(widget),"toggle_actions"); | 685 | GtkAction **list = (GtkAction **) g_object_get_data(G_OBJECT(widget),"toggle_actions"); |
| 685 | gchar *nm = g_ascii_strdown(name,-1); | 686 | gchar *nm = g_ascii_strdown(name,-1); |
| 687 | + | ||
| 686 | set_boolean_to_config("toggle",nm,toggled); | 688 | set_boolean_to_config("toggle",nm,toggled); |
| 687 | g_free(nm); | 689 | g_free(nm); |
| 688 | 690 |