diff options
| author | Jan Djärv | 2012-08-11 10:54:35 +0200 |
|---|---|---|
| committer | Jan Djärv | 2012-08-11 10:54:35 +0200 |
| commit | 32bcadb4763c2b57a6587e0daf95c421d5391526 (patch) | |
| tree | 04670db788cd9f80b245edf77896d6cb906539b9 /src | |
| parent | 9ff9402d3aa4278f34ffff71cc4b89ba7878e3ab (diff) | |
| download | emacs-32bcadb4763c2b57a6587e0daf95c421d5391526.tar.gz emacs-32bcadb4763c2b57a6587e0daf95c421d5391526.zip | |
Use GtkFontChooser on Gtk+ 3.2 and up.
* src/gtkutil.c (gtk_font_chooser_dialog_new, GTK_FONT_CHOOSER)
(gtk_font_chooser_set_font, gtk_font_chooser_get_font): Define
for Gtk+ versions less than 3.2.
(xg_get_font_name): Use those functions/macros here.
Reported by Frans Oilinki <moilinki@gmail.com>.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 8 | ||||
| -rw-r--r-- | src/gtkutil.c | 22 |
2 files changed, 25 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 0fc90a14825..b60ab6ec56f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2012-08-11 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * gtkutil.c (gtk_font_chooser_dialog_new, GTK_FONT_CHOOSER) | ||
| 4 | (gtk_font_chooser_set_font, gtk_font_chooser_get_font): Define | ||
| 5 | for Gtk+ versions less than 3.2. | ||
| 6 | (xg_get_font_name): Use those functions/macros here. | ||
| 7 | Reported by Frans Oilinki <moilinki@gmail.com>. | ||
| 8 | |||
| 1 | 2012-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 9 | 2012-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
| 2 | 10 | ||
| 3 | * unexmacosx.c (copy_data_segment): Copy initialized data in | 11 | * unexmacosx.c (copy_data_segment): Copy initialized data in |
diff --git a/src/gtkutil.c b/src/gtkutil.c index 4879479201a..dec4ee079e2 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c | |||
| @@ -75,6 +75,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 75 | #define remove_submenu(w) gtk_menu_item_remove_submenu ((w)) | 75 | #define remove_submenu(w) gtk_menu_item_remove_submenu ((w)) |
| 76 | #endif | 76 | #endif |
| 77 | 77 | ||
| 78 | #if GTK_MAJOR_VERSION < 3 || \ | ||
| 79 | (GTK_MAJOR_VERSION == 3 && GTK_MINOR_VERSION < 2) | ||
| 80 | #define gtk_font_chooser_dialog_new(x, y) \ | ||
| 81 | gtk_font_selection_dialog_new (x) | ||
| 82 | #undef GTK_FONT_CHOOSER | ||
| 83 | #define GTK_FONT_CHOOSER(x) GTK_FONT_SELECTION_DIALOG (x) | ||
| 84 | #define gtk_font_chooser_set_font(x, y) \ | ||
| 85 | gtk_font_selection_dialog_set_font_name (x, y) | ||
| 86 | #define gtk_font_chooser_get_font(x) \ | ||
| 87 | gtk_font_selection_dialog_get_font_name (x) | ||
| 88 | #endif | ||
| 89 | |||
| 78 | #ifndef HAVE_GTK3 | 90 | #ifndef HAVE_GTK3 |
| 79 | #ifdef USE_GTK_TOOLTIP | 91 | #ifdef USE_GTK_TOOLTIP |
| 80 | #define gdk_window_get_screen(w) gdk_drawable_get_screen (w) | 92 | #define gdk_window_get_screen(w) gdk_drawable_get_screen (w) |
| @@ -2000,12 +2012,13 @@ xg_get_font_name (FRAME_PTR f, const char *default_name) | |||
| 2000 | sigblock (sigmask (__SIGRTMIN)); | 2012 | sigblock (sigmask (__SIGRTMIN)); |
| 2001 | #endif /* HAVE_PTHREAD */ | 2013 | #endif /* HAVE_PTHREAD */ |
| 2002 | 2014 | ||
| 2003 | w = gtk_font_selection_dialog_new ("Pick a font"); | 2015 | w = gtk_font_chooser_dialog_new |
| 2016 | ("Pick a font", GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f))); | ||
| 2017 | |||
| 2004 | if (!default_name) | 2018 | if (!default_name) |
| 2005 | default_name = "Monospace 10"; | 2019 | default_name = "Monospace 10"; |
| 2006 | gtk_font_selection_dialog_set_font_name (GTK_FONT_SELECTION_DIALOG (w), | ||
| 2007 | default_name); | ||
| 2008 | 2020 | ||
| 2021 | gtk_font_chooser_set_font (GTK_FONT_CHOOSER (w), default_name); | ||
| 2009 | gtk_widget_set_name (w, "emacs-fontdialog"); | 2022 | gtk_widget_set_name (w, "emacs-fontdialog"); |
| 2010 | 2023 | ||
| 2011 | done = xg_dialog_run (f, w); | 2024 | done = xg_dialog_run (f, w); |
| @@ -2015,8 +2028,7 @@ xg_get_font_name (FRAME_PTR f, const char *default_name) | |||
| 2015 | #endif | 2028 | #endif |
| 2016 | 2029 | ||
| 2017 | if (done == GTK_RESPONSE_OK) | 2030 | if (done == GTK_RESPONSE_OK) |
| 2018 | fontname = gtk_font_selection_dialog_get_font_name | 2031 | fontname = gtk_font_chooser_get_font (GTK_FONT_CHOOSER (w)); |
| 2019 | (GTK_FONT_SELECTION_DIALOG (w)); | ||
| 2020 | 2032 | ||
| 2021 | gtk_widget_destroy (w); | 2033 | gtk_widget_destroy (w); |
| 2022 | return fontname; | 2034 | return fontname; |