summaryrefslogtreecommitdiffstats
path: root/examples/tour/renderer/debugger.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2019-09-05 07:23:03 +0200
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2019-09-05 07:23:03 +0200
commitced3ffc22570048711fefba638782a31d0e06035 (patch)
treec3c3f29be40ec348f15205a3dd920088edb52ace /examples/tour/renderer/debugger.rs
parent3440ba3cb44bfc9a2b67708b683958a97d8c5e23 (diff)
downloadiced-ced3ffc22570048711fefba638782a31d0e06035.tar.gz
iced-ced3ffc22570048711fefba638782a31d0e06035.tar.bz2
iced-ced3ffc22570048711fefba638782a31d0e06035.zip
Move `ggez` example to `tour`
Diffstat (limited to 'examples/tour/renderer/debugger.rs')
-rw-r--r--examples/tour/renderer/debugger.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/tour/renderer/debugger.rs b/examples/tour/renderer/debugger.rs
new file mode 100644
index 00000000..98124795
--- /dev/null
+++ b/examples/tour/renderer/debugger.rs
@@ -0,0 +1,30 @@
+use super::Renderer;
+use ggez::graphics::{Color, DrawMode, MeshBuilder, Rect};
+
+impl iced::renderer::Debugger for Renderer<'_> {
+ type Color = Color;
+
+ fn explain(&mut self, layout: &iced::Layout<'_>, color: Color) {
+ let bounds = layout.bounds();
+
+ let mut debug_mesh =
+ self.debug_mesh.take().unwrap_or(MeshBuilder::new());
+
+ debug_mesh.rectangle(
+ DrawMode::stroke(1.0),
+ Rect {
+ x: bounds.x,
+ y: bounds.y,
+ w: bounds.width,
+ h: bounds.height,
+ },
+ color,
+ );
+
+ self.debug_mesh = Some(debug_mesh);
+
+ for child in layout.children() {
+ self.explain(&child, color);
+ }
+ }
+}