1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
// Take a look at the license at the top of the repository in the LICENSE file.
use crate::{AttrType, FontDescription};
use glib::translate::*;
define_attribute_struct!(AttrFontDesc, ffi::PangoAttrFontDesc, &[AttrType::FontDesc]);
impl AttrFontDesc {
/// Create a new font description attribute.
///
/// This attribute allows setting family, style, weight, variant,
/// stretch, and size simultaneously.
/// ## `desc`
/// the font description
///
/// # Returns
///
/// the newly allocated
/// [`Attribute`][crate::Attribute], which should be freed with
/// `Pango::Attribute::destroy()`
#[doc(alias = "pango_attr_font_desc_new")]
pub fn new(desc: &FontDescription) -> Self {
unsafe { from_glib_full(ffi::pango_attr_font_desc_new(desc.to_glib_none().0)) }
}
pub fn desc(&self) -> FontDescription {
unsafe { from_glib_none(self.inner.desc) }
}
}