summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dmagick/Color.d12
-rw-r--r--dmagick/ImageView.d16
-rw-r--r--examples/draw.d1
3 files changed, 20 insertions, 9 deletions
diff --git a/dmagick/Color.d b/dmagick/Color.d
index 7223d81..2ddaa64 100644
--- a/dmagick/Color.d
+++ b/dmagick/Color.d
@@ -130,6 +130,18 @@ class Color
}
/**
+ * Support casting between different colors.
+ * You can also use std.conv.to
+ */
+ T opCast(T : Color)()
+ {
+ T color = new T();
+ color.packet = packet;
+
+ return color;
+ }
+
+ /**
* The value for red in the range [0 .. QuantumRange]
*/
void redQuantum(Quantum red)
diff --git a/dmagick/ImageView.d b/dmagick/ImageView.d
index 4e967be..f23f23a 100644
--- a/dmagick/ImageView.d
+++ b/dmagick/ImageView.d
@@ -316,14 +316,6 @@ struct Pixels
return new Color(pixels.ptr + pixel);
}
- /**
- * Sync the pixels back to the image. The destructor does this for you.
- */
- void sync()
- {
- SyncAuthenticPixelCacheNexus(image.imageRef, &nexus, DMagickExceptionInfo());
- }
-
///ditto
void opIndexAssign(Color color, size_t index)
{
@@ -358,6 +350,14 @@ struct Pixels
}
/**
+ * Sync the pixels back to the image. The destructor does this for you.
+ */
+ void sync()
+ {
+ SyncAuthenticPixelCacheNexus(image.imageRef, &nexus, DMagickExceptionInfo());
+ }
+
+ /**
* Support using foreach on a row.
*/
int opApply(T : Color)(int delegate(ref T) dg)
diff --git a/examples/draw.d b/examples/draw.d
index d3635c5..358e942 100644
--- a/examples/draw.d
+++ b/examples/draw.d
@@ -32,7 +32,6 @@ void main()
//Define the Gradients to use;
Gradient cylinderEmptyColor = Gradient(new Color("white"), new Color("gray"), imageHeight/2);
- Gradient cylinderinsideColor = Gradient(new Color("white"), new Color("darkgray"), imageHeight/2);
Gradient cylinderFullColor = Gradient(new Color("green2"), new Color("darkgreen"), imageHeight/2);
Gradient cylinderOutColor = Gradient(new Color("lime"), new Color("green4"), imageHeight/2);