gtk4/auto/
symbolic_paintable.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5use crate::ffi;
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9    #[doc(alias = "GtkSymbolicPaintable")]
10    pub struct SymbolicPaintable(Interface<ffi::GtkSymbolicPaintable, ffi::GtkSymbolicPaintableInterface>) @requires gdk::Paintable;
11
12    match fn {
13        type_ => || ffi::gtk_symbolic_paintable_get_type(),
14    }
15}
16
17impl SymbolicPaintable {
18    pub const NONE: Option<&'static SymbolicPaintable> = None;
19}
20
21pub trait SymbolicPaintableExt: IsA<SymbolicPaintable> + 'static {
22    #[doc(alias = "gtk_symbolic_paintable_snapshot_symbolic")]
23    fn snapshot_symbolic(
24        &self,
25        snapshot: &impl IsA<gdk::Snapshot>,
26        width: f64,
27        height: f64,
28        colors: &[gdk::RGBA],
29    ) {
30        let n_colors = colors.len() as _;
31        unsafe {
32            ffi::gtk_symbolic_paintable_snapshot_symbolic(
33                self.as_ref().to_glib_none().0,
34                snapshot.as_ref().to_glib_none().0,
35                width,
36                height,
37                colors.to_glib_none().0,
38                n_colors,
39            );
40        }
41    }
42}
43
44impl<O: IsA<SymbolicPaintable>> SymbolicPaintableExt for O {}