📄 slider.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
// Source File Name: Slider.java
package com.motorola.lwt;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
// Referenced classes of package com.motorola.lwt:
// Component, ComponentListener
public class Slider extends Component
{
public static final int SLIDER_DRAGGED = 1;
public static final int SLIDER_SET = 2;
boolean interactive;
int maxValue;
int value;
ComponentListener listener;
public Slider(boolean flag, int i, int j)
{
maxValue = 0;
listener = null;
interactive = flag;
acceptsKeyFocus = flag;
setValues(j, i, 0);
}
public void setComponentListener(ComponentListener componentlistener)
{
listener = componentlistener;
}
private synchronized void setValues(int i, int j, int k)
{
int l = value;
if(j <= 0)
j = 0;
if(i > j)
i = j;
if(i < 0)
i = 0;
maxValue = j;
value = i;
if(k != 0 && listener != null && l != i)
listener.processComponentEvent(this, k);
repaint();
}
public int getPreferredWidth()
{
return maxValue + 6;
}
public int getPreferredHeight()
{
return 16;
}
public synchronized int getValue()
{
return value;
}
public synchronized int getMaxValue()
{
return maxValue;
}
public void setValue(int i)
{
setValues(i, maxValue, 2);
}
public void setMaxValue(int i)
{
setValues(value, i, 2);
preferredWidthChanged();
}
protected boolean keyPressed(int i)
{
return keyRepeated(i);
}
protected boolean keyRepeated(int i)
{
if(interactive)
{
if(parent.getGameAction(i) == 2)
{
setValues(value - 1, maxValue, 1);
return true;
}
if(parent.getGameAction(i) == 5)
{
setValues(value + 1, maxValue, 1);
return true;
}
}
return false;
}
protected boolean keyReleased(int i)
{
if(interactive && listener != null && (parent.getGameAction(i) == 5 || parent.getGameAction(i) == 2))
{
listener.processComponentEvent(this, 2);
return true;
} else
{
return false;
}
}
protected void pointerPressed(int i, int j)
{
requestFocus();
pointerDragged(i, j);
}
protected void pointerDragged(int i, int j)
{
if(interactive)
setValues((i * maxValue) / (getWidth() - 4), maxValue, 1);
}
protected void pointerReleased(int i, int j)
{
if(interactive && listener != null)
listener.processComponentEvent(this, 2);
}
public void paint(Graphics g)
{
g.setColor(enabled ? 0 : 0x808080);
if(hasFocus())
g.drawRect(0, 0, getWidth() - 1, getHeight() - 1);
int i = ((getWidth() - 4) * value) / maxValue;
g.drawRect(2, 2, getWidth() - 5, getHeight() - 5);
g.setColor(0x808080);
g.fillRect(3, 3, i, getHeight() - 6);
g.setColor(enabled ? 0 : 0x808080);
if(interactive)
g.fillRect(i, 1, 4, getHeight() - 2);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -