aboutsummaryrefslogtreecommitdiff
path: root/src/libui_sdl/libui/unix/fontbutton.c
diff options
context:
space:
mode:
authorArisotura <thetotalworm@gmail.com>2020-05-30 03:19:20 +0200
committerArisotura <thetotalworm@gmail.com>2020-05-30 03:19:20 +0200
commitb62d90cbe4c5232f0fe8604bd5e11f8eccd48ba1 (patch)
treebfd0a5e6f30fc382170ec9402adea32f12ebc342 /src/libui_sdl/libui/unix/fontbutton.c
parent82302c9bf48598f889d0942340c224852c1378c5 (diff)
parent993048dd241b59747a7b30edfc861eedd4c005c9 (diff)
Merge remote-tracking branch 'remotes/origin/master' into melonDSi
Diffstat (limited to 'src/libui_sdl/libui/unix/fontbutton.c')
-rw-r--r--src/libui_sdl/libui/unix/fontbutton.c70
1 files changed, 0 insertions, 70 deletions
diff --git a/src/libui_sdl/libui/unix/fontbutton.c b/src/libui_sdl/libui/unix/fontbutton.c
deleted file mode 100644
index f8047e0..0000000
--- a/src/libui_sdl/libui/unix/fontbutton.c
+++ /dev/null
@@ -1,70 +0,0 @@
-// 14 april 2016
-#include "uipriv_unix.h"
-
-struct uiFontButton {
- uiUnixControl c;
- GtkWidget *widget;
- GtkButton *button;
- GtkFontButton *fb;
- GtkFontChooser *fc;
- void (*onChanged)(uiFontButton *, void *);
- void *onChangedData;
-};
-
-uiUnixControlAllDefaults(uiFontButton)
-
-// TODO NOTE no need to inhibit the signal; font-set is documented as only being sent when the user changes the font
-static void onFontSet(GtkFontButton *button, gpointer data)
-{
- uiFontButton *b = uiFontButton(data);
-
- (*(b->onChanged))(b, b->onChangedData);
-}
-
-static void defaultOnChanged(uiFontButton *b, void *data)
-{
- // do nothing
-}
-
-uiDrawTextFont *uiFontButtonFont(uiFontButton *b)
-{
- PangoFont *f;
- PangoFontDescription *desc;
-
- desc = gtk_font_chooser_get_font_desc(b->fc);
- f = pangoDescToPangoFont(desc);
- // desc is transfer-full and thus is a copy
- pango_font_description_free(desc);
- return mkTextFont(f, FALSE); // we hold the initial reference; no need to ref
-}
-
-void uiFontButtonOnChanged(uiFontButton *b, void (*f)(uiFontButton *, void *), void *data)
-{
- b->onChanged = f;
- b->onChangedData = data;
-}
-
-uiFontButton *uiNewFontButton(void)
-{
- uiFontButton *b;
-
- uiUnixNewControl(uiFontButton, b);
-
- b->widget = gtk_font_button_new();
- b->button = GTK_BUTTON(b->widget);
- b->fb = GTK_FONT_BUTTON(b->widget);
- b->fc = GTK_FONT_CHOOSER(b->widget);
-
- // match behavior on other platforms
- gtk_font_button_set_show_style(b->fb, TRUE);
- gtk_font_button_set_show_size(b->fb, TRUE);
- gtk_font_button_set_use_font(b->fb, FALSE);
- gtk_font_button_set_use_size(b->fb, FALSE);
- // other customizations
- gtk_font_chooser_set_show_preview_entry(b->fc, TRUE);
-
- g_signal_connect(b->widget, "font-set", G_CALLBACK(onFontSet), b);
- uiFontButtonOnChanged(b, defaultOnChanged, NULL);
-
- return b;
-}