Skip to content

Commit 89e9e93

Browse files
committed
gsk: Generate new ComponentTransferNode
1 parent 72c0bd0 commit 89e9e93

File tree

4 files changed

+163
-0
lines changed

4 files changed

+163
-0
lines changed

gsk4/Gir.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ generate = [
2020
"Gsk.ClipNode",
2121
"Gsk.ColorMatrixNode",
2222
"Gsk.ColorNode",
23+
"Gsk.ComponentTransfer",
24+
"Gsk.ComponentTransferNode",
2325
"Gsk.ConicGradientNode",
2426
"Gsk.Corner",
2527
"Gsk.CrossFadeNode",

gsk4/src/auto/component_transfer.rs

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
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+
5+
use crate::ffi;
6+
use glib::translate::*;
7+
8+
glib::wrapper! {
9+
#[derive(Debug, PartialOrd, Ord, Hash)]
10+
pub struct ComponentTransfer(Boxed<ffi::GskComponentTransfer>);
11+
12+
match fn {
13+
copy => |ptr| ffi::gsk_component_transfer_copy(ptr),
14+
free => |ptr| ffi::gsk_component_transfer_free(ptr),
15+
type_ => || ffi::gsk_component_transfer_get_type(),
16+
}
17+
}
18+
19+
impl ComponentTransfer {
20+
#[doc(alias = "gsk_component_transfer_new_discrete")]
21+
pub fn new_discrete(n: u32, values: f32) -> ComponentTransfer {
22+
assert_initialized_main_thread!();
23+
unsafe { from_glib_full(ffi::gsk_component_transfer_new_discrete(n, values)) }
24+
}
25+
26+
#[doc(alias = "gsk_component_transfer_new_gamma")]
27+
pub fn new_gamma(amp: f32, exp: f32, ofs: f32) -> ComponentTransfer {
28+
assert_initialized_main_thread!();
29+
unsafe { from_glib_full(ffi::gsk_component_transfer_new_gamma(amp, exp, ofs)) }
30+
}
31+
32+
#[doc(alias = "gsk_component_transfer_new_identity")]
33+
pub fn new_identity() -> ComponentTransfer {
34+
assert_initialized_main_thread!();
35+
unsafe { from_glib_full(ffi::gsk_component_transfer_new_identity()) }
36+
}
37+
38+
#[doc(alias = "gsk_component_transfer_new_levels")]
39+
pub fn new_levels(n: f32) -> ComponentTransfer {
40+
assert_initialized_main_thread!();
41+
unsafe { from_glib_full(ffi::gsk_component_transfer_new_levels(n)) }
42+
}
43+
44+
#[doc(alias = "gsk_component_transfer_new_linear")]
45+
pub fn new_linear(m: f32, b: f32) -> ComponentTransfer {
46+
assert_initialized_main_thread!();
47+
unsafe { from_glib_full(ffi::gsk_component_transfer_new_linear(m, b)) }
48+
}
49+
50+
#[doc(alias = "gsk_component_transfer_new_table")]
51+
pub fn new_table(n: u32, values: f32) -> ComponentTransfer {
52+
assert_initialized_main_thread!();
53+
unsafe { from_glib_full(ffi::gsk_component_transfer_new_table(n, values)) }
54+
}
55+
56+
#[doc(alias = "gsk_component_transfer_equal")]
57+
fn equal(&self, other: Option<&ComponentTransfer>) -> bool {
58+
assert_initialized_main_thread!();
59+
unsafe {
60+
from_glib(ffi::gsk_component_transfer_equal(
61+
ToGlibPtr::<*const ffi::GskComponentTransfer>::to_glib_none(self).0
62+
as glib::ffi::gconstpointer,
63+
ToGlibPtr::<*const ffi::GskComponentTransfer>::to_glib_none(other).0
64+
as glib::ffi::gconstpointer,
65+
))
66+
}
67+
}
68+
}
69+
70+
impl PartialEq for ComponentTransfer {
71+
#[inline]
72+
fn eq(&self, other: &Self) -> bool {
73+
self.equal(other)
74+
}
75+
}
76+
77+
impl Eq for ComponentTransfer {}
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
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+
5+
use crate::ffi;
6+
#[cfg(feature = "v4_20")]
7+
#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
8+
use crate::{ComponentTransfer, RenderNode};
9+
use glib::{prelude::*, translate::*};
10+
11+
glib::wrapper! {
12+
#[doc(alias = "GskComponentTransferNode")]
13+
pub struct ComponentTransferNode(Shared<ffi::GskComponentTransferNode>);
14+
15+
match fn {
16+
ref => |ptr| ffi::gsk_render_node_ref(ptr as *mut ffi::GskRenderNode),
17+
unref => |ptr| ffi::gsk_render_node_unref(ptr as *mut ffi::GskRenderNode),
18+
}
19+
}
20+
21+
impl StaticType for ComponentTransferNode {
22+
fn static_type() -> glib::Type {
23+
unsafe { from_glib(ffi::gsk_component_transfer_node_get_type()) }
24+
}
25+
}
26+
27+
impl ComponentTransferNode {
28+
#[cfg(feature = "v4_20")]
29+
#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
30+
#[doc(alias = "gsk_component_transfer_node_new")]
31+
pub fn new(
32+
child: impl AsRef<RenderNode>,
33+
r: &ComponentTransfer,
34+
g: &ComponentTransfer,
35+
b: &ComponentTransfer,
36+
a: &ComponentTransfer,
37+
) -> ComponentTransferNode {
38+
skip_assert_initialized!();
39+
unsafe {
40+
from_glib_full(ffi::gsk_component_transfer_node_new(
41+
child.as_ref().to_glib_none().0,
42+
r.to_glib_none().0,
43+
g.to_glib_none().0,
44+
b.to_glib_none().0,
45+
a.to_glib_none().0,
46+
))
47+
}
48+
}
49+
50+
#[cfg(feature = "v4_20")]
51+
#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
52+
#[doc(alias = "gsk_component_transfer_node_get_child")]
53+
#[doc(alias = "get_child")]
54+
pub fn child(&self) -> RenderNode {
55+
unsafe {
56+
from_glib_none(ffi::gsk_component_transfer_node_get_child(
57+
self.to_glib_none().0,
58+
))
59+
}
60+
}
61+
62+
#[cfg(feature = "v4_20")]
63+
#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
64+
#[doc(alias = "gsk_component_transfer_node_get_transfer")]
65+
#[doc(alias = "get_transfer")]
66+
pub fn transfer(&self, component: u32) -> ComponentTransfer {
67+
unsafe {
68+
from_glib_none(ffi::gsk_component_transfer_node_get_transfer(
69+
self.to_glib_none().0,
70+
component,
71+
))
72+
}
73+
}
74+
}

gsk4/src/auto/mod.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ pub use self::color_matrix_node::ColorMatrixNode;
3333
mod color_node;
3434
pub use self::color_node::ColorNode;
3535

36+
mod component_transfer_node;
37+
pub use self::component_transfer_node::ComponentTransferNode;
38+
3639
mod conic_gradient_node;
3740
pub use self::conic_gradient_node::ConicGradientNode;
3841

@@ -140,6 +143,13 @@ mod vulkan_renderer;
140143
#[cfg_attr(docsrs, doc(cfg(feature = "vulkan")))]
141144
pub use self::vulkan_renderer::VulkanRenderer;
142145

146+
#[cfg(feature = "v4_20")]
147+
#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
148+
mod component_transfer;
149+
#[cfg(feature = "v4_20")]
150+
#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
151+
pub use self::component_transfer::ComponentTransfer;
152+
143153
#[cfg(feature = "v4_14")]
144154
#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
145155
mod path;

0 commit comments

Comments
 (0)