Commit 987ecaa7b9d1aa9699d4cfb330728591bb668298
1 parent
18e73fa3
Exists in
master
and in
1 other branch
Adding dynamic font spacing option on settings.
Showing
2 changed files
with
26 additions
and
1 deletions
Show diff stats
src/dialogs/font/chooser.c
@@ -57,6 +57,7 @@ | @@ -57,6 +57,7 @@ | ||
57 | GtkWidget * font_list; | 57 | GtkWidget * font_list; |
58 | GtkWidget * preview; | 58 | GtkWidget * preview; |
59 | GtkToggleButton * bold; | 59 | GtkToggleButton * bold; |
60 | + GtkToggleButton * dynamic; | ||
60 | 61 | ||
61 | struct { | 62 | struct { |
62 | cairo_font_face_t * face; | 63 | cairo_font_face_t * face; |
@@ -66,6 +67,7 @@ | @@ -66,6 +67,7 @@ | ||
66 | struct { | 67 | struct { |
67 | gchar * family; | 68 | gchar * family; |
68 | gboolean bold; | 69 | gboolean bold; |
70 | + gboolean dynamic; | ||
69 | } saved; | 71 | } saved; |
70 | 72 | ||
71 | } V3270FontChooserWidget; | 73 | } V3270FontChooserWidget; |
@@ -90,6 +92,9 @@ | @@ -90,6 +92,9 @@ | ||
90 | v3270_set_font_family(terminal,chooser->saved.family); | 92 | v3270_set_font_family(terminal,chooser->saved.family); |
91 | 93 | ||
92 | v3270_set_toggle(terminal,LIB3270_TOGGLE_BOLD,chooser->saved.bold); | 94 | v3270_set_toggle(terminal,LIB3270_TOGGLE_BOLD,chooser->saved.bold); |
95 | + | ||
96 | + v3270_set_dynamic_font_spacing(terminal,chooser->saved.dynamic); | ||
97 | + | ||
93 | } | 98 | } |
94 | 99 | ||
95 | static void load(GtkWidget *widget, GtkWidget *terminal) | 100 | static void load(GtkWidget *widget, GtkWidget *terminal) |
@@ -104,6 +109,7 @@ | @@ -104,6 +109,7 @@ | ||
104 | 109 | ||
105 | chooser->saved.family = g_strdup(v3270_get_font_family(terminal)); | 110 | chooser->saved.family = g_strdup(v3270_get_font_family(terminal)); |
106 | chooser->saved.bold = v3270_get_toggle(terminal,LIB3270_TOGGLE_BOLD); | 111 | chooser->saved.bold = v3270_get_toggle(terminal,LIB3270_TOGGLE_BOLD); |
112 | + chooser->saved.dynamic = v3270_get_dynamic_font_spacing(terminal); | ||
107 | 113 | ||
108 | GtkTreeIter active; | 114 | GtkTreeIter active; |
109 | gtk_tree_view_set_model( | 115 | gtk_tree_view_set_model( |
@@ -121,6 +127,7 @@ | @@ -121,6 +127,7 @@ | ||
121 | ); | 127 | ); |
122 | 128 | ||
123 | gtk_toggle_button_set_active(chooser->bold,chooser->saved.bold); | 129 | gtk_toggle_button_set_active(chooser->bold,chooser->saved.bold); |
130 | + gtk_toggle_button_set_active(chooser->dynamic,chooser->saved.dynamic); | ||
124 | 131 | ||
125 | gtk_widget_queue_draw(chooser->preview); | 132 | gtk_widget_queue_draw(chooser->preview); |
126 | } | 133 | } |
@@ -253,6 +260,12 @@ static void bold_toggled(GtkToggleButton *togglebutton, V3270FontChooserWidget * | @@ -253,6 +260,12 @@ static void bold_toggled(GtkToggleButton *togglebutton, V3270FontChooserWidget * | ||
253 | 260 | ||
254 | } | 261 | } |
255 | 262 | ||
263 | +static void dynamic_spacing_toggled(GtkToggleButton *togglebutton, V3270FontChooserWidget *widget) | ||
264 | +{ | ||
265 | + v3270_set_dynamic_font_spacing(widget->parent.terminal,gtk_toggle_button_get_active(togglebutton)); | ||
266 | +} | ||
267 | + | ||
268 | + | ||
256 | static void V3270FontChooserWidget_init(V3270FontChooserWidget *widget) | 269 | static void V3270FontChooserWidget_init(V3270FontChooserWidget *widget) |
257 | { | 270 | { |
258 | widget->font.weight = CAIRO_FONT_WEIGHT_NORMAL; | 271 | widget->font.weight = CAIRO_FONT_WEIGHT_NORMAL; |
@@ -313,10 +326,18 @@ static void V3270FontChooserWidget_init(V3270FontChooserWidget *widget) | @@ -313,10 +326,18 @@ static void V3270FontChooserWidget_init(V3270FontChooserWidget *widget) | ||
313 | // Add font-weight button | 326 | // Add font-weight button |
314 | { | 327 | { |
315 | widget->bold = GTK_TOGGLE_BUTTON(gtk_check_button_new_with_label(_("Bold"))); | 328 | widget->bold = GTK_TOGGLE_BUTTON(gtk_check_button_new_with_label(_("Bold"))); |
316 | - gtk_grid_attach(GTK_GRID(widget),GTK_WIDGET(widget->bold),1,3,5,1); | 329 | + gtk_grid_attach(GTK_GRID(widget),GTK_WIDGET(widget->bold),1,3,1,1); |
317 | g_signal_connect(G_OBJECT(widget->bold),"toggled",G_CALLBACK(bold_toggled),widget); | 330 | g_signal_connect(G_OBJECT(widget->bold),"toggled",G_CALLBACK(bold_toggled),widget); |
318 | } | 331 | } |
319 | 332 | ||
333 | + // Add dynamic font spacing button | ||
334 | + { | ||
335 | + widget->dynamic = GTK_TOGGLE_BUTTON(gtk_check_button_new_with_label(_("Dynamic font spacing"))); | ||
336 | + gtk_grid_attach(GTK_GRID(widget),GTK_WIDGET(widget->dynamic),2,3,1,1); | ||
337 | + g_signal_connect(G_OBJECT(widget->dynamic),"toggled",G_CALLBACK(dynamic_spacing_toggled),widget); | ||
338 | + } | ||
339 | + | ||
340 | + | ||
320 | gtk_widget_show_all(GTK_WIDGET(widget)); | 341 | gtk_widget_show_all(GTK_WIDGET(widget)); |
321 | 342 | ||
322 | } | 343 | } |
src/testprogram/toolbar.c
@@ -49,11 +49,14 @@ | @@ -49,11 +49,14 @@ | ||
49 | v3270_print(terminal,NULL); | 49 | v3270_print(terminal,NULL); |
50 | } | 50 | } |
51 | 51 | ||
52 | + /* | ||
52 | static void host_clicked(GtkButton G_GNUC_UNUSED(*button), GtkWidget *terminal) | 53 | static void host_clicked(GtkButton G_GNUC_UNUSED(*button), GtkWidget *terminal) |
53 | { | 54 | { |
54 | v3270_select_host(terminal); | 55 | v3270_select_host(terminal); |
55 | } | 56 | } |
57 | + */ | ||
56 | 58 | ||
59 | + /* | ||
57 | static void font_clicked(GtkButton G_GNUC_UNUSED(*button), GtkWidget *terminal) | 60 | static void font_clicked(GtkButton G_GNUC_UNUSED(*button), GtkWidget *terminal) |
58 | { | 61 | { |
59 | v3270_settings_popup_dialog( | 62 | v3270_settings_popup_dialog( |
@@ -63,6 +66,7 @@ | @@ -63,6 +66,7 @@ | ||
63 | ); | 66 | ); |
64 | 67 | ||
65 | } | 68 | } |
69 | + */ | ||
66 | 70 | ||
67 | static void preferences_clicked(GtkButton G_GNUC_UNUSED(*button), GtkWidget *terminal) | 71 | static void preferences_clicked(GtkButton G_GNUC_UNUSED(*button), GtkWidget *terminal) |
68 | { | 72 | { |