libappstream 0.4.0

Rust bindings for appstream
Documentation
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from
// from gir-files (https://github.com/gtk-rs/gir-files.git)
// DO NOT EDIT

use crate::{ffi, FormatStyle, FormatVersion, ValueFlags};
use glib::{prelude::*, translate::*};

glib::wrapper! {
    #[doc(alias = "AsContext")]
    pub struct Context(Object<ffi::AsContext, ffi::AsContextClass>);

    match fn {
        type_ => || ffi::as_context_get_type(),
    }
}

impl Context {
    pub const NONE: Option<&'static Context> = None;

    #[doc(alias = "as_context_new")]
    pub fn new() -> Context {
        assert_initialized_main_thread!();
        unsafe { from_glib_full(ffi::as_context_new()) }
    }
}

impl Default for Context {
    fn default() -> Self {
        Self::new()
    }
}

pub trait ContextExt: IsA<Context> + 'static {
    #[doc(alias = "as_context_get_filename")]
    #[doc(alias = "get_filename")]
    fn filename(&self) -> Option<glib::GString> {
        unsafe { from_glib_none(ffi::as_context_get_filename(self.as_ref().to_glib_none().0)) }
    }

    #[doc(alias = "as_context_get_format_version")]
    #[doc(alias = "get_format_version")]
    fn format_version(&self) -> FormatVersion {
        unsafe {
            from_glib(ffi::as_context_get_format_version(
                self.as_ref().to_glib_none().0,
            ))
        }
    }

    #[doc(alias = "as_context_get_locale")]
    #[doc(alias = "get_locale")]
    fn locale(&self) -> Option<glib::GString> {
        unsafe { from_glib_none(ffi::as_context_get_locale(self.as_ref().to_glib_none().0)) }
    }

    #[doc(alias = "as_context_get_locale_use_all")]
    #[doc(alias = "get_locale_use_all")]
    fn is_locale_use_all(&self) -> bool {
        unsafe {
            from_glib(ffi::as_context_get_locale_use_all(
                self.as_ref().to_glib_none().0,
            ))
        }
    }

    #[doc(alias = "as_context_get_media_baseurl")]
    #[doc(alias = "get_media_baseurl")]
    fn media_baseurl(&self) -> Option<glib::GString> {
        unsafe {
            from_glib_none(ffi::as_context_get_media_baseurl(
                self.as_ref().to_glib_none().0,
            ))
        }
    }

    #[doc(alias = "as_context_get_origin")]
    #[doc(alias = "get_origin")]
    fn origin(&self) -> Option<glib::GString> {
        unsafe { from_glib_none(ffi::as_context_get_origin(self.as_ref().to_glib_none().0)) }
    }

    #[doc(alias = "as_context_get_priority")]
    #[doc(alias = "get_priority")]
    fn priority(&self) -> i32 {
        unsafe { ffi::as_context_get_priority(self.as_ref().to_glib_none().0) }
    }

    #[doc(alias = "as_context_get_style")]
    #[doc(alias = "get_style")]
    fn style(&self) -> FormatStyle {
        unsafe { from_glib(ffi::as_context_get_style(self.as_ref().to_glib_none().0)) }
    }

    #[doc(alias = "as_context_get_value_flags")]
    #[doc(alias = "get_value_flags")]
    fn value_flags(&self) -> ValueFlags {
        unsafe {
            from_glib(ffi::as_context_get_value_flags(
                self.as_ref().to_glib_none().0,
            ))
        }
    }

    #[doc(alias = "as_context_has_media_baseurl")]
    fn has_media_baseurl(&self) -> bool {
        unsafe {
            from_glib(ffi::as_context_has_media_baseurl(
                self.as_ref().to_glib_none().0,
            ))
        }
    }

    #[doc(alias = "as_context_set_filename")]
    fn set_filename(&self, fname: &str) {
        unsafe {
            ffi::as_context_set_filename(self.as_ref().to_glib_none().0, fname.to_glib_none().0);
        }
    }

    #[doc(alias = "as_context_set_format_version")]
    fn set_format_version(&self, ver: FormatVersion) {
        unsafe {
            ffi::as_context_set_format_version(self.as_ref().to_glib_none().0, ver.into_glib());
        }
    }

    #[doc(alias = "as_context_set_locale")]
    fn set_locale(&self, locale: Option<&str>) {
        unsafe {
            ffi::as_context_set_locale(self.as_ref().to_glib_none().0, locale.to_glib_none().0);
        }
    }

    #[doc(alias = "as_context_set_media_baseurl")]
    fn set_media_baseurl(&self, value: &str) {
        unsafe {
            ffi::as_context_set_media_baseurl(
                self.as_ref().to_glib_none().0,
                value.to_glib_none().0,
            );
        }
    }

    #[doc(alias = "as_context_set_origin")]
    fn set_origin(&self, value: &str) {
        unsafe {
            ffi::as_context_set_origin(self.as_ref().to_glib_none().0, value.to_glib_none().0);
        }
    }

    #[doc(alias = "as_context_set_priority")]
    fn set_priority(&self, priority: i32) {
        unsafe {
            ffi::as_context_set_priority(self.as_ref().to_glib_none().0, priority);
        }
    }

    #[doc(alias = "as_context_set_style")]
    fn set_style(&self, style: FormatStyle) {
        unsafe {
            ffi::as_context_set_style(self.as_ref().to_glib_none().0, style.into_glib());
        }
    }

    #[doc(alias = "as_context_set_value_flags")]
    fn set_value_flags(&self, flags: ValueFlags) {
        unsafe {
            ffi::as_context_set_value_flags(self.as_ref().to_glib_none().0, flags.into_glib());
        }
    }
}

impl<O: IsA<Context>> ContextExt for O {}