Trait gtk4::prelude::FontChooserExt[][src]

pub trait FontChooserExt: 'static {
Show 27 methods fn font(&self) -> Option<GString>;
fn font_desc(&self) -> Option<FontDescription>;
fn font_face(&self) -> Option<FontFace>;
fn font_family(&self) -> Option<FontFamily>;
fn font_features(&self) -> Option<GString>;
fn font_map(&self) -> Option<FontMap>;
fn font_size(&self) -> i32;
fn language(&self) -> Option<GString>;
fn level(&self) -> FontChooserLevel;
fn preview_text(&self) -> Option<GString>;
fn shows_preview_entry(&self) -> bool;
fn set_filter_func<P: Fn(&FontFamily, &FontFace) -> bool + 'static>(
        &self,
        filter: P
    );
fn set_font(&self, fontname: &str);
fn set_font_desc(&self, font_desc: &FontDescription);
fn set_font_map(&self, fontmap: Option<&impl IsA<FontMap>>);
fn set_language(&self, language: &str);
fn set_level(&self, level: FontChooserLevel);
fn set_preview_text(&self, text: &str);
fn set_show_preview_entry(&self, show_preview_entry: bool);
fn connect_font_activated<F: Fn(&Self, &str) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_font_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_font_desc_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_font_features_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_language_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_level_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_preview_text_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_show_preview_entry_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
}
Expand description

Required methods

Gets the currently-selected font name.

Note that this can be a different string than what you set with set_font(), as the font chooser 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::FontDescription::equal() if you want to compare two font descriptions.

Returns

A string with the name of the current font

Gets the currently-selected font.

Note that this can be a different string than what you set with set_font(), as the font chooser 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::FontDescription::equal() if you want to compare two font descriptions.

Returns

A pango::FontDescription for the current font

Gets the pango::FontFace representing the selected font group details (i.e. family, slant, weight, width, etc).

If the selected font is not installed, returns None.

Returns

A pango::FontFace representing the selected font group details

Gets the pango::FontFamily representing the selected font family.

Font families are a collection of font faces.

If the selected font is not installed, returns None.

Returns

A pango::FontFamily representing the selected font family

Gets the currently-selected font features.

Returns

the currently selected font features

Gets the custom font map of this font chooser widget, or None if it does not have one.

Returns

a pango::FontMap

The selected font size.

Returns

A n integer representing the selected font size, or -1 if no font size is selected.

Gets the language that is used for font features.

Returns

the currently selected language

Returns the current level of granularity for selecting fonts.

Returns

the current granularity level

Gets the text displayed in the preview area.

Returns

the text displayed in the preview area

fn shows_preview_entry(&self) -> bool

Returns whether the preview entry is shown or not.

Returns

true if the preview entry is shown or false if it is hidden.

Adds a filter function that decides which fonts to display in the font chooser.

filter

a GtkFontFilterFunc

Sets the currently-selected font.

fontname

a font name like “Helvetica 12” or “Times Bold 18”

Sets the currently-selected font from @font_desc.

font_desc

a pango::FontDescription

Sets a custom font map to use for this font chooser widget.

A custom font map can be used to present application-specific fonts instead of or in addition to the normal system fonts.

⚠️ The following code is in c ⚠️

FcConfig *config;
PangoFontMap *fontmap;

config = FcInitLoadConfigAndFonts ();
FcConfigAppFontAddFile (config, my_app_font_file);

fontmap = pango_cairo_font_map_new_for_font_type (CAIRO_FONT_TYPE_FT);
pango_fc_font_map_set_config (PANGO_FC_FONT_MAP (fontmap), config);

gtk_font_chooser_set_font_map (font_chooser, fontmap);

Note that other GTK widgets will only be able to use the application-specific font if it is present in the font map they use:

⚠️ The following code is in c ⚠️

context = gtk_widget_get_pango_context (label);
pango_context_set_font_map (context, fontmap);
fontmap

a pango::FontMap

Sets the language to use for font features.

language

a language

Sets the desired level of granularity for selecting fonts.

level

the desired level of granularity

Sets the text displayed in the preview area.

The @text is used to show how the selected font looks.

text

the text to display in the preview area

fn set_show_preview_entry(&self, show_preview_entry: bool)

Shows or hides the editable preview entry.

show_preview_entry

whether to show the editable preview entry or not

Emitted when a font is activated.

This usually happens when the user double clicks an item, or an item is selected and the user presses one of the keys Space, Shift+Space, Return or Enter.

fontname

the font name

fn connect_show_preview_entry_notify<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId

Implementors