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 | 408 | else if(toggle = TOGGLE_DYNAMIC_SPACING) |
409 | 409 | { |
410 | 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 | 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 | 941 | if(tooltip && *tooltip) |
940 | 942 | gtk_action_set_tooltip(GTK_ACTION(action),tooltip); |
941 | 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 | 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 | 955 | g_signal_connect(action,"toggled",G_CALLBACK(lib3270_toggle_action),widget); |
946 | 956 | break; |
947 | 957 | ... | ... |
src/pw3270/window.c
... | ... | @@ -264,6 +264,8 @@ static GtkWidget * trace_window = NULL; |
264 | 264 | GtkWidget * widget = g_object_new(GTK_TYPE_PW3270, NULL); |
265 | 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 | 269 | if(tracefile) |
268 | 270 | { |
269 | 271 | lib3270_set_trace_handler(pw3270_get_session(widget),trace_on_file,(void *) widget); |
... | ... | @@ -305,7 +307,6 @@ static GtkWidget * trace_window = NULL; |
305 | 307 | pw3270_set_session_color_type(widget,colors); |
306 | 308 | |
307 | 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 | 311 | if(pw3270_get_toggle(widget,LIB3270_TOGGLE_CONNECT_ON_STARTUP)) |
311 | 312 | g_idle_add((GSourceFunc) bg_auto_connect, widget); |
... | ... | @@ -683,6 +684,7 @@ static GtkWidget * trace_window = NULL; |
683 | 684 | { |
684 | 685 | GtkAction **list = (GtkAction **) g_object_get_data(G_OBJECT(widget),"toggle_actions"); |
685 | 686 | gchar *nm = g_ascii_strdown(name,-1); |
687 | + | |
686 | 688 | set_boolean_to_config("toggle",nm,toggled); |
687 | 689 | g_free(nm); |
688 | 690 | ... | ... |