Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / java / awt / image / PixelGrabber.js
index 6653dd0..15445ab 100644 (file)
-Clazz.declarePackage ("java.awt.image");\r
-Clazz.load (["java.awt.image.ImageConsumer"], "java.awt.image.PixelGrabber", ["java.awt.image.ColorModel", "swingjs.JSToolkit"], function () {\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.producer = null;\r
-this.dstX = 0;\r
-this.dstY = 0;\r
-this.dstW = 0;\r
-this.dstH = 0;\r
-this.imageModel = null;\r
-this.bytePixels = null;\r
-this.intPixels = null;\r
-this.dstOff = 0;\r
-this.dstScan = 0;\r
-this.grabbing = false;\r
-this.flags = 0;\r
-Clazz.instantialize (this, arguments);\r
-}, java.awt.image, "PixelGrabber", null, java.awt.image.ImageConsumer);\r
-Clazz.makeConstructor (c$, \r
-function (img, x, y, w, h, pix, off, scansize) {\r
-this.construct (img.getSource (), x, y, w, h, pix, off, scansize);\r
-}, "java.awt.Image,~N,~N,~N,~N,~A,~N,~N");\r
-Clazz.makeConstructor (c$, \r
-function (ip, x, y, w, h, pix, off, scansize) {\r
-this.producer = ip;\r
-this.dstX = x;\r
-this.dstY = y;\r
-this.dstW = w;\r
-this.dstH = h;\r
-this.dstOff = off;\r
-this.dstScan = scansize;\r
-this.intPixels = pix;\r
-this.imageModel = java.awt.image.ColorModel.getRGBdefault ();\r
-}, "java.awt.image.ImageProducer,~N,~N,~N,~N,~A,~N,~N");\r
-Clazz.makeConstructor (c$, \r
-function (img, x, y, w, h, forceRGB) {\r
-this.producer = img.getSource ();\r
-this.dstX = x;\r
-this.dstY = y;\r
-this.dstW = w;\r
-this.dstH = h;\r
-if (forceRGB) {\r
-this.imageModel = java.awt.image.ColorModel.getRGBdefault ();\r
-}}, "java.awt.Image,~N,~N,~N,~N,~B");\r
-Clazz.defineMethod (c$, "startGrabbing", \r
-function () {\r
-if ((this.flags & 112) != 0) {\r
-return;\r
-}if (!this.grabbing) {\r
-this.grabbing = true;\r
-this.flags &= -129;\r
-this.producer.startProduction (this);\r
-}});\r
-Clazz.defineMethod (c$, "abortGrabbing", \r
-function () {\r
-this.imageComplete (4);\r
-});\r
-Clazz.defineMethod (c$, "grabPixels", \r
-function () {\r
-return this.grabPixels (0);\r
-});\r
-Clazz.defineMethod (c$, "grabPixels", \r
-function (ms) {\r
-if ((this.flags & 112) != 0) {\r
-return (this.flags & 48) != 0;\r
-}var end = ms + System.currentTimeMillis ();\r
-if (!this.grabbing) {\r
-this.grabbing = true;\r
-this.flags &= -129;\r
-this.producer.startProduction (this);\r
-}while (this.grabbing) {\r
-var timeout;\r
-if (ms == 0) {\r
-timeout = 0;\r
-} else {\r
-timeout = end - System.currentTimeMillis ();\r
-if (timeout <= 0) {\r
-break;\r
-}}swingjs.JSToolkit.warn ("wait in PixelGrabber.grabPixels");\r
-this.wait (timeout);\r
-}\r
-return (this.flags & 48) != 0;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "getStatus", \r
-function () {\r
-return this.flags;\r
-});\r
-Clazz.defineMethod (c$, "getWidth", \r
-function () {\r
-return (this.dstW < 0) ? -1 : this.dstW;\r
-});\r
-Clazz.defineMethod (c$, "getHeight", \r
-function () {\r
-return (this.dstH < 0) ? -1 : this.dstH;\r
-});\r
-Clazz.defineMethod (c$, "getPixels", \r
-function () {\r
-return (this.bytePixels == null) ? (this.intPixels) : (this.bytePixels);\r
-});\r
-Clazz.defineMethod (c$, "getColorModel", \r
-function () {\r
-return this.imageModel;\r
-});\r
-Clazz.overrideMethod (c$, "setDimensions", \r
-function (width, height) {\r
-if (this.dstW < 0) {\r
-this.dstW = width - this.dstX;\r
-}if (this.dstH < 0) {\r
-this.dstH = height - this.dstY;\r
-}if (this.dstW <= 0 || this.dstH <= 0) {\r
-this.imageComplete (3);\r
-} else if (this.intPixels == null && this.imageModel === java.awt.image.ColorModel.getRGBdefault ()) {\r
-this.intPixels =  Clazz.newIntArray (this.dstW * this.dstH, 0);\r
-this.dstScan = this.dstW;\r
-this.dstOff = 0;\r
-}this.flags |= (3);\r
-}, "~N,~N");\r
-Clazz.overrideMethod (c$, "setHints", \r
-function (hints) {\r
-return;\r
-}, "~N");\r
-Clazz.overrideMethod (c$, "setProperties", \r
-function (props) {\r
-return;\r
-}, "java.util.Hashtable");\r
-Clazz.overrideMethod (c$, "setColorModel", \r
-function (model) {\r
-return;\r
-}, "java.awt.image.ColorModel");\r
-Clazz.defineMethod (c$, "convertToRGB", \r
- function () {\r
-var size = this.dstW * this.dstH;\r
-var newpixels =  Clazz.newIntArray (size, 0);\r
-if (this.bytePixels != null) {\r
-for (var i = 0; i < size; i++) {\r
-newpixels[i] = this.imageModel.getRGB (this.bytePixels[i] & 0xff);\r
-}\r
-} else if (this.intPixels != null) {\r
-for (var i = 0; i < size; i++) {\r
-newpixels[i] = this.imageModel.getRGB (this.intPixels[i]);\r
-}\r
-}this.bytePixels = null;\r
-this.intPixels = newpixels;\r
-this.dstScan = this.dstW;\r
-this.dstOff = 0;\r
-this.imageModel = java.awt.image.ColorModel.getRGBdefault ();\r
-});\r
-Clazz.defineMethod (c$, "setPixels", \r
-function (srcX, srcY, srcW, srcH, model, pixels, srcOff, srcScan) {\r
-if (srcY < this.dstY) {\r
-var diff = this.dstY - srcY;\r
-if (diff >= srcH) {\r
-return;\r
-}srcOff += srcScan * diff;\r
-srcY += diff;\r
-srcH -= diff;\r
-}if (srcY + srcH > this.dstY + this.dstH) {\r
-srcH = (this.dstY + this.dstH) - srcY;\r
-if (srcH <= 0) {\r
-return;\r
-}}if (srcX < this.dstX) {\r
-var diff = this.dstX - srcX;\r
-if (diff >= srcW) {\r
-return;\r
-}srcOff += diff;\r
-srcX += diff;\r
-srcW -= diff;\r
-}if (srcX + srcW > this.dstX + this.dstW) {\r
-srcW = (this.dstX + this.dstW) - srcX;\r
-if (srcW <= 0) {\r
-return;\r
-}}var dstPtr = this.dstOff + (srcY - this.dstY) * this.dstScan + (srcX - this.dstX);\r
-if (this.intPixels == null) {\r
-if (this.bytePixels == null) {\r
-this.bytePixels =  Clazz.newByteArray (this.dstW * this.dstH, 0);\r
-this.dstScan = this.dstW;\r
-this.dstOff = 0;\r
-this.imageModel = model;\r
-} else if (this.imageModel !== model) {\r
-this.convertToRGB ();\r
-}if (this.bytePixels != null) {\r
-for (var h = srcH; h > 0; h--) {\r
-System.arraycopy (pixels, srcOff, this.bytePixels, dstPtr, srcW);\r
-srcOff += srcScan;\r
-dstPtr += this.dstScan;\r
-}\r
-}}if (this.intPixels != null) {\r
-var dstRem = this.dstScan - srcW;\r
-var srcRem = srcScan - srcW;\r
-for (var h = srcH; h > 0; h--) {\r
-for (var w = srcW; w > 0; w--) {\r
-this.intPixels[dstPtr++] = model.getRGB (pixels[srcOff++] & 0xff);\r
-}\r
-srcOff += srcRem;\r
-dstPtr += dstRem;\r
-}\r
-}this.flags |= 8;\r
-}, "~N,~N,~N,~N,java.awt.image.ColorModel,~A,~N,~N");\r
-Clazz.defineMethod (c$, "setPixels", \r
-function (srcX, srcY, srcW, srcH, model, pixels, srcOff, srcScan) {\r
-if (srcY < this.dstY) {\r
-var diff = this.dstY - srcY;\r
-if (diff >= srcH) {\r
-return;\r
-}srcOff += srcScan * diff;\r
-srcY += diff;\r
-srcH -= diff;\r
-}if (srcY + srcH > this.dstY + this.dstH) {\r
-srcH = (this.dstY + this.dstH) - srcY;\r
-if (srcH <= 0) {\r
-return;\r
-}}if (srcX < this.dstX) {\r
-var diff = this.dstX - srcX;\r
-if (diff >= srcW) {\r
-return;\r
-}srcOff += diff;\r
-srcX += diff;\r
-srcW -= diff;\r
-}if (srcX + srcW > this.dstX + this.dstW) {\r
-srcW = (this.dstX + this.dstW) - srcX;\r
-if (srcW <= 0) {\r
-return;\r
-}}if (this.intPixels == null) {\r
-if (this.bytePixels == null) {\r
-this.intPixels =  Clazz.newIntArray (this.dstW * this.dstH, 0);\r
-this.dstScan = this.dstW;\r
-this.dstOff = 0;\r
-this.imageModel = model;\r
-} else {\r
-this.convertToRGB ();\r
-}}var dstPtr = this.dstOff + (srcY - this.dstY) * this.dstScan + (srcX - this.dstX);\r
-if (this.imageModel === model) {\r
-for (var h = srcH; h > 0; h--) {\r
-System.arraycopy (pixels, srcOff, this.intPixels, dstPtr, srcW);\r
-srcOff += srcScan;\r
-dstPtr += this.dstScan;\r
-}\r
-} else {\r
-if (this.imageModel !== java.awt.image.ColorModel.getRGBdefault ()) {\r
-this.convertToRGB ();\r
-}var dstRem = this.dstScan - srcW;\r
-var srcRem = srcScan - srcW;\r
-for (var h = srcH; h > 0; h--) {\r
-for (var w = srcW; w > 0; w--) {\r
-this.intPixels[dstPtr++] = model.getRGB (pixels[srcOff++]);\r
-}\r
-srcOff += srcRem;\r
-dstPtr += dstRem;\r
-}\r
-}this.flags |= 8;\r
-}, "~N,~N,~N,~N,java.awt.image.ColorModel,~A,~N,~N");\r
-Clazz.overrideMethod (c$, "imageComplete", \r
-function (status) {\r
-this.grabbing = false;\r
-switch (status) {\r
-default:\r
-case 1:\r
-this.flags |= 192;\r
-break;\r
-case 4:\r
-this.flags |= 128;\r
-break;\r
-case 3:\r
-this.flags |= 32;\r
-break;\r
-case 2:\r
-this.flags |= 16;\r
-break;\r
-}\r
-this.producer.removeConsumer (this);\r
-}, "~N");\r
-Clazz.defineMethod (c$, "status", \r
-function () {\r
-return this.flags;\r
-});\r
-Clazz.defineStatics (c$,\r
-"GRABBEDBITS", (48),\r
-"DONEBITS", (112));\r
-});\r
+Clazz.declarePackage ("java.awt.image");
+Clazz.load (["java.awt.image.ImageConsumer"], "java.awt.image.PixelGrabber", ["java.awt.image.ColorModel", "swingjs.JSToolkit"], function () {
+c$ = Clazz.decorateAsClass (function () {
+this.producer = null;
+this.dstX = 0;
+this.dstY = 0;
+this.dstW = 0;
+this.dstH = 0;
+this.imageModel = null;
+this.bytePixels = null;
+this.intPixels = null;
+this.dstOff = 0;
+this.dstScan = 0;
+this.grabbing = false;
+this.flags = 0;
+Clazz.instantialize (this, arguments);
+}, java.awt.image, "PixelGrabber", null, java.awt.image.ImageConsumer);
+Clazz.makeConstructor (c$, 
+function (img, x, y, w, h, pix, off, scansize) {
+this.construct (img.getSource (), x, y, w, h, pix, off, scansize);
+}, "java.awt.Image,~N,~N,~N,~N,~A,~N,~N");
+Clazz.makeConstructor (c$, 
+function (ip, x, y, w, h, pix, off, scansize) {
+this.producer = ip;
+this.dstX = x;
+this.dstY = y;
+this.dstW = w;
+this.dstH = h;
+this.dstOff = off;
+this.dstScan = scansize;
+this.intPixels = pix;
+this.imageModel = java.awt.image.ColorModel.getRGBdefault ();
+}, "java.awt.image.ImageProducer,~N,~N,~N,~N,~A,~N,~N");
+Clazz.makeConstructor (c$, 
+function (img, x, y, w, h, forceRGB) {
+this.producer = img.getSource ();
+this.dstX = x;
+this.dstY = y;
+this.dstW = w;
+this.dstH = h;
+if (forceRGB) {
+this.imageModel = java.awt.image.ColorModel.getRGBdefault ();
+}}, "java.awt.Image,~N,~N,~N,~N,~B");
+Clazz.defineMethod (c$, "startGrabbing", 
+function () {
+if ((this.flags & 112) != 0) {
+return;
+}if (!this.grabbing) {
+this.grabbing = true;
+this.flags &= -129;
+this.producer.startProduction (this);
+}});
+Clazz.defineMethod (c$, "abortGrabbing", 
+function () {
+this.imageComplete (4);
+});
+Clazz.defineMethod (c$, "grabPixels", 
+function () {
+return this.grabPixels (0);
+});
+Clazz.defineMethod (c$, "grabPixels", 
+function (ms) {
+if ((this.flags & 112) != 0) {
+return (this.flags & 48) != 0;
+}var end = ms + System.currentTimeMillis ();
+if (!this.grabbing) {
+this.grabbing = true;
+this.flags &= -129;
+this.producer.startProduction (this);
+}while (this.grabbing) {
+var timeout;
+if (ms == 0) {
+timeout = 0;
+} else {
+timeout = end - System.currentTimeMillis ();
+if (timeout <= 0) {
+break;
+}}swingjs.JSToolkit.warn ("wait in PixelGrabber.grabPixels");
+this.wait (timeout);
+}
+return (this.flags & 48) != 0;
+}, "~N");
+Clazz.defineMethod (c$, "getStatus", 
+function () {
+return this.flags;
+});
+Clazz.defineMethod (c$, "getWidth", 
+function () {
+return (this.dstW < 0) ? -1 : this.dstW;
+});
+Clazz.defineMethod (c$, "getHeight", 
+function () {
+return (this.dstH < 0) ? -1 : this.dstH;
+});
+Clazz.defineMethod (c$, "getPixels", 
+function () {
+return (this.bytePixels == null) ? (this.intPixels) : (this.bytePixels);
+});
+Clazz.defineMethod (c$, "getColorModel", 
+function () {
+return this.imageModel;
+});
+Clazz.overrideMethod (c$, "setDimensions", 
+function (width, height) {
+if (this.dstW < 0) {
+this.dstW = width - this.dstX;
+}if (this.dstH < 0) {
+this.dstH = height - this.dstY;
+}if (this.dstW <= 0 || this.dstH <= 0) {
+this.imageComplete (3);
+} else if (this.intPixels == null && this.imageModel === java.awt.image.ColorModel.getRGBdefault ()) {
+this.intPixels =  Clazz.newIntArray (this.dstW * this.dstH, 0);
+this.dstScan = this.dstW;
+this.dstOff = 0;
+}this.flags |= (3);
+}, "~N,~N");
+Clazz.overrideMethod (c$, "setHints", 
+function (hints) {
+return;
+}, "~N");
+Clazz.overrideMethod (c$, "setProperties", 
+function (props) {
+return;
+}, "java.util.Hashtable");
+Clazz.overrideMethod (c$, "setColorModel", 
+function (model) {
+return;
+}, "java.awt.image.ColorModel");
+Clazz.defineMethod (c$, "convertToRGB", 
+ function () {
+var size = this.dstW * this.dstH;
+var newpixels =  Clazz.newIntArray (size, 0);
+if (this.bytePixels != null) {
+for (var i = 0; i < size; i++) {
+newpixels[i] = this.imageModel.getRGB (this.bytePixels[i] & 0xff);
+}
+} else if (this.intPixels != null) {
+for (var i = 0; i < size; i++) {
+newpixels[i] = this.imageModel.getRGB (this.intPixels[i]);
+}
+}this.bytePixels = null;
+this.intPixels = newpixels;
+this.dstScan = this.dstW;
+this.dstOff = 0;
+this.imageModel = java.awt.image.ColorModel.getRGBdefault ();
+});
+Clazz.defineMethod (c$, "setPixels", 
+function (srcX, srcY, srcW, srcH, model, pixels, srcOff, srcScan) {
+if (srcY < this.dstY) {
+var diff = this.dstY - srcY;
+if (diff >= srcH) {
+return;
+}srcOff += srcScan * diff;
+srcY += diff;
+srcH -= diff;
+}if (srcY + srcH > this.dstY + this.dstH) {
+srcH = (this.dstY + this.dstH) - srcY;
+if (srcH <= 0) {
+return;
+}}if (srcX < this.dstX) {
+var diff = this.dstX - srcX;
+if (diff >= srcW) {
+return;
+}srcOff += diff;
+srcX += diff;
+srcW -= diff;
+}if (srcX + srcW > this.dstX + this.dstW) {
+srcW = (this.dstX + this.dstW) - srcX;
+if (srcW <= 0) {
+return;
+}}var dstPtr = this.dstOff + (srcY - this.dstY) * this.dstScan + (srcX - this.dstX);
+if (this.intPixels == null) {
+if (this.bytePixels == null) {
+this.bytePixels =  Clazz.newByteArray (this.dstW * this.dstH, 0);
+this.dstScan = this.dstW;
+this.dstOff = 0;
+this.imageModel = model;
+} else if (this.imageModel !== model) {
+this.convertToRGB ();
+}if (this.bytePixels != null) {
+for (var h = srcH; h > 0; h--) {
+System.arraycopy (pixels, srcOff, this.bytePixels, dstPtr, srcW);
+srcOff += srcScan;
+dstPtr += this.dstScan;
+}
+}}if (this.intPixels != null) {
+var dstRem = this.dstScan - srcW;
+var srcRem = srcScan - srcW;
+for (var h = srcH; h > 0; h--) {
+for (var w = srcW; w > 0; w--) {
+this.intPixels[dstPtr++] = model.getRGB (pixels[srcOff++] & 0xff);
+}
+srcOff += srcRem;
+dstPtr += dstRem;
+}
+}this.flags |= 8;
+}, "~N,~N,~N,~N,java.awt.image.ColorModel,~A,~N,~N");
+Clazz.defineMethod (c$, "setPixels", 
+function (srcX, srcY, srcW, srcH, model, pixels, srcOff, srcScan) {
+if (srcY < this.dstY) {
+var diff = this.dstY - srcY;
+if (diff >= srcH) {
+return;
+}srcOff += srcScan * diff;
+srcY += diff;
+srcH -= diff;
+}if (srcY + srcH > this.dstY + this.dstH) {
+srcH = (this.dstY + this.dstH) - srcY;
+if (srcH <= 0) {
+return;
+}}if (srcX < this.dstX) {
+var diff = this.dstX - srcX;
+if (diff >= srcW) {
+return;
+}srcOff += diff;
+srcX += diff;
+srcW -= diff;
+}if (srcX + srcW > this.dstX + this.dstW) {
+srcW = (this.dstX + this.dstW) - srcX;
+if (srcW <= 0) {
+return;
+}}if (this.intPixels == null) {
+if (this.bytePixels == null) {
+this.intPixels =  Clazz.newIntArray (this.dstW * this.dstH, 0);
+this.dstScan = this.dstW;
+this.dstOff = 0;
+this.imageModel = model;
+} else {
+this.convertToRGB ();
+}}var dstPtr = this.dstOff + (srcY - this.dstY) * this.dstScan + (srcX - this.dstX);
+if (this.imageModel === model) {
+for (var h = srcH; h > 0; h--) {
+System.arraycopy (pixels, srcOff, this.intPixels, dstPtr, srcW);
+srcOff += srcScan;
+dstPtr += this.dstScan;
+}
+} else {
+if (this.imageModel !== java.awt.image.ColorModel.getRGBdefault ()) {
+this.convertToRGB ();
+}var dstRem = this.dstScan - srcW;
+var srcRem = srcScan - srcW;
+for (var h = srcH; h > 0; h--) {
+for (var w = srcW; w > 0; w--) {
+this.intPixels[dstPtr++] = model.getRGB (pixels[srcOff++]);
+}
+srcOff += srcRem;
+dstPtr += dstRem;
+}
+}this.flags |= 8;
+}, "~N,~N,~N,~N,java.awt.image.ColorModel,~A,~N,~N");
+Clazz.overrideMethod (c$, "imageComplete", 
+function (status) {
+this.grabbing = false;
+switch (status) {
+default:
+case 1:
+this.flags |= 192;
+break;
+case 4:
+this.flags |= 128;
+break;
+case 3:
+this.flags |= 32;
+break;
+case 2:
+this.flags |= 16;
+break;
+}
+this.producer.removeConsumer (this);
+}, "~N");
+Clazz.defineMethod (c$, "status", 
+function () {
+return this.flags;
+});
+Clazz.defineStatics (c$,
+"GRABBEDBITS", (48),
+"DONEBITS", (112));
+});