📄 g.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
package pica.ui;
import mainn.cm;
import java.io.PrintStream;
import java.util.Vector;
import javax.microedition.lcdui.*;
// Referenced classes of package pica.ui:
// b, a, f, h
public final class g extends b
implements CommandListener
{
private static int i = 1;
private static int j = 10;
private int k;
private int l;
private int m;
private int n;
private int o;
private int p;
private int q;
private int r;
private int s;
private int t;
private int u;
private Vector v;
private int w;
private int x;
private int y;
private static int z = 10;
private Font A;
private Displayable B;
private int C;
private Image D;
private byte E;
private int F;
private boolean G;
private int H;
private String I;
private int J;
private boolean K;
public g(h h1, String s1, int i1, int j1, int k1, int l1)
{
super(h1, s1);
y = 0;
A = Font.getFont(0, 0, 8);
C = 0xffffff;
D = null;
G = false;
H = 5;
super.e = i1;
super.f = j1;
n = i1;
o = j1;
super.g = k1;
k = l1;
l = l1;
m = k1;
x = 0;
w = -1;
v = new Vector();
E = 1;
y = 0;
}
protected final synchronized void agp(Graphics g1)
{
g1.setFont(A);
l();
int i1 = g1.getClipX();
int j1 = g1.getClipY();
int k1 = g1.getClipWidth();
int l1 = g1.getClipHeight();
g1.setClip(n, o, m, k);
b(g1);
x = -1;
if (v == null)
return;
for (int i2 = 0; i2 < v.size(); i2++)
{
Object aobj[] = (Object[])v.elementAt(i2);
if (i2 == w)
aobj[8] = new Boolean(true);
else
aobj[8] = new Boolean(false);
if (((Integer)aobj[5]).intValue() + (((Integer)aobj[7]).intValue() - 1) * (((Integer)aobj[2]).intValue() + i) <= o - super.f || ((Integer)aobj[5]).intValue() >= (o - super.f) + k + ((Integer)aobj[2]).intValue())
continue;
if (((Boolean)aobj[6]).booleanValue())
x = x != -1 ? x : i2;
//System.out.println("aobjlength:"+aobj.length);
a(g1, aobj);
}
if (y < 0)
{
super.f = super.f - (Math.abs(y) <= z ? Math.abs(y) : z);
y = y + z;
if (y > 0)
y = 0;
if (super.f < -(super.h - k - o))
{
super.f = -(super.h - k - o);
y = 0;
}
} else
if (y > 0)
{
super.f = super.f + (y <= z ? y : z);
y = y - z;
if (y < 0)
y = 0;
if (super.f > o)
{
super.f = o;
y = 0;
}
}
a(g1, J);
g1.setClip(i1, j1, k1, l1);
if (G)
{
if (H == 0)
{
a((byte)0, F);
return;
}
H--;
}
}
private void l()
{
if (E == 1)
return;
if (!pica.ui.h.g)
{
super.e = p;
super.f = q;
n = r;
o = s;
m = super.g;
k = l;
E = 1;
return;
}
switch (E)
{
case 2: // '\002'
if (m < super.g)
{
m = m + 4 * z <= super.g ? m + 4 * z : super.g;
super.e = super.e + 4 * z <= 0 ? super.e + 4 * z : 0;
return;
} else
{
E = 1;
return;
}
case 3: // '\003'
if (super.e > p || super.f > q)
{
n = n - 2 * z >= r ? n - 2 * z : r;
super.e = super.e - 2 * z >= p ? super.e - 2 * z : p;
o = o - 2 * z >= s ? o - 2 * z : s;
super.f = super.f - 2 * z >= q ? super.f - 2 * z : q;
m = m + 4 * z <= super.g ? m + 4 * z : super.g;
k = k + 4 * z <= l ? k + 4 * z : l;
return;
}
E = 1;
break;
}
}
public final void a(int i1)
{
C = i1;
}
public final void a(Image image, int i1, int j1)
{
D = image;
t = i1;
u = j1;
}
public final void a(byte byte0)
{
switch (byte0)
{
case 2: // '\002'
super.e = -super.g + 1;
n = 0;
m = 1;
E = byte0;
return;
case 3: // '\003'
p = super.e;
q = super.f;
r = n;
s = o;
l = k;
super.e += super.g / 2 - 1;
super.f += l / 2 - 1;
n += super.g / 2 - 1;
o += l / 2 - 1;
m = 2;
k = 2;
E = byte0;
break;
}
}
public final String b(int i1)
{
byte byte0;
if ((byte0 = ((Byte)((Object[])v.elementAt(i1))[0]).byteValue()) == 6 || byte0 == 7)
{
if ((String)((Object[])v.elementAt(i1))[16] != null)
return (String)((Object[])v.elementAt(i1))[16];
if ((String)((Object[])v.elementAt(i1))[12] != null)
return (String)((Object[])v.elementAt(i1))[12];
}
return null;
}
public final int c(int i1)
{
byte byte0;
if ((byte0 = ((Byte)((Object[])v.elementAt(i1))[0]).byteValue()) == 7)
return ((List)((Object[])v.elementAt(i1))[17]).getSelectedIndex();
else
throw new IllegalArgumentException("所指定的元素不是下拉列表框!");
}
public final boolean d(int i1)
{
byte byte0;
if ((byte0 = ((Byte)((Object[])v.elementAt(i1))[0]).byteValue()) == 8)
return ((Boolean)((Object[])v.elementAt(i1))[17]).booleanValue();
else
throw new IllegalArgumentException("所指定的元素不是复选框!");
}
private void b(Graphics g1)
{
g1.setColor(C);
g1.fillRect(n, o, m, k);
if (D != null)
g1.drawImage(D, t - n, u - o, 20);
}
private void a(Graphics g1, Object aobj[])
{
switch (((Byte)aobj[0]).byteValue())
{
case 1: // '\001'
b(g1, aobj);
return;
case 2: // '\002'
c(g1, aobj);
return;
case 3: // '\003'
f(g1, aobj);
return;
case 4: // '\004'
e(g1, aobj);
return;
case 5: // '\005'
return;
case 6: // '\006'
g(g1, aobj);
return;
case 7: // '\007'
h(g1, aobj);
return;
case 8: // '\b'
i(g1, aobj);
return;
case 9: // '\t'
j(g1, aobj);
return;
case 16: // '\020'
k(g1, aobj);
// fall through
case 10: // '\n'
case 11: // '\013'
case 12: // '\f'
case 13: // '\r'
case 14: // '\016'
case 15: // '\017'
case 17: // '\021'
default:
return;
}
}
private void b(Graphics g1, Object aobj[])
{
g1.setColor(((Integer)aobj[10]).intValue());
if (((Boolean)aobj[6]).booleanValue())
{
g1.drawString((String)aobj[11], ((Integer)aobj[4]).intValue() + super.e, ((Integer)aobj[5]).intValue() + super.f, 36);
return;
} else
{
d(g1, aobj);
return;
}
}
private void c(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
((Integer)aobj[2]).intValue();
g1.setColor(((Integer)aobj[10]).intValue());
if (((Boolean)aobj[6]).booleanValue())
{
if (((Boolean)aobj[8]).booleanValue())
{
pica.ui.f.a((String)aobj[11], i1 + super.e, j1 + super.f, 0xac2a0a, -1, 36, g1);
return;
} else
{
g1.drawString((String)aobj[11], i1 + super.e, j1 + super.f, 36);
return;
}
} else
{
d(g1, aobj);
return;
}
}
private void d(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
String as[] = (String[])aobj[11];
int k1 = ((Integer)aobj[2]).intValue();
for (int l1 = 0; l1 < as.length; l1++)
{
if (j1 > o - super.f && j1 - k1 < (o - super.f) + k)
if (((Boolean)aobj[8]).booleanValue() && ((Byte)aobj[0]).byteValue() == 2)
{
pica.ui.f.a(as[l1], i1 + super.e, j1 + super.f, 0xac2a0a, -1, 36, g1);
} else
{
g1.setColor(((Integer)aobj[10]).intValue());
g1.drawString(as[l1], i1 + super.e, j1 + super.f, 36);
}
j1 = j1 + k1 + i;
}
}
private void e(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
int k1 = ((Integer)aobj[2]).intValue();
int l1 = ((Integer)aobj[3]).intValue();
g1.setColor(((Integer)aobj[10]).intValue());
g1.drawLine(i1 + super.e, (j1 + super.f) - k1 / 2, (i1 + super.e + l1) - 2 * j - k1 / 2, (j1 + super.f) - k1 / 2);
}
private void f(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
Image image;
if ((image = (Image)aobj[11]) == null)
{
return;
} else
{
g1.drawImage(image, i1 + super.e, j1 + super.f, 36);
return;
}
}
private void g(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
int k1 = ((Integer)aobj[2]).intValue();
((Integer)aobj[3]).intValue();
int l1 = ((Integer)aobj[13]).intValue();
boolean flag = ((Boolean)aobj[8]).booleanValue();
String s1 = (String)aobj[11];
String s2 = (String)aobj[12];
int i2 = i1 + super.e;
int j2 = j1 + super.f;
g1.setColor(((Integer)aobj[10]).intValue());
g1.drawString(s1, i2, j2 - 2, 36);
int k2;
if (s1.length() == 0)
k2 = 0;
else
k2 = A.stringWidth(s1) + 5;
if (!((Boolean)aobj[6]).booleanValue())
j2 += k1;
else
i2 += k2;
g1.setColor(250, 250, 250);
g1.fillRect(i2, j2 - k1, l1, k1);
g1.setColor(0, 0, 0);
g1.setClip(i2, j2 - k1, l1, k1);
if ((((Integer)aobj[18]).intValue() & 0x10000) > 0)
{
StringBuffer stringbuffer = new StringBuffer();
for (int l2 = 0; l2 < s2.length(); l2++)
stringbuffer.append('*');
g1.drawString(stringbuffer.toString(), i2 + 2, j2 - 2, 36);
} else
{
// System.out.println("字符:"+s2+":x:"+(i2+2)+":y:"+(j2-2));
g1.drawString(s2, i2 + 2, j2 - 2, 36);
}
g1.setClip(n, o, m, k);
a(g1, i2, j2 - k1, l1, k1, ((Byte)aobj[0]).byteValue(), flag);
}
private void h(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
int k1 = ((Integer)aobj[2]).intValue();
((Integer)aobj[3]).intValue();
int l1 = ((Integer)aobj[13]).intValue();
boolean flag = ((Boolean)aobj[8]).booleanValue();
String s1 = (String)aobj[11];
List list = (List)aobj[17];
int i2 = i1 + super.e;
int j2 = j1 + super.f;
g1.setColor(((Integer)aobj[10]).intValue());
g1.drawString(s1, i2, j2 - 2, 36);
int k2;
if (s1.length() == 0)
k2 = 0;
else
k2 = A.stringWidth(s1) + 5;
if (!((Boolean)aobj[6]).booleanValue())
j2 += k1;
else
i2 += k2;
g1.setColor(250, 250, 250);
g1.fillRect(i2, j2 - k1, l1, k1);
g1.setColor(0, 0, 0);
g1.drawString(list.getString(list.getSelectedIndex()).trim(), i2 + 2, j2 - 2, 36);
a(g1, i2, j2 - k1, l1, k1, ((Byte)aobj[0]).byteValue(), flag);
if (list.getImage(list.getSelectedIndex()) != null)
g1.drawImage(list.getImage(list.getSelectedIndex()), i2 + 2, (j2 - k1) + 2, 20);
}
private void i(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
int k1 = ((Integer)aobj[2]).intValue();
boolean flag = ((Boolean)aobj[8]).booleanValue();
int l1 = i1 + super.e;
int i2;
int j2 = (i2 = j1 + super.f) - k1 / 2 - 4;
a(g1, l1, j2, 10, 10, ((Byte)aobj[0]).byteValue(), flag);
if (((Boolean)aobj[17]).booleanValue())
{
g1.setColor(105, 105, 105);
g1.drawLine(l1 + 3, j2 + 5, l1 + 5, j2 + 7);
g1.drawLine(l1 + 5, j2 + 7, l1 + 11, j2 + 1);
g1.setColor(255, 0, 0);
g1.drawLine(l1 + 2, j2 + 5, l1 + 4, j2 + 7);
g1.drawLine(l1 + 4, j2 + 7, l1 + 10, j2 + 1);
}
g1.setColor(((Integer)aobj[10]).intValue());
g1.drawString((String)aobj[11], l1 + 12, i2, 36);
}
private void j(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
Object aobj1[][] = (Object[][])aobj[11];
int k1 = ((Integer)aobj[2]).intValue();
for (int l1 = 0; l1 < aobj1.length; l1++)
{
if (j1 > o - super.f && j1 - k1 < (o - super.f) + k)
{
g1.setColor(((Integer)aobj[10]).intValue());
pica.ui.a.a(g1, aobj1[l1], i1 + super.e, j1 + super.f, 36);
}
j1 = j1 + k1 + i;
}
}
private void k(Graphics g1, Object aobj[])
{
int i1 = ((Integer)aobj[4]).intValue();
int j1 = ((Integer)aobj[5]).intValue();
int k1 = ((Integer)aobj[2]).intValue();
int l1 = ((Integer)aobj[3]).intValue();
int i2 = i1 + super.e;
int j2 = j1 + super.f;
boolean flag = ((Boolean)aobj[8]).booleanValue();
g1.setColor(105, 105, 105);
g1.drawRect(i2, j1, l1, k1);
g1.setColor(250, 250, 250);
g1.fillRect(i2, (j2 - k1) + 1, l1 - 1, k1 - 1);
g1.setColor(105, 105, 105);
g1.drawLine(i2, (j2 - k1) + 1, i2, j2 - 1);
g1.setColor(220, 220, 220);
g1.drawLine(i2 + 1, j2 - 1, (i2 + l1) - 1, j2 - 1);
g1.drawLine(i2 + 2, j2 - 2, (i2 + l1) - 1, j2 - 2);
g1.drawLine((i2 + l1) - 1, j2 - 1, (i2 + l1) - 1, (j2 - k1) + 1);
g1.drawLine((i2 + l1) - 2, j2 - 1, (i2 + l1) - 2, (j2 - k1) + 2);
g1.setColor(0, 0, 0);
g1.drawString((String)aobj[11], i2 + 2, j2 - 2, 36);
if (flag)
{
g1.setColor(128, 0, 0);
g1.drawRect(i2, j2 - k1, l1, k1);
g1.setColor(255, 0, 0);
g1.drawRect(i2 - 1, j2 - k1 - 1, l1, k1);
}
}
private static void a(Graphics g1, int i1, int j1, int k1, int l1, byte byte0, boolean flag)
{
g1.setColor(105, 105, 105);
g1.drawRect(i1, j1, k1, l1);
g1.setColor(220, 220, 220);
g1.drawLine(i1 + 1, j1 + 1, (i1 + k1) - 2, j1 + 1);
g1.drawLine(i1 + 1, j1 + 1, i1 + 1, (j1 + l1) - 2);
if (byte0 == 7)
{
int i2 = (i1 + k1) - l1;
g1.setColor(250, 250, 250);
g1.fillRect(i2, j1 + 1, l1 - 1, l1 - 1);
g1.setColor(105, 105, 105);
g1.drawLine(i2, j1 + 1, i2, (j1 + l1) - 1);
g1.setColor(220, 220, 220);
g1.drawLine(i2 + 1, (j1 + l1) - 1, (i1 + k1) - 1, (j1 + l1) - 1);
g1.drawLine(i2 + 2, (j1 + l1) - 2, (i1 + k1) - 1, (j1 + l1) - 2);
g1.drawLine((i1 + k1) - 1, (j1 + l1) - 1, (i1 + k1) - 1, j1 + 1);
g1.drawLine((i1 + k1) - 2, (j1 + l1) - 1, (i1 + k1) - 2, j1 + 2);
}
if (flag)
{
g1.setColor(128, 0, 0);
g1.drawRect(i1, j1, k1, l1);
g1.setColor(255, 0, 0);
g1.drawRect(i1 - 1, j1 - 1, k1, l1);
}
}
public final synchronized void a()
{
int i1 = 0;
int j1 = 0;
int k1 = j;
int l1 = i;
for (int i2 = 0; i2 < v.size(); i2++)
{
Object aobj[];
if (((Byte)(aobj = (Object[])v.elementAt(i2))[0]).byteValue() == 5)
{
i1++;
if (k1 == j)
{
l1 = l1 + A.getHeight() + i;
} else
{
k1 = j;
l1 += i;
}
aobj[4] = new Integer(k1);
aobj[5] = new Integer(l1);
j1 = 0;
continue;
}
if (k1 != j && k1 + ((Integer)aobj[3]).intValue() > super.g)
{
i1++;
k1 = j;
aobj[4] = new Integer(k1);
j1 = ((Integer)aobj[2]).intValue();
l1 = l1 + j1 + i;
aobj[5] = new Integer(l1);
aobj[1] = new Integer(i1);
if (((Boolean)aobj[6]).booleanValue())
{
k1 = k1 + ((Integer)aobj[3]).intValue() + j;
} else
{
k1 = super.g;
l1 += (((Integer)aobj[7]).intValue() - 1) * (((Integer)aobj[2]).intValue() + i);
}
continue;
}
if (((Integer)aobj[2]).intValue() > j1)
{
l1 = (l1 - j1) + ((Integer)aobj[2]).intValue();
j1 = ((Integer)aobj[2]).intValue();
Object aobj2[];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -