Update benches to latest glium display setup api
[mandelwow.git] / lib.rs
diff --git a/lib.rs b/lib.rs
index c7026710cc0a85e03bb67c7ca6985943516a1b0a..3ec2b55117d9850a3dae3a59f122ceba6a32202e 100644 (file)
--- a/lib.rs
+++ b/lib.rs
@@ -1,9 +1,12 @@
 extern crate cgmath;
-#[macro_use(uniform,program,implement_vertex)]
+#[macro_use(uniform,implement_vertex)]
 extern crate glium;
 extern crate glutin;
+#[cfg(feature = "image")]
 extern crate image;
 extern crate libxm;
+#[cfg(feature = "editor")]
+extern crate rust_rocket;
 extern crate sdl2;
 
 pub mod bounding_box;
@@ -13,16 +16,22 @@ pub mod shaded_cube;
 pub mod sound;
 pub mod support;
 pub mod text;
+pub mod timer;
 
 pub use bounding_box::BoundingBox;
 pub use cube::Cube;
 pub use shaded_cube::ShadedCube;
 
+#[cfg(feature = "image")]
 pub fn screenshot(display : &glium::Display) {
     let image: glium::texture::RawImage2d<u8> = display.read_front_buffer();
     let image = image::ImageBuffer::from_raw(image.width, image.height, image.data.into_owned()).unwrap();
-    let image = image::DynamicImage::ImageRgba8(image).flipv();
+    let image = image::DynamicImage::ImageRgba8(image).flipv().to_rgb();
+    let image = image::DynamicImage::ImageRgb8(image);
     let mut output = std::fs::File::create(&std::path::Path::new("screenshot.png")).unwrap();
-    image.save(&mut output, image::ImageFormat::PNG).unwrap();
+    image.write_to(&mut output, image::ImageFormat::PNG).unwrap();
 }
 
+#[cfg(not(feature = "image"))]
+pub fn screenshot(_ : &glium::Display) {
+}