JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / site / j2s / java / awt / image / DataBufferInt.js
1 Clazz.declarePackage ("java.awt.image");\r
2 Clazz.load (["java.awt.image.DataBuffer"], "java.awt.image.DataBufferInt", ["JU.AU", "jssun.java2d.StateTrackable"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.data = null;\r
5 this.bankdata = null;\r
6 Clazz.instantialize (this, arguments);\r
7 }, java.awt.image, "DataBufferInt", java.awt.image.DataBuffer);\r
8 Clazz.makeConstructor (c$, \r
9 function (size) {\r
10 Clazz.superConstructor (this, java.awt.image.DataBufferInt, [jssun.java2d.StateTrackable.State.STABLE, 3, size]);\r
11 this.data =  Clazz.newIntArray (size, 0);\r
12 this.bankdata =  Clazz.newIntArray (1, 0);\r
13 this.bankdata[0] = this.data;\r
14 }, "~N");\r
15 Clazz.makeConstructor (c$, \r
16 function (size, numBanks) {\r
17 Clazz.superConstructor (this, java.awt.image.DataBufferInt, [jssun.java2d.StateTrackable.State.STABLE, 3, size, numBanks]);\r
18 this.bankdata =  Clazz.newIntArray (numBanks, 0);\r
19 for (var i = 0; i < numBanks; i++) {\r
20 this.bankdata[i] =  Clazz.newIntArray (size, 0);\r
21 }\r
22 this.data = this.bankdata[0];\r
23 }, "~N,~N");\r
24 Clazz.makeConstructor (c$, \r
25 function (dataArray, size) {\r
26 Clazz.superConstructor (this, java.awt.image.DataBufferInt, [jssun.java2d.StateTrackable.State.UNTRACKABLE, 3, size]);\r
27 if (JU.AU.isAI (dataArray)) {\r
28 this.data = dataArray;\r
29 this.bankdata =  Clazz.newIntArray (1, 0);\r
30 this.bankdata[0] = this.data;\r
31 } else {\r
32 this.banks = dataArray.length;\r
33 this.bankdata = dataArray.clone ();\r
34 this.data = this.bankdata[0];\r
35 }}, "~A,~N");\r
36 Clazz.makeConstructor (c$, \r
37 function (dataArray, size, offset) {\r
38 Clazz.superConstructor (this, java.awt.image.DataBufferInt, [jssun.java2d.StateTrackable.State.UNTRACKABLE, 3, size, 1, offset]);\r
39 this.data = dataArray;\r
40 this.bankdata =  Clazz.newIntArray (1, 0);\r
41 this.bankdata[0] = this.data;\r
42 }, "~A,~N,~N");\r
43 Clazz.makeConstructor (c$, \r
44 function (dataArray, size, offsets) {\r
45 Clazz.superConstructor (this, java.awt.image.DataBufferInt, [jssun.java2d.StateTrackable.State.UNTRACKABLE, 3, size, dataArray.length, offsets]);\r
46 this.bankdata = dataArray.clone ();\r
47 this.data = this.bankdata[0];\r
48 }, "~A,~N,~A");\r
49 Clazz.defineMethod (c$, "getData", \r
50 function () {\r
51 this.theTrackable.setUntrackable ();\r
52 return this.data;\r
53 });\r
54 Clazz.defineMethod (c$, "getData", \r
55 function (bank) {\r
56 this.theTrackable.setUntrackable ();\r
57 return this.bankdata[bank];\r
58 }, "~N");\r
59 Clazz.defineMethod (c$, "getBankData", \r
60 function () {\r
61 this.theTrackable.setUntrackable ();\r
62 return this.bankdata.clone ();\r
63 });\r
64 Clazz.defineMethod (c$, "getElem", \r
65 function (i) {\r
66 return this.data[i + this.offset];\r
67 }, "~N");\r
68 Clazz.defineMethod (c$, "getElem", \r
69 function (bank, i) {\r
70 return this.bankdata[bank][i + this.offsets[bank]];\r
71 }, "~N,~N");\r
72 Clazz.defineMethod (c$, "setElem", \r
73 function (i, val) {\r
74 this.data[i + this.offset] = val;\r
75 this.theTrackable.markDirty ();\r
76 }, "~N,~N");\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
81 }, "~N,~N,~N");\r
82 });\r