## GtkFontSelectionDialog

GtkFontSelectionDialog — A dialog box for selecting fonts

## Synopsis

    #include <gtk/gtk.h>

    struct              GtkFontSelectionDialog;
    GtkWidget *         gtk_font_selection_dialog_new       (const gchar *title);
    GdkFont *           gtk_font_selection_dialog_get_font  (GtkFontSelectionDialog *fsd);
    gchar *             gtk_font_selection_dialog_get_font_name
                                                            (GtkFontSelectionDialog *fsd);
    gboolean            gtk_font_selection_dialog_set_font_name
                                                            (GtkFontSelectionDialog *fsd,
                                                             const gchar *fontname);
    const gchar *       gtk_font_selection_dialog_get_preview_text
                                                            (GtkFontSelectionDialog *fsd);
    void                gtk_font_selection_dialog_set_preview_text
                                                            (GtkFontSelectionDialog *fsd,
                                                             const gchar *text);
    GtkWidget *         gtk_font_selection_dialog_get_apply_button
                                                            (GtkFontSelectionDialog *fsd);
    GtkWidget *         gtk_font_selection_dialog_get_cancel_button
                                                            (GtkFontSelectionDialog *fsd);
    GtkWidget *         gtk_font_selection_dialog_get_ok_button
                                                            (GtkFontSelectionDialog *fsd);
    GtkWidget *         gtk_font_selection_dialog_get_font_selection
                                                            (GtkFontSelectionDialog *fsd);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBin
                                     +----GtkWindow
                                           +----GtkDialog
                                                 +----GtkFontSelectionDialog

## Implemented Interfaces

GtkFontSelectionDialog implements AtkImplementorIface and GtkBuildable.

## Description

The GtkFontSelectionDialog widget is a dialog box for selecting a font.

To set the font which is initially selected, use `gtk_font_selection_dialog_set_font_name()`.

To get the selected font use `gtk_font_selection_dialog_get_font_name()`.

To change the text which is shown in the preview area, use `gtk_font_selection_dialog_set_preview_text()`.

### GtkFontSelectionDialog as GtkBuildable

The GtkFontSelectionDialog implementation of the GtkBuildable interface exposes the embedded GtkFontSelection as internal child with the name "font_selection". It also exposes the buttons with the names "ok_button", "cancel_button" and "apply_button".

## Details

### struct GtkFontSelectionDialog

    struct GtkFontSelectionDialog {
      GtkWidget *GSEAL (ok_button);
      GtkWidget *GSEAL (apply_button);
      GtkWidget *GSEAL (cancel_button);
    };

### gtk_font_selection_dialog_new ()

    GtkWidget *         gtk_font_selection_dialog_new       (const gchar *title);

Creates a new GtkFontSelectionDialog.

`title` : | the title of the dialog window
Returns : | a new GtkFontSelectionDialog

### gtk_font_selection_dialog_get_font ()

    GdkFont *           gtk_font_selection_dialog_get_font  (GtkFontSelectionDialog *fsd);

### Warning

`gtk_font_selection_dialog_get_font` has been deprecated since version 2.0 and should not be used in newly-written code. Use `gtk_font_selection_dialog_get_font_name()` instead.

Gets the currently-selected font.

`fsd` : | a GtkFontSelectionDialog
Returns : | the GdkFont from the GtkFontSelection for the currently selected font in the dialog, or `NULL` if no font is selected

### gtk_font_selection_dialog_get_font_name ()

    gchar *             gtk_font_selection_dialog_get_font_name
                                                            (GtkFontSelectionDialog *fsd);

Gets the currently-selected font name.

Note that this can be a different string than what you set with `gtk_font_selection_dialog_set_font_name()`, as the font selection widget may normalize font names and thus return a string with a different structure. For example, "Helvetica Italic Bold 12" could be normalized to "Helvetica Bold Italic 12". Use `pango_font_description_equal()` if you want to compare two font descriptions.

`fsd` : | a GtkFontSelectionDialog
Returns : | A string with the name of the current font, or `NULL` if no font is selected. You must free this string with `g_free()`.

### gtk_font_selection_dialog_set_font_name ()

    gboolean            gtk_font_selection_dialog_set_font_name
                                                            (GtkFontSelectionDialog *fsd,
                                                             const gchar *fontname);

Sets the currently selected font.

`fsd` : | a GtkFontSelectionDialog
`fontname` : | a font name like "Helvetica 12" or "Times Bold 18"
Returns : | `TRUE` if the font selected in `fsd` is now the `fontname` specified, `FALSE` otherwise.

### gtk_font_selection_dialog_get_preview_text ()

    const gchar *       gtk_font_selection_dialog_get_preview_text
                                                            (GtkFontSelectionDialog *fsd);

Gets the text displayed in the preview area.

`fsd` : | a GtkFontSelectionDialog
Returns : | the text displayed in the preview area. This string is owned by the widget and should not be modified or freed

### gtk_font_selection_dialog_set_preview_text ()

    void                gtk_font_selection_dialog_set_preview_text
                                                            (GtkFontSelectionDialog *fsd,
                                                             const gchar *text);

Sets the text displayed in the preview area.

`fsd` : | a GtkFontSelectionDialog
`text` : | the text to display in the preview area

### gtk_font_selection_dialog_get_apply_button ()

    GtkWidget *         gtk_font_selection_dialog_get_apply_button
                                                            (GtkFontSelectionDialog *fsd);

### Warning

`gtk_font_selection_dialog_get_apply_button` has been deprecated since version 2.16 and should not be used in newly-written code. Don't use this function.

Obtains a button. The button doesn't have any function.

`fsd` : | a GtkFontSelectionDialog
Returns : | a GtkWidget

Since 2.14

### gtk_font_selection_dialog_get_cancel_button ()

    GtkWidget *         gtk_font_selection_dialog_get_cancel_button
                                                            (GtkFontSelectionDialog *fsd);

Gets the 'Cancel' button.

`fsd` : | a GtkFontSelectionDialog
Returns : | the GtkWidget used in the dialog for the 'Cancel' button. [transfer none]

Since 2.14

### gtk_font_selection_dialog_get_ok_button ()

    GtkWidget *         gtk_font_selection_dialog_get_ok_button
                                                            (GtkFontSelectionDialog *fsd);

Gets the 'OK' button.

`fsd` : | a GtkFontSelectionDialog
Returns : | the GtkWidget used in the dialog for the 'OK' button. [transfer none]

Since 2.14

### gtk_font_selection_dialog_get_font_selection ()

    GtkWidget *         gtk_font_selection_dialog_get_font_selection
                                                            (GtkFontSelectionDialog *fsd);

Retrieves the GtkFontSelection widget embedded in the dialog.

`fsd` : | a GtkFontSelectionDialog
Returns : | the embedded GtkFontSelection. [transfer none]

Since 2.22

## See Also

GtkFontSelection, GtkDialog | the underlying widget for selecting fonts. the parent class of GtkFontSelectionDialog