gsk4/auto/
shader_args_builder.rs1use crate::{ffi, GLShader};
6use glib::translate::*;
7
8glib::wrapper! {
9 #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
10 pub struct ShaderArgsBuilder(Shared<ffi::GskShaderArgsBuilder>);
11
12 match fn {
13 ref => |ptr| ffi::gsk_shader_args_builder_ref(ptr),
14 unref => |ptr| ffi::gsk_shader_args_builder_unref(ptr),
15 type_ => || ffi::gsk_shader_args_builder_get_type(),
16 }
17}
18
19impl ShaderArgsBuilder {
20 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
21 #[allow(deprecated)]
22 #[doc(alias = "gsk_shader_args_builder_new")]
23 pub fn new(shader: &GLShader, initial_values: Option<&glib::Bytes>) -> ShaderArgsBuilder {
24 skip_assert_initialized!();
25 unsafe {
26 from_glib_full(ffi::gsk_shader_args_builder_new(
27 shader.to_glib_none().0,
28 initial_values.to_glib_none().0,
29 ))
30 }
31 }
32
33 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
34 #[allow(deprecated)]
35 #[doc(alias = "gsk_shader_args_builder_set_bool")]
36 pub fn set_bool(&self, idx: i32, value: bool) {
37 unsafe {
38 ffi::gsk_shader_args_builder_set_bool(self.to_glib_none().0, idx, value.into_glib());
39 }
40 }
41
42 #[doc(alias = "gsk_shader_args_builder_set_float")]
43 pub fn set_float(&self, idx: i32, value: f32) {
44 unsafe {
45 ffi::gsk_shader_args_builder_set_float(self.to_glib_none().0, idx, value);
46 }
47 }
48
49 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
50 #[allow(deprecated)]
51 #[doc(alias = "gsk_shader_args_builder_set_int")]
52 pub fn set_int(&self, idx: i32, value: i32) {
53 unsafe {
54 ffi::gsk_shader_args_builder_set_int(self.to_glib_none().0, idx, value);
55 }
56 }
57
58 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
59 #[allow(deprecated)]
60 #[doc(alias = "gsk_shader_args_builder_set_uint")]
61 pub fn set_uint(&self, idx: i32, value: u32) {
62 unsafe {
63 ffi::gsk_shader_args_builder_set_uint(self.to_glib_none().0, idx, value);
64 }
65 }
66
67 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
68 #[allow(deprecated)]
69 #[doc(alias = "gsk_shader_args_builder_set_vec2")]
70 pub fn set_vec2(&self, idx: i32, value: &graphene::Vec2) {
71 unsafe {
72 ffi::gsk_shader_args_builder_set_vec2(
73 self.to_glib_none().0,
74 idx,
75 value.to_glib_none().0,
76 );
77 }
78 }
79
80 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
81 #[allow(deprecated)]
82 #[doc(alias = "gsk_shader_args_builder_set_vec3")]
83 pub fn set_vec3(&self, idx: i32, value: &graphene::Vec3) {
84 unsafe {
85 ffi::gsk_shader_args_builder_set_vec3(
86 self.to_glib_none().0,
87 idx,
88 value.to_glib_none().0,
89 );
90 }
91 }
92
93 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
94 #[allow(deprecated)]
95 #[doc(alias = "gsk_shader_args_builder_set_vec4")]
96 pub fn set_vec4(&self, idx: i32, value: &graphene::Vec4) {
97 unsafe {
98 ffi::gsk_shader_args_builder_set_vec4(
99 self.to_glib_none().0,
100 idx,
101 value.to_glib_none().0,
102 );
103 }
104 }
105
106 #[cfg_attr(feature = "v4_16", deprecated = "Since 4.16")]
107 #[allow(deprecated)]
108 #[doc(alias = "gsk_shader_args_builder_to_args")]
109 pub fn to_args(self) -> glib::Bytes {
110 unsafe { from_glib_full(ffi::gsk_shader_args_builder_to_args(self.into_glib_ptr())) }
111 }
112}