gstreamer_editing_services/auto/
text_overlay.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// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
4// DO NOT EDIT
5#![allow(deprecated)]
6
7use crate::{
8    ffi, Extractable, MetaContainer, Operation, TextHAlign, TextVAlign, TimelineElement,
9    TrackElement,
10};
11use glib::{prelude::*, translate::*};
12
13glib::wrapper! {
14    #[doc(alias = "GESTextOverlay")]
15    pub struct TextOverlay(Object<ffi::GESTextOverlay, ffi::GESTextOverlayClass>) @extends Operation, TrackElement, TimelineElement, @implements Extractable, MetaContainer;
16
17    match fn {
18        type_ => || ffi::ges_text_overlay_get_type(),
19    }
20}
21
22impl TextOverlay {
23    pub const NONE: Option<&'static TextOverlay> = None;
24
25    #[cfg_attr(feature = "v1_18", deprecated = "Since 1.18")]
26    #[allow(deprecated)]
27    #[doc(alias = "ges_text_overlay_new")]
28    pub fn new() -> Option<TextOverlay> {
29        assert_initialized_main_thread!();
30        unsafe { from_glib_none(ffi::ges_text_overlay_new()) }
31    }
32}
33
34pub trait TextOverlayExt: IsA<TextOverlay> + 'static {
35    #[doc(alias = "ges_text_overlay_get_color")]
36    #[doc(alias = "get_color")]
37    fn color(&self) -> u32 {
38        unsafe { ffi::ges_text_overlay_get_color(self.as_ref().to_glib_none().0) }
39    }
40
41    #[doc(alias = "ges_text_overlay_get_font_desc")]
42    #[doc(alias = "get_font_desc")]
43    fn font_desc(&self) -> Option<glib::GString> {
44        unsafe {
45            from_glib_none(ffi::ges_text_overlay_get_font_desc(
46                self.as_ref().to_glib_none().0,
47            ))
48        }
49    }
50
51    #[doc(alias = "ges_text_overlay_get_halignment")]
52    #[doc(alias = "get_halignment")]
53    fn halignment(&self) -> TextHAlign {
54        unsafe {
55            from_glib(ffi::ges_text_overlay_get_halignment(
56                self.as_ref().to_glib_none().0,
57            ))
58        }
59    }
60
61    #[doc(alias = "ges_text_overlay_get_text")]
62    #[doc(alias = "get_text")]
63    fn text(&self) -> Option<glib::GString> {
64        unsafe {
65            from_glib_none(ffi::ges_text_overlay_get_text(
66                self.as_ref().to_glib_none().0,
67            ))
68        }
69    }
70
71    #[doc(alias = "ges_text_overlay_get_valignment")]
72    #[doc(alias = "get_valignment")]
73    fn valignment(&self) -> TextVAlign {
74        unsafe {
75            from_glib(ffi::ges_text_overlay_get_valignment(
76                self.as_ref().to_glib_none().0,
77            ))
78        }
79    }
80
81    #[doc(alias = "ges_text_overlay_get_xpos")]
82    #[doc(alias = "get_xpos")]
83    fn xpos(&self) -> f64 {
84        unsafe { ffi::ges_text_overlay_get_xpos(self.as_ref().to_glib_none().0) }
85    }
86
87    #[doc(alias = "ges_text_overlay_get_ypos")]
88    #[doc(alias = "get_ypos")]
89    fn ypos(&self) -> f64 {
90        unsafe { ffi::ges_text_overlay_get_ypos(self.as_ref().to_glib_none().0) }
91    }
92
93    #[doc(alias = "ges_text_overlay_set_color")]
94    fn set_color(&self, color: u32) {
95        unsafe {
96            ffi::ges_text_overlay_set_color(self.as_ref().to_glib_none().0, color);
97        }
98    }
99
100    #[doc(alias = "ges_text_overlay_set_font_desc")]
101    fn set_font_desc(&self, font_desc: Option<&str>) {
102        unsafe {
103            ffi::ges_text_overlay_set_font_desc(
104                self.as_ref().to_glib_none().0,
105                font_desc.to_glib_none().0,
106            );
107        }
108    }
109
110    #[doc(alias = "ges_text_overlay_set_halignment")]
111    fn set_halignment(&self, halign: TextHAlign) {
112        unsafe {
113            ffi::ges_text_overlay_set_halignment(
114                self.as_ref().to_glib_none().0,
115                halign.into_glib(),
116            );
117        }
118    }
119
120    #[doc(alias = "ges_text_overlay_set_text")]
121    fn set_text(&self, text: Option<&str>) {
122        unsafe {
123            ffi::ges_text_overlay_set_text(self.as_ref().to_glib_none().0, text.to_glib_none().0);
124        }
125    }
126
127    #[doc(alias = "ges_text_overlay_set_valignment")]
128    fn set_valignment(&self, valign: TextVAlign) {
129        unsafe {
130            ffi::ges_text_overlay_set_valignment(
131                self.as_ref().to_glib_none().0,
132                valign.into_glib(),
133            );
134        }
135    }
136
137    #[doc(alias = "ges_text_overlay_set_xpos")]
138    fn set_xpos(&self, position: f64) {
139        unsafe {
140            ffi::ges_text_overlay_set_xpos(self.as_ref().to_glib_none().0, position);
141        }
142    }
143
144    #[doc(alias = "ges_text_overlay_set_ypos")]
145    fn set_ypos(&self, position: f64) {
146        unsafe {
147            ffi::ges_text_overlay_set_ypos(self.as_ref().to_glib_none().0, position);
148        }
149    }
150}
151
152impl<O: IsA<TextOverlay>> TextOverlayExt for O {}