diff --git a/src/wand/macros.rs b/src/wand/macros.rs index 24cf39a..2036f57 100644 --- a/src/wand/macros.rs +++ b/src/wand/macros.rs @@ -110,10 +110,10 @@ macro_rules! set_get { ($($get:ident, $set:ident, $c_get:ident, $c_set:ident, $typ:ty )*) => { $( pub fn $get(&self) -> $typ { - unsafe { ::bindings::$c_get(self.wand) } + unsafe { ::bindings::$c_get(self.wand).into() } } pub fn $set(&mut self, v: $typ) -> Result<()> { - match unsafe { ::bindings::$c_set(self.wand, v) } { + match unsafe { ::bindings::$c_set(self.wand, v.into()) } { ::bindings::MagickBooleanType_MagickTrue => Ok(()), _ => Err(MagickError(concat!(stringify!($set), " returned false"))) } diff --git a/src/wand/magick.rs b/src/wand/magick.rs index 1e594a9..31da0cf 100644 --- a/src/wand/magick.rs +++ b/src/wand/magick.rs @@ -224,19 +224,6 @@ impl MagickWand { (distortion, wand) } - pub fn get_image_compose(&self) -> CompositeOperator { - unsafe { bindings::MagickGetImageCompose(self.wand).into() } - } - - pub fn set_image_compose(&self, composite_operator: CompositeOperator) -> Result<()> { - match unsafe { bindings::MagickSetImageCompose(self.wand, composite_operator.into()) } { - bindings::MagickBooleanType_MagickTrue => Ok(()), - _ => Err(MagickError( - "Failed to set the image composite operator type", - )), - } - } - /// Compose another image onto self at (x, y) using composition_operator pub fn compose_images( &self, @@ -1143,50 +1130,6 @@ impl MagickWand { } } - pub fn get_colorspace(&self) -> ColorspaceType { - return unsafe { bindings::MagickGetColorspace(self.wand).into() }; - } - - pub fn set_colorspace(&mut self, colorspace: ColorspaceType) -> Result<()> { - match unsafe { bindings::MagickSetColorspace(self.wand, colorspace.into()) } { - bindings::MagickBooleanType_MagickTrue => Ok(()), - _ => Err(MagickError("failed to set colorspace")), - } - } - - pub fn get_image_colorspace(&self) -> ColorspaceType { - return unsafe { bindings::MagickGetImageColorspace(self.wand).into() }; - } - - pub fn set_image_colorspace(&self, colorspace: ColorspaceType) -> Result<()> { - match unsafe { bindings::MagickSetImageColorspace(self.wand, colorspace.into()) } { - bindings::MagickBooleanType_MagickTrue => Ok(()), - _ => Err(MagickError("failed to set image colorspace")), - } - } - - pub fn get_gravity(&self) -> GravityType { - return unsafe { bindings::MagickGetGravity(self.wand).into() }; - } - - pub fn set_gravity(&mut self, gravity: GravityType) -> Result<()> { - match unsafe { bindings::MagickSetGravity(self.wand, gravity.into()) } { - bindings::MagickBooleanType_MagickTrue => Ok(()), - _ => Err(MagickError("failed to set gravity")), - } - } - - pub fn get_image_gravity(&self) -> GravityType { - return unsafe { bindings::MagickGetImageGravity(self.wand).into() }; - } - - pub fn set_image_gravity(&mut self, gravity: GravityType) -> Result<()> { - match unsafe { bindings::MagickSetImageGravity(self.wand, gravity.into()) } { - bindings::MagickBooleanType_MagickTrue => Ok(()), - _ => Err(MagickError("failed to set image gravity")), - } - } - mutations!( /// Sets the image to the specified alpha level. MagickSetImageAlpha => set_image_alpha(alpha: f64) @@ -1225,8 +1168,12 @@ impl MagickWand { ); set_get!( + get_colorspace, set_colorspace, MagickGetColorspace, MagickSetColorspace, ColorspaceType + get_image_compose, set_image_compose, MagickGetImageCompose, MagickSetImageCompose, CompositeOperator get_compression, set_compression, MagickGetCompression, MagickSetCompression, bindings::CompressionType get_compression_quality, set_compression_quality, MagickGetCompressionQuality, MagickSetCompressionQuality, size_t + get_gravity, set_gravity, MagickGetGravity, MagickSetGravity, GravityType + get_image_colorspace, set_image_colorspace, MagickGetImageColorspace, MagickSetImageColorspace, ColorspaceType get_image_compression, set_image_compression, MagickGetImageCompression, MagickSetImageCompression, bindings::CompressionType get_image_compression_quality, set_image_compression_quality, MagickGetImageCompressionQuality, MagickSetImageCompressionQuality, size_t get_image_delay, set_image_delay, MagickGetImageDelay, MagickSetImageDelay, size_t @@ -1235,6 +1182,7 @@ impl MagickWand { get_image_endian, set_image_endian, MagickGetImageEndian, MagickSetImageEndian, bindings::EndianType get_image_fuzz, set_image_fuzz, MagickGetImageFuzz, MagickSetImageFuzz, f64 get_image_gamma, set_image_gamma, MagickGetImageGamma, MagickSetImageGamma, f64 + get_image_gravity, set_image_gravity, MagickGetImageGravity, MagickSetImageGravity, GravityType get_image_interlace_scheme, set_image_interlace_scheme, MagickGetImageInterlaceScheme, MagickSetImageInterlaceScheme, bindings::InterlaceType get_image_interpolate_method, set_image_interpolate_method, MagickGetImageInterpolateMethod, MagickSetImageInterpolateMethod, bindings::PixelInterpolateMethod get_image_iterations, set_image_iterations, MagickGetImageIterations, MagickSetImageIterations, size_t diff --git a/tests/lib.rs b/tests/lib.rs index f55c864..6d1708f 100644 --- a/tests/lib.rs +++ b/tests/lib.rs @@ -422,7 +422,7 @@ fn test_image_compose() { START.call_once(|| { magick_wand_genesis(); }); - let wand = MagickWand::new(); + let mut wand = MagickWand::new(); wand.new_image(4, 4, &PixelWand::new()).unwrap(); let operators = [