diff options
author | Mark Wielaard <mark@klomp.org> | 2005-11-21 22:46:49 +0000 |
---|---|---|
committer | Mark Wielaard <mark@klomp.org> | 2005-11-21 22:46:49 +0000 |
commit | f125b2420673c979752d4d66b530a1c6bb286366 (patch) | |
tree | 530116f5f9828733c743aeaed16d90d3d5931440 /gnu/java/awt/peer | |
parent | 56f5a070e394ccc44d04de92499eab17745f8e5c (diff) | |
download | classpath-f125b2420673c979752d4d66b530a1c6bb286366.tar.gz |
* gnu/java/awt/image/ImageDecoder.java (datainput): New field.
(ImageDecoder(DataInput)): New constructor.
(startProduction): Create DataInputStreamWrapper when datainput set.
(DataInputStreamWrapper): New private static helper class.
* gnu/java/awt/peer/gtk/GdkPixbufDecoder.java
(GdkPixbufDecoder(DataInput)): New constructor.
(setInput): Check whether getInput() results in an InputStream or
DataInput.
Diffstat (limited to 'gnu/java/awt/peer')
-rw-r--r-- | gnu/java/awt/peer/gtk/GdkPixbufDecoder.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java b/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java index 85cb1e47a..054ebaaae 100644 --- a/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java +++ b/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java @@ -47,6 +47,7 @@ import java.awt.image.ImageConsumer; import java.awt.image.ImageProducer; import java.awt.image.Raster; import java.awt.image.RenderedImage; +import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; import java.io.InputStream; @@ -102,6 +103,11 @@ public class GdkPixbufDecoder extends gnu.java.awt.image.ImageDecoder 0x00ff0000, 0x0000ff00, 0x000000ff); + public GdkPixbufDecoder (DataInput datainput) + { + super (datainput); + } + public GdkPixbufDecoder (InputStream in) { super (in); @@ -630,7 +636,14 @@ public class GdkPixbufDecoder extends gnu.java.awt.image.ImageDecoder boolean ignoreMetadata) { super.setInput(input, seekForwardOnly, ignoreMetadata); - dec = new GdkPixbufDecoder((InputStream) getInput()); + Object get = getInput(); + if (get instanceof InputStream) + dec = new GdkPixbufDecoder((InputStream) get); + else if (get instanceof DataInput) + dec = new GdkPixbufDecoder((DataInput) get); + else + throw new IllegalArgumentException("input object not supported: " + + get); } public BufferedImage read(int imageIndex, ImageReadParam param) |