gtkmm 3.24.9

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Symbols | List of all members
Gtk::FontChooser Class Reference

An interface implemented by widgets displaying fonts. More...

`#include <gtkmm/fontchooser.h>`

Inheritance diagram for Gtk::FontChooser:
[legend]

## Public Types
typedef sigc::slot< bool, const Glib::RefPtr< const Pango::FontFamily > &, const Glib::RefPtr< const Pango::FontFace > & > | SlotFontFilter
| Font filter callback.
Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify | func_destroy_notify

## Public Member Functions
| FontChooser (FontChooser &&src) noexcept
FontChooser & | operator= (FontChooser &&src) noexcept
| ~FontChooser () noexcept override
GtkFontChooser * | gobj ()
| Provides access to the underlying C GObject.
const GtkFontChooser * | gobj () const
| Provides access to the underlying C GObject.
Glib::RefPtr< Pango::FontFamily > | get_font_family ()
| Gets the Pango::FontFamily representing the selected font family.
Glib::RefPtr< const Pango::FontFamily > | get_font_family () const
| Gets the Pango::FontFamily representing the selected font family.
Glib::RefPtr< Pango::FontFace > | get_font_face ()
| Gets the Pango::FontFace representing the selected font group details (i.e. family, slant, weight, width, etc).
Glib::RefPtr< const Pango::FontFace > | get_font_face () const
| Gets the Pango::FontFace representing the selected font group details (i.e. family, slant, weight, width, etc).
int | get_font_size () const
| The selected font size.
Pango::FontDescription | get_font_desc () const
| Gets the currently-selected font.
void | set_font_desc (const Pango::FontDescription &font_desc)
| Sets the currently-selected font from font_desc.
Glib::ustring | get_font () const
| Gets the currently-selected font name.
void | set_font (const Glib::ustring &fontname)
| Sets the currently-selected font.
Glib::ustring | get_preview_text () const
| Gets the text displayed in the preview area.
void | set_preview_text (const Glib::ustring &text)
| Sets the text displayed in the preview area.
bool | get_show_preview_entry () const
| Returns whether the preview entry is shown or not.
void | set_show_preview_entry (bool show_preview_entry=true)
| Shows or hides the editable preview entry.
void | set_filter_func (const SlotFontFilter & slot)
| Adds a filter function that decides which fonts to display in the font chooser.
void | set_font_map (const Glib::RefPtr< Pango::FontMap > &fontmap)
| Sets a custom font map to use for this font chooser widget.
Glib::RefPtr< Pango::FontMap > | get_font_map ()
| Gets the custom font map of this font chooser widget, or `nullptr` if it does not have one.
Glib::RefPtr< const Pango::FontMap > | get_font_map () const
| Gets the custom font map of this font chooser widget, or `nullptr` if it does not have one.
Glib::SignalProxy< void, const Glib::ustring & > | signal_font_activated ()
Glib::PropertyProxy< Glib::ustring > | property_font ()
| The font description as a string, e.g. "Sans Italic 12".
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_font () const
| The font description as a string, e.g. "Sans Italic 12".
Glib::PropertyProxy< Pango::FontDescription > | property_font_desc ()
| The font description as a Pango::FontDescription.
Glib::PropertyProxy_ReadOnly< Pango::FontDescription > | property_font_desc () const
| The font description as a Pango::FontDescription.
Glib::PropertyProxy< Glib::ustring > | property_preview_text ()
| The string with which to preview the font.
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_preview_text () const
| The string with which to preview the font.
Glib::PropertyProxy< bool > | property_show_preview_entry ()
| Whether to show an entry to change the preview text.
Glib::PropertyProxy_ReadOnly< bool > | property_show_preview_entry () const
| Whether to show an entry to change the preview text.
Public Member Functions inherited from Glib::Interface
| Interface ()
| Interface (Interface &&src) noexcept
Interface & | operator= (Interface &&src) noexcept
| Interface (const Glib::Interface_Class &interface_class)
| Interface (GObject *castitem)
| ~Interface () noexcept override
| Interface (const Interface &)=delete
Interface & | operator= (const Interface &)=delete
GObject * | gobj ()
const GObject * | gobj () const
Public Member Functions inherited from Glib::ObjectBase
| ObjectBase (const ObjectBase &)=delete
ObjectBase & | operator= (const ObjectBase &)=delete
void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
void | set_property (const Glib::ustring &property_name, const PropertyType &value)
void | get_property (const Glib::ustring &property_name, PropertyType &value) const
void | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot)
void | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void > &&slot)
sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot)
sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, sigc::slot< void > &&slot)
void | freeze_notify ()
void | thaw_notify ()
virtual void | reference () const
virtual void | unreference () const
GObject * | gobj ()
const GObject * | gobj () const
GObject * | gobj_copy () const
Public Member Functions inherited from sigc::trackable
| trackable () noexcept
| trackable (const trackable &src) noexcept
| trackable (trackable &&src)
| ~trackable ()
void | add_destroy_notify_callback (void *data, func_destroy_notify func) const
void | notify_callbacks ()
trackable & | operator= (const trackable &src)
trackable & | operator= (trackable &&src)
void | remove_destroy_notify_callback (void *data) const

