X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fxwt%2Fplat%2FAWT.java;h=7c775bb8902549b0b409b574d9f0ecbd47013a15;hb=456bc0af52725d0babe8db1a6cec88943a3cbed1;hp=30c1e2d8a72d38fd8153851dd07006c9e8f791f6;hpb=143a889e6614dad5465a1a41060325d77af51361;p=org.ibex.core.git diff --git a/src/org/xwt/plat/AWT.java b/src/org/xwt/plat/AWT.java index 30c1e2d..7c775bb 100644 --- a/src/org/xwt/plat/AWT.java +++ b/src/org/xwt/plat/AWT.java @@ -1,10 +1,11 @@ -// Copyright 2003 Adam Megacz, see the COPYING file for licensing [GPL] +// Copyright 2004 Adam Megacz, see the COPYING file for licensing [GPL] package org.xwt.plat; import org.xwt.*; import org.xwt.util.*; import java.net.*; import java.io.*; +import org.xwt.js.*; import java.util.*; import java.awt.*; import java.awt.datatransfer.*; @@ -16,7 +17,7 @@ public class AWT extends JVM { protected String getDescriptiveName() { return "Generic JDK 1.1+ with AWT"; } protected PixelBuffer _createPixelBuffer(int w, int h, Surface owner) { return new AWTPixelBuffer(w, h); } - protected Picture _createPicture(Stream r) { return new AWTPicture(r); } + protected Picture _createPicture(JS r) { return new AWTPicture(r); } protected int _getScreenWidth() { return Toolkit.getDefaultToolkit().getScreenSize().width; } protected int _getScreenHeight() { return Toolkit.getDefaultToolkit().getScreenSize().height; } protected Surface _createSurface(Box b, boolean framed) { return new AWTSurface(b, framed); } @@ -117,17 +118,28 @@ public class AWT extends JVM { protected org.xwt.Font.Glyph _createGlyph(org.xwt.Font f, char c) { return new AWTGlyph(f, c); } protected static class AWTGlyph extends org.xwt.Font.Glyph { private Image i = null; + private static ColorModel cmodel = new DirectColorModel(32, 0x00FF0000, 0x0000FF00, 0x000000FF, 0xFF000000); + + // this doesn't work on Win32 because the JVM is broken + /* static final ColorModel cmodel = new ColorModel(8) { public int getRed(int p) { return 0; } public int getGreen(int p) { return 0; } public int getBlue(int p) { return 0; } public int getAlpha(int p) { return p & 0xFF; } }; + */ public AWTGlyph(org.xwt.Font f, char c) { super(f, c); } Image getImage() { if (i == null && isLoaded) { - i = Toolkit.getDefaultToolkit().createImage(new MemoryImageSource(width, height, cmodel, data, 0, width)); + + int[] data2 = new int[data.length]; + for(int i=0; i