Expose Backend in iced_glow

This commit is contained in:
Héctor Ramón Jiménez 2020-05-30 03:04:16 +02:00
parent 6d73b94e9a
commit 6cb90570a3
2 changed files with 9 additions and 4 deletions

View File

@ -9,9 +9,10 @@ use iced_graphics::Primitive;
use iced_native::mouse; use iced_native::mouse;
use iced_native::{Font, HorizontalAlignment, Size, VerticalAlignment}; use iced_native::{Font, HorizontalAlignment, Size, VerticalAlignment};
/// A [`glow`] renderer. /// A [`glow`] graphics backend for [`iced`].
/// ///
/// [`glow`]: https://github.com/grovesNL/glow /// [`glow`]: https://github.com/grovesNL/glow
/// [`iced`]: https://github.com/hecrj/iced
#[derive(Debug)] #[derive(Debug)]
pub struct Backend { pub struct Backend {
quad_pipeline: quad::Pipeline, quad_pipeline: quad::Pipeline,
@ -20,9 +21,9 @@ pub struct Backend {
} }
impl Backend { impl Backend {
/// Creates a new [`Renderer`]. /// Creates a new [`Backend`].
/// ///
/// [`Renderer`]: struct.Renderer.html /// [`Backend`]: struct.Renderer.html
pub fn new(gl: &glow::Context, settings: Settings) -> Self { pub fn new(gl: &glow::Context, settings: Settings) -> Self {
let text_pipeline = text::Pipeline::new(gl, settings.default_font); let text_pipeline = text::Pipeline::new(gl, settings.default_font);
let quad_pipeline = quad::Pipeline::new(gl); let quad_pipeline = quad::Pipeline::new(gl);
@ -35,6 +36,10 @@ impl Backend {
} }
} }
/// Draws the provided primitives in the default framebuffer.
///
/// The text provided as overlay will be rendered on top of the primitives.
/// This is useful for rendering debug information.
pub fn draw<T: AsRef<str>>( pub fn draw<T: AsRef<str>>(
&mut self, &mut self,
gl: &glow::Context, gl: &glow::Context,

View File

@ -18,9 +18,9 @@ pub mod settings;
pub mod widget; pub mod widget;
pub mod window; pub mod window;
pub use backend::Backend;
pub use settings::Settings; pub use settings::Settings;
pub(crate) use backend::Backend;
pub(crate) use iced_graphics::Transformation; pub(crate) use iced_graphics::Transformation;
#[doc(no_inline)] #[doc(no_inline)]