aboutsummaryrefslogtreecommitdiff
path: root/src/prefs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/prefs.c')
-rw-r--r--src/prefs.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/prefs.c b/src/prefs.c
index 759a1564..444d3ae8 100644
--- a/src/prefs.c
+++ b/src/prefs.c
@@ -836,3 +836,43 @@ void prefs_set_spinbtn(PrefParam *pparam)
pparam->type);
}
}
+
+void prefs_set_data_from_fontbtn(PrefParam *pparam)
+{
+ gchar **str;
+ const gchar *font_str;
+
+ g_return_if_fail(*pparam->widget != NULL);
+
+ font_str = gtk_font_button_get_font_name
+ (GTK_FONT_BUTTON(*pparam->widget));
+
+ switch (pparam->type) {
+ case P_STRING:
+ str = (gchar **)pparam->data;
+ g_free(*str);
+ *str = font_str[0] ? g_strdup(font_str) : NULL;
+ break;
+ default:
+ g_warning("Invalid PrefType for GtkFontButton widget: %d\n",
+ pparam->type);
+ }
+}
+
+void prefs_set_fontbtn(PrefParam *pparam)
+{
+ gchar **str;
+
+ g_return_if_fail(*pparam->widget != NULL);
+
+ switch (pparam->type) {
+ case P_STRING:
+ str = (gchar **)pparam->data;
+ gtk_font_button_set_font_name(GTK_FONT_BUTTON(*pparam->widget),
+ *str ? *str : "");
+ break;
+ default:
+ g_warning("Invalid PrefType for GtkFontButton widget: %d\n",
+ pparam->type);
+ }
+}