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 glib::object::IsA; 6 use glib::translate::*; 7 use pango_sys; 8 use std::fmt; 9 use Color; 10 use Font; 11 use Glyph; 12 use GlyphItem; 13 use GlyphString; 14 use Layout; 15 use LayoutLine; 16 use Matrix; 17 use RenderPart; 18 19 glib_wrapper! { 20 pub struct Renderer(Object<pango_sys::PangoRenderer, pango_sys::PangoRendererClass, RendererClass>); 21 22 match fn { 23 get_type => || pango_sys::pango_renderer_get_type(), 24 } 25 } 26 27 pub const NONE_RENDERER: Option<&Renderer> = None; 28 29 pub trait RendererExt: 'static { activate(&self)30 fn activate(&self); 31 deactivate(&self)32 fn deactivate(&self); 33 draw_error_underline(&self, x: i32, y: i32, width: i32, height: i32)34 fn draw_error_underline(&self, x: i32, y: i32, width: i32, height: i32); 35 draw_glyph<P: IsA<Font>>(&self, font: &P, glyph: Glyph, x: f64, y: f64)36 fn draw_glyph<P: IsA<Font>>(&self, font: &P, glyph: Glyph, x: f64, y: f64); 37 draw_glyph_item(&self, text: Option<&str>, glyph_item: &mut GlyphItem, x: i32, y: i32)38 fn draw_glyph_item(&self, text: Option<&str>, glyph_item: &mut GlyphItem, x: i32, y: i32); 39 draw_glyphs<P: IsA<Font>>(&self, font: &P, glyphs: &mut GlyphString, x: i32, y: i32)40 fn draw_glyphs<P: IsA<Font>>(&self, font: &P, glyphs: &mut GlyphString, x: i32, y: i32); 41 draw_layout(&self, layout: &Layout, x: i32, y: i32)42 fn draw_layout(&self, layout: &Layout, x: i32, y: i32); 43 draw_layout_line(&self, line: &LayoutLine, x: i32, y: i32)44 fn draw_layout_line(&self, line: &LayoutLine, x: i32, y: i32); 45 draw_rectangle(&self, part: RenderPart, x: i32, y: i32, width: i32, height: i32)46 fn draw_rectangle(&self, part: RenderPart, x: i32, y: i32, width: i32, height: i32); 47 draw_trapezoid( &self, part: RenderPart, y1_: f64, x11: f64, x21: f64, y2: f64, x12: f64, x22: f64, )48 fn draw_trapezoid( 49 &self, 50 part: RenderPart, 51 y1_: f64, 52 x11: f64, 53 x21: f64, 54 y2: f64, 55 x12: f64, 56 x22: f64, 57 ); 58 59 #[cfg(any(feature = "v1_38", feature = "dox"))] get_alpha(&self, part: RenderPart) -> u1660 fn get_alpha(&self, part: RenderPart) -> u16; 61 get_color(&self, part: RenderPart) -> Option<Color>62 fn get_color(&self, part: RenderPart) -> Option<Color>; 63 get_layout(&self) -> Option<Layout>64 fn get_layout(&self) -> Option<Layout>; 65 get_layout_line(&self) -> Option<LayoutLine>66 fn get_layout_line(&self) -> Option<LayoutLine>; 67 get_matrix(&self) -> Option<Matrix>68 fn get_matrix(&self) -> Option<Matrix>; 69 part_changed(&self, part: RenderPart)70 fn part_changed(&self, part: RenderPart); 71 72 #[cfg(any(feature = "v1_38", feature = "dox"))] set_alpha(&self, part: RenderPart, alpha: u16)73 fn set_alpha(&self, part: RenderPart, alpha: u16); 74 set_color(&self, part: RenderPart, color: Option<&Color>)75 fn set_color(&self, part: RenderPart, color: Option<&Color>); 76 set_matrix(&self, matrix: Option<&Matrix>)77 fn set_matrix(&self, matrix: Option<&Matrix>); 78 } 79 80 impl<O: IsA<Renderer>> RendererExt for O { activate(&self)81 fn activate(&self) { 82 unsafe { 83 pango_sys::pango_renderer_activate(self.as_ref().to_glib_none().0); 84 } 85 } 86 deactivate(&self)87 fn deactivate(&self) { 88 unsafe { 89 pango_sys::pango_renderer_deactivate(self.as_ref().to_glib_none().0); 90 } 91 } 92 draw_error_underline(&self, x: i32, y: i32, width: i32, height: i32)93 fn draw_error_underline(&self, x: i32, y: i32, width: i32, height: i32) { 94 unsafe { 95 pango_sys::pango_renderer_draw_error_underline( 96 self.as_ref().to_glib_none().0, 97 x, 98 y, 99 width, 100 height, 101 ); 102 } 103 } 104 draw_glyph<P: IsA<Font>>(&self, font: &P, glyph: Glyph, x: f64, y: f64)105 fn draw_glyph<P: IsA<Font>>(&self, font: &P, glyph: Glyph, x: f64, y: f64) { 106 unsafe { 107 pango_sys::pango_renderer_draw_glyph( 108 self.as_ref().to_glib_none().0, 109 font.as_ref().to_glib_none().0, 110 glyph, 111 x, 112 y, 113 ); 114 } 115 } 116 draw_glyph_item(&self, text: Option<&str>, glyph_item: &mut GlyphItem, x: i32, y: i32)117 fn draw_glyph_item(&self, text: Option<&str>, glyph_item: &mut GlyphItem, x: i32, y: i32) { 118 unsafe { 119 pango_sys::pango_renderer_draw_glyph_item( 120 self.as_ref().to_glib_none().0, 121 text.to_glib_none().0, 122 glyph_item.to_glib_none_mut().0, 123 x, 124 y, 125 ); 126 } 127 } 128 draw_glyphs<P: IsA<Font>>(&self, font: &P, glyphs: &mut GlyphString, x: i32, y: i32)129 fn draw_glyphs<P: IsA<Font>>(&self, font: &P, glyphs: &mut GlyphString, x: i32, y: i32) { 130 unsafe { 131 pango_sys::pango_renderer_draw_glyphs( 132 self.as_ref().to_glib_none().0, 133 font.as_ref().to_glib_none().0, 134 glyphs.to_glib_none_mut().0, 135 x, 136 y, 137 ); 138 } 139 } 140 draw_layout(&self, layout: &Layout, x: i32, y: i32)141 fn draw_layout(&self, layout: &Layout, x: i32, y: i32) { 142 unsafe { 143 pango_sys::pango_renderer_draw_layout( 144 self.as_ref().to_glib_none().0, 145 layout.to_glib_none().0, 146 x, 147 y, 148 ); 149 } 150 } 151 draw_layout_line(&self, line: &LayoutLine, x: i32, y: i32)152 fn draw_layout_line(&self, line: &LayoutLine, x: i32, y: i32) { 153 unsafe { 154 pango_sys::pango_renderer_draw_layout_line( 155 self.as_ref().to_glib_none().0, 156 line.to_glib_none().0, 157 x, 158 y, 159 ); 160 } 161 } 162 draw_rectangle(&self, part: RenderPart, x: i32, y: i32, width: i32, height: i32)163 fn draw_rectangle(&self, part: RenderPart, x: i32, y: i32, width: i32, height: i32) { 164 unsafe { 165 pango_sys::pango_renderer_draw_rectangle( 166 self.as_ref().to_glib_none().0, 167 part.to_glib(), 168 x, 169 y, 170 width, 171 height, 172 ); 173 } 174 } 175 draw_trapezoid( &self, part: RenderPart, y1_: f64, x11: f64, x21: f64, y2: f64, x12: f64, x22: f64, )176 fn draw_trapezoid( 177 &self, 178 part: RenderPart, 179 y1_: f64, 180 x11: f64, 181 x21: f64, 182 y2: f64, 183 x12: f64, 184 x22: f64, 185 ) { 186 unsafe { 187 pango_sys::pango_renderer_draw_trapezoid( 188 self.as_ref().to_glib_none().0, 189 part.to_glib(), 190 y1_, 191 x11, 192 x21, 193 y2, 194 x12, 195 x22, 196 ); 197 } 198 } 199 200 #[cfg(any(feature = "v1_38", feature = "dox"))] get_alpha(&self, part: RenderPart) -> u16201 fn get_alpha(&self, part: RenderPart) -> u16 { 202 unsafe { 203 pango_sys::pango_renderer_get_alpha(self.as_ref().to_glib_none().0, part.to_glib()) 204 } 205 } 206 get_color(&self, part: RenderPart) -> Option<Color>207 fn get_color(&self, part: RenderPart) -> Option<Color> { 208 unsafe { 209 from_glib_none(pango_sys::pango_renderer_get_color( 210 self.as_ref().to_glib_none().0, 211 part.to_glib(), 212 )) 213 } 214 } 215 get_layout(&self) -> Option<Layout>216 fn get_layout(&self) -> Option<Layout> { 217 unsafe { 218 from_glib_none(pango_sys::pango_renderer_get_layout( 219 self.as_ref().to_glib_none().0, 220 )) 221 } 222 } 223 get_layout_line(&self) -> Option<LayoutLine>224 fn get_layout_line(&self) -> Option<LayoutLine> { 225 unsafe { 226 from_glib_none(pango_sys::pango_renderer_get_layout_line( 227 self.as_ref().to_glib_none().0, 228 )) 229 } 230 } 231 get_matrix(&self) -> Option<Matrix>232 fn get_matrix(&self) -> Option<Matrix> { 233 unsafe { 234 from_glib_none(pango_sys::pango_renderer_get_matrix( 235 self.as_ref().to_glib_none().0, 236 )) 237 } 238 } 239 part_changed(&self, part: RenderPart)240 fn part_changed(&self, part: RenderPart) { 241 unsafe { 242 pango_sys::pango_renderer_part_changed(self.as_ref().to_glib_none().0, part.to_glib()); 243 } 244 } 245 246 #[cfg(any(feature = "v1_38", feature = "dox"))] set_alpha(&self, part: RenderPart, alpha: u16)247 fn set_alpha(&self, part: RenderPart, alpha: u16) { 248 unsafe { 249 pango_sys::pango_renderer_set_alpha( 250 self.as_ref().to_glib_none().0, 251 part.to_glib(), 252 alpha, 253 ); 254 } 255 } 256 set_color(&self, part: RenderPart, color: Option<&Color>)257 fn set_color(&self, part: RenderPart, color: Option<&Color>) { 258 unsafe { 259 pango_sys::pango_renderer_set_color( 260 self.as_ref().to_glib_none().0, 261 part.to_glib(), 262 color.to_glib_none().0, 263 ); 264 } 265 } 266 set_matrix(&self, matrix: Option<&Matrix>)267 fn set_matrix(&self, matrix: Option<&Matrix>) { 268 unsafe { 269 pango_sys::pango_renderer_set_matrix( 270 self.as_ref().to_glib_none().0, 271 matrix.to_glib_none().0, 272 ); 273 } 274 } 275 } 276 277 impl fmt::Display for Renderer { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result278 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 279 write!(f, "Renderer") 280 } 281 } 282