summaryrefslogtreecommitdiff
path: root/java/awt/Image.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/awt/Image.java')
-rw-r--r--java/awt/Image.java16
1 files changed, 15 insertions, 1 deletions
diff --git a/java/awt/Image.java b/java/awt/Image.java
index d4b75b888..451b092e6 100644
--- a/java/awt/Image.java
+++ b/java/awt/Image.java
@@ -39,6 +39,7 @@ exception statement from your version. */
package java.awt;
import java.awt.image.AreaAveragingScaleFilter;
+import java.awt.image.FilteredImageSource;
import java.awt.image.ImageObserver;
import java.awt.image.ImageProducer;
import java.awt.image.ReplicateScaleFilter;
@@ -179,7 +180,20 @@ public abstract class Image
*/
public Image getScaledInstance(int width, int height, int flags)
{
- throw new Error("not implemented");
+ switch (flags)
+ {
+ case SCALE_DEFAULT:
+ case SCALE_FAST:
+ case SCALE_REPLICATE:
+ ImageProducer producer =
+ new FilteredImageSource(this.getSource(),
+ new ReplicateScaleFilter(width, height));
+ return Toolkit.getDefaultToolkit().createImage(producer);
+ case SCALE_SMOOTH:
+ case SCALE_AREA_AVERAGING:
+ default:
+ throw new Error("not implemented");
+ }
}
/**