## Static Public Member Functions
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system.

## Protected Member Functions
| FontChooser ()
| You should derive from this class to use it.
Protected Member Functions inherited from Glib::ObjectBase
| ObjectBase ()
| ObjectBase (const char *custom_type_name)
| ObjectBase (const std::type_info &custom_type_info)
| ObjectBase (ObjectBase &&src) noexcept
ObjectBase & | operator= (ObjectBase &&src) noexcept
virtual | ~ObjectBase () noexcept=0
void | initialize (GObject *castitem)
void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)

## Related Symbols
(Note that these are not member symbols.)
Glib::RefPtr< Gtk::FontChooser > | wrap (GtkFontChooser *object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

An interface implemented by widgets displaying fonts.

FontChooser widgets list the available fonts, styles and sizes, allowing the user to select a font.

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

To get the selected font use get_font_name().

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

Since gtkmm 3.2

## Member Typedef Documentation

## ◆ SlotFontFilter

typedef sigc::slot<bool, const Glib::RefPtr<const Pango::FontFamily>&, const Glib::RefPtr<const Pango::FontFace>&> Gtk::FontChooser::SlotFontFilter

Font filter callback.

For instance,

bool on_font_fitler(const Glib::RefPtr<const Pango::FontFamily>& font_family, const Glib::RefPtr<const Pango::FontFace>& font_face);
Glib::RefPtr
Gtk::make_managed
T * make_managed(T_Args &&... args)
Create a Gtk::Object such as a widget and Gtk::manage() it in a single step.
Definition object.h:63

Parameters

  font_family | A Pango FontFamily.
  font_face | A Font Face belonging to the font_family.

Returns
  true if the font should be displayed.

This is used for deciding what fonts should be shown in a FontChooser. See set_filter_func().

Since gtkmm 3.4

## Constructor & Destructor Documentation

## ◆ FontChooser() [1/2]

Gtk::FontChooser::FontChooser | ( |  | ) |
| protected

You should derive from this class to use it.

## ◆ FontChooser() [2/2]

Gtk::FontChooser::FontChooser | ( | FontChooser && | src | ) |
| noexcept

## ◆ ~FontChooser()

Gtk::FontChooser::~FontChooser | ( |  | ) |
| override noexcept

## Member Function Documentation

## ◆ add_interface()

static void Gtk::FontChooser::add_interface | ( | GType | gtype_implementer | ) |
| static

## ◆ get_font()

Glib::ustring Gtk::FontChooser::get_font | ( |  | ) | const

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_font_description_equal() if you want to compare two font descriptions.

Since gtkmm 3.2

Returns
  A string with the name of the current font, or `nullptr` if no font is selected.

## ◆ get_font_desc()

Pango::FontDescription Gtk::FontChooser::get_font_desc | ( |  | ) | const

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_font_description_equal() if you want to compare two font descriptions.

Since gtkmm 3.2

Returns
  A Pango::FontDescription for the current font, or `nullptr` if no font is selected.

## ◆ get_font_face() [1/2]

Glib::RefPtr< Pango::FontFace > Gtk::FontChooser::get_font_face | ( |  | ) |

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 `nullptr`.

Since gtkmm 3.2

Returns
  A Pango::FontFace representing the selected font group details, or `nullptr`. The returned object is owned by fontchooser and must not be modified or freed.

## ◆ get_font_face() [2/2]

Glib::RefPtr< const Pango::FontFace > Gtk::FontChooser::get_font_face | ( |  | ) | const

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 `nullptr`.

Since gtkmm 3.2

Returns
  A Pango::FontFace representing the selected font group details, or `nullptr`. The returned object is owned by fontchooser and must not be modified or freed.

## ◆ get_font_family() [1/2]

Glib::RefPtr< Pango::FontFamily > Gtk::FontChooser::get_font_family | ( |  | ) |

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 `nullptr`.

Since gtkmm 3.2

Returns
  A Pango::FontFamily representing the selected font family, or `nullptr`. The returned object is owned by fontchooser and must not be modified or freed.

## ◆ get_font_family() [2/2]

Glib::RefPtr< const Pango::FontFamily > Gtk::FontChooser::get_font_family | ( |  | ) | const

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 `nullptr`.

Since gtkmm 3.2

Returns
  A Pango::FontFamily representing the selected font family, or `nullptr`. The returned object is owned by fontchooser and must not be modified or freed.

## ◆ get_font_map() [1/2]

Glib::RefPtr< Pango::FontMap > Gtk::FontChooser::get_font_map | ( |  | ) |

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

Since gtkmm 3.18

Returns
  A Pango::FontMap, or `nullptr`.

## ◆ get_font_map() [2/2]

Glib::RefPtr< const Pango::FontMap > Gtk::FontChooser::get_font_map | ( |  | ) | const

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

Since gtkmm 3.18

Returns
  A Pango::FontMap, or `nullptr`.

## ◆ get_font_size()

int Gtk::FontChooser::get_font_size | ( |  | ) | const

The selected font size.

Since gtkmm 3.2

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

## ◆ get_preview_text()

Glib::ustring Gtk::FontChooser::get_preview_text | ( |  | ) | const

Gets the text displayed in the preview area.

Since gtkmm 3.2

Returns
  The text displayed in the preview area.

## ◆ get_show_preview_entry()

bool Gtk::FontChooser::get_show_preview_entry | ( |  | ) | const

Returns whether the preview entry is shown or not.

Since gtkmm 3.2

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

## ◆ get_type()

static GType Gtk::FontChooser::get_type | ( |  | ) |
| static

Get the GType for this class, for use with the underlying GObject type system.

## ◆ gobj() [1/2]

GtkFontChooser * Gtk::FontChooser::gobj | ( |  | ) |
| inline

Provides access to the underlying C GObject.

## ◆ gobj() [2/2]

const GtkFontChooser * Gtk::FontChooser::gobj | ( |  | ) | const
| inline

Provides access to the underlying C GObject.

## ◆ operator=()

FontChooser & Gtk::FontChooser::operator= | ( | FontChooser && | src | ) |
| noexcept

## ◆ property_font() [1/2]

Glib::PropertyProxy< Glib::ustring > Gtk::FontChooser::property_font | ( |  | ) |

The font description as a string, e.g. "Sans Italic 12".

Default value: "Sans 10"

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_font() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::FontChooser::property_font | ( |  | ) | const

The font description as a string, e.g. "Sans Italic 12".

Default value: "Sans 10"

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_font_desc() [1/2]

Glib::PropertyProxy< Pango::FontDescription > Gtk::FontChooser::property_font_desc | ( |  | ) |

The font description as a Pango::FontDescription.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_font_desc() [2/2]

Glib::PropertyProxy_ReadOnly< Pango::FontDescription > Gtk::FontChooser::property_font_desc | ( |  | ) | const

The font description as a Pango::FontDescription.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_preview_text() [1/2]

Glib::PropertyProxy< Glib::ustring > Gtk::FontChooser::property_preview_text | ( |  | ) |

The string with which to preview the font.

Default value: "The quick brown fox jumps over the lazy dog."

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_preview_text() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::FontChooser::property_preview_text | ( |  | ) | const

The string with which to preview the font.

Default value: "The quick brown fox jumps over the lazy dog."

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_show_preview_entry() [1/2]

Glib::PropertyProxy< bool > Gtk::FontChooser::property_show_preview_entry | ( |  | ) |

Whether to show an entry to change the preview text.

Default value: `true`

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_show_preview_entry() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::FontChooser::property_show_preview_entry | ( |  | ) | const

Whether to show an entry to change the preview text.

Default value: `true`

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ set_filter_func()

void Gtk::FontChooser::set_filter_func | ( | const SlotFontFilter & | slot | ) |

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

Parameters

  slot | A callback, to be called for each font.

Since gtkmm 3.4

## ◆ set_font()

void Gtk::FontChooser::set_font | ( | const Glib::ustring & | fontname | ) |

Sets the currently-selected font.

Since gtkmm 3.2

Parameters

  fontname | A font name like “Helvetica 12” or “Times Bold 18”.

## ◆ set_font_desc()

void Gtk::FontChooser::set_font_desc | ( | const Pango::FontDescription & | font_desc | ) |

Sets the currently-selected font from font_desc.

Since gtkmm 3.2

Parameters

  font_desc | A Pango::FontDescription.

## ◆ set_font_map()

void Gtk::FontChooser::set_font_map | ( | const Glib::RefPtr< Pango::FontMap > & | fontmap | ) |

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.

[C example ellipted]

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:

[C example ellipted]

Since gtkmm 3.18

Parameters

  fontmap | A Pango::FontMap.

## ◆ set_preview_text()

void Gtk::FontChooser::set_preview_text | ( | const Glib::ustring & | text | ) |

Sets the text displayed in the preview area.

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

Since gtkmm 3.2

Parameters

  text | The text to display in the preview area.

## ◆ set_show_preview_entry()

void Gtk::FontChooser::set_show_preview_entry | ( | bool | show_preview_entry = true | ) |

Shows or hides the editable preview entry.

Since gtkmm 3.2

Parameters

  show_preview_entry | Whether to show the editable preview entry or not.

## ◆ signal_font_activated()

Glib::SignalProxy< void, const Glib::ustring & > Gtk::FontChooser::signal_font_activated | ( |  | ) |

Slot Prototype:
  `void on_my_font_activated(const Glib::ustring& fontname)`

Flags: Run First

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.

Parameters

  fontname | The font name.

## Friends And Related Symbol Documentation

## ◆ wrap()

Glib::RefPtr< Gtk::FontChooser > wrap | ( | GtkFontChooser * | object,
|  | bool | take_copy = false )
| related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.