import java.lang.reflect.*;
import java.io.*;
import java.util.*;
+import org.xwt.js.*;
import org.xwt.util.*;
import org.xwt.*;
protected String _getAltKeyName() { return System.getProperty("os.name", "").indexOf("SunOS") != -1 ? "Meta" : "Alt"; }
- protected Picture _createPicture() { return new X11Picture(); }
+ protected Picture _createPicture(JS r) { return new X11Picture(r); }
protected PixelBuffer _createPixelBuffer(int w, int h, Surface owner) { return new X11PixelBuffer(w, h); }
protected Surface _createSurface(Box b, boolean framed) { return new X11Surface(b, framed); }
protected boolean _needsAutoClick() { return true; }
*/
public static class X11Picture extends Picture {
- int width;
- int height;
- int[] data = null;
public X11PixelBuffer doublebuf = null;
public int getWidth() { return width; }
public int getHeight() { return height; }
boolean initialized = false;
+ public X11Picture(JS r) { super(r); }
public void init() {
if (initialized) return;
initialized = true;
cx2 = Math.min(dx + source.width, cx2);
cy2 = Math.min(dy + source.height, cy2);
if (cx1 >= cx2 || cy1 >= cy2) return;
- slowDrawPicture(((Platform.DefaultGlyph)source).getPicture(), dx, dy, cx1, cy1, cx2, cy2, rgb, true);
+ X11Picture pic = (X11Picture)((Platform.DefaultGlyph)source).getPicture();
+ pic.init();
+ slowDrawPicture(pic, dx, dy, cx1, cy1, cx2, cy2, rgb, true);
}
public void drawPicture(Picture source, int dx, int dy, int cx1, int cy1, int cx2, int cy2) {
cx1 = Math.max(dx, cx1);