1 Clazz.declarePackage ("java.awt.image");
\r
2 Clazz.load (["java.awt.image.DataBuffer"], "java.awt.image.DataBufferByte", ["JU.AU", "jssun.java2d.StateTrackable"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
5 this.bankdata = null;
\r
6 Clazz.instantialize (this, arguments);
\r
7 }, java.awt.image, "DataBufferByte", java.awt.image.DataBuffer);
\r
8 Clazz.makeConstructor (c$,
\r
10 Clazz.superConstructor (this, java.awt.image.DataBufferByte, [jssun.java2d.StateTrackable.State.STABLE, 0, size]);
\r
11 this.data = Clazz.newByteArray (size, 0);
\r
12 this.bankdata = Clazz.newByteArray (1, 0);
\r
13 this.bankdata[0] = this.data;
\r
15 Clazz.makeConstructor (c$,
\r
16 function (size, numBanks) {
\r
17 Clazz.superConstructor (this, java.awt.image.DataBufferByte, [jssun.java2d.StateTrackable.State.STABLE, 0, size, numBanks]);
\r
18 this.bankdata = Clazz.newByteArray (numBanks, 0);
\r
19 for (var i = 0; i < numBanks; i++) {
\r
20 this.bankdata[i] = Clazz.newByteArray (size, 0);
\r
22 this.data = this.bankdata[0];
\r
24 Clazz.makeConstructor (c$,
\r
25 function (dataArray, size) {
\r
26 Clazz.superConstructor (this, java.awt.image.DataBufferByte, [jssun.java2d.StateTrackable.State.UNTRACKABLE, 0, size]);
\r
27 if (JU.AU.isAI (dataArray)) {
\r
28 this.data = dataArray;
\r
29 this.bankdata = Clazz.newByteArray (1, 0);
\r
30 this.bankdata[0] = this.data;
\r
32 this.banks = dataArray.length;
\r
33 this.bankdata = dataArray.clone ();
\r
34 this.data = this.bankdata[0];
\r
36 Clazz.makeConstructor (c$,
\r
37 function (dataArray, size, offset) {
\r
38 Clazz.superConstructor (this, java.awt.image.DataBufferByte, [jssun.java2d.StateTrackable.State.UNTRACKABLE, 0, size, 1, offset]);
\r
39 this.data = dataArray;
\r
40 this.bankdata = Clazz.newByteArray (1, 0);
\r
41 this.bankdata[0] = this.data;
\r
43 Clazz.makeConstructor (c$,
\r
44 function (dataArray, size, offsets) {
\r
45 Clazz.superConstructor (this, java.awt.image.DataBufferByte, [jssun.java2d.StateTrackable.State.UNTRACKABLE, 0, size, dataArray.length, offsets]);
\r
46 this.bankdata = dataArray.clone ();
\r
47 this.data = this.bankdata[0];
\r
49 Clazz.defineMethod (c$, "getData",
\r
51 this.theTrackable.setUntrackable ();
\r
54 Clazz.defineMethod (c$, "getData",
\r
56 this.theTrackable.setUntrackable ();
\r
57 return this.bankdata[bank];
\r
59 Clazz.defineMethod (c$, "getBankData",
\r
61 this.theTrackable.setUntrackable ();
\r
62 return this.bankdata.clone ();
\r
64 Clazz.defineMethod (c$, "getElem",
\r
66 return (this.data[i + this.offset]) & 0xff;
\r
68 Clazz.defineMethod (c$, "getElem",
\r
69 function (bank, i) {
\r
70 return (this.bankdata[bank][i + this.offsets[bank]]) & 0xff;
\r
72 Clazz.defineMethod (c$, "setElem",
\r
74 this.data[i + this.offset] = val;
\r
75 this.theTrackable.markDirty ();
\r
77 Clazz.defineMethod (c$, "setElem",
\r
78 function (bank, i, val) {
\r
79 this.bankdata[bank][i + this.offsets[bank]] = val;
\r
80 this.theTrackable.markDirty ();
\r