?? inputdialog.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: InputDialog.java
package gnnt.MEBS.HQApplet;
import gnnt.MEBS.HQApplet.Indicator.IndicatorBase;
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.Dialog;
import java.awt.Font;
import java.awt.Frame;
import java.awt.Window;
import java.awt.event.InputEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Hashtable;
import java.util.Vector;
// Referenced classes of package gnnt.MEBS.HQApplet:
// HQApplet, CodeTable
class InputDialog extends Dialog
{
private static final long serialVersionUID = 0x416cc53feef4dc8aL;
private Vector vString;
public String strCmd;
private java.awt.List m_list;
HQApplet m_applet;
public InputDialog(Frame f, char ch, HQApplet applet)
{
super(f, "", true);
vString = new Vector();
m_list = new java.awt.List();
try
{
jbInit();
}
catch(Exception e)
{
if(HQApplet.bDebug != 0)
e.printStackTrace();
}
m_applet = applet;
AddChar(ch);
}
private void jbInit()
throws Exception
{
m_list.setFont(new Font("宋體", 0, 12));
m_list.setForeground(Color.blue);
m_list.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e)
{
m_list_mouseClicked(e);
}
});
m_list.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e)
{
list_keyPressed(e);
}
});
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e)
{
this_windowClosing(e);
}
});
addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e)
{
this_keyPressed(e);
}
});
add(m_list);
setResizable(false);
}
void this_windowClosing(WindowEvent e)
{
hide();
}
void this_keyPressed(KeyEvent e)
{
char ch = e.getKeyChar();
if(Character.isLetterOrDigit(ch) || ch == '%')
{
AddChar(ch);
} else
{
int iKey = e.getKeyCode();
switch(iKey)
{
default:
break;
case 8: // '\b'
String str = getTitle();
if(str.length() <= 1)
{
hide();
} else
{
str = str.substring(0, str.length() - 1);
setTitle(str);
DealString();
}
break;
case 27: // '\033'
hide();
break;
case 10: // '\n'
strCmd = "";
int iSel = m_list.getSelectedIndex();
if(iSel >= 0 && iSel < vString.size())
strCmd = (String)vString.elementAt(iSel);
hide();
break;
}
}
}
void list_keyPressed(KeyEvent e)
{
int iKey = e.getKeyCode();
if(iKey != 38 && iKey != 40 && iKey != 33 && iKey != 34)
this_keyPressed(e);
}
private void AddChar(char ch)
{
String str = getTitle();
if(str.length() <= 0 || str.length() < 8 && Character.isDigit(str.charAt(0)) || str.length() < 8 && (Character.isLetter(str.charAt(0)) || ch == '%'))
{
if(str.length() > 1 && m_list.getItemCount() == 0)
return;
str = str + Character.toUpperCase(ch);
setTitle(str);
DealString();
}
}
private void DealString()
{
m_list.removeAll();
vString.removeAllElements();
String str = getTitle();
if(Character.isDigit(str.charAt(0)) && str.length() <= 2)
DealAccelerator(str);
DealProductCode(str);
DealProductName(str);
if(m_applet.iCurrentPage == 2)
DealIndicator(str);
String strColor = "COLOR";
if(strColor.startsWith(str))
{
m_list.add("COLOR0 經(jīng)典");
m_list.add("COLOR1 現(xiàn)代");
m_list.add("COLOR2 典雅");
m_list.add("COLOR3 淡雅");
m_list.add("COLOR4 高貴");
vString.addElement("C0");
vString.addElement("C1");
vString.addElement("C2");
vString.addElement("C3");
vString.addElement("C4");
}
m_list.select(0);
}
private void DealAccelerator(String str)
{
for(int i = 0; i < 89; i++)
{
String strTmp = String.valueOf(i);
if(strTmp.length() == 1)
strTmp = "0" + strTmp;
if(str.length() == 1 && str.charAt(0) == strTmp.charAt(0) || str.length() == 2 && str.equals(strTmp))
{
int iNum = m_list.getItemCount();
switch(i)
{
case 1: // '\001'
if(m_applet.iCurrentPage == 1 || m_applet.iCurrentPage == 2)
m_list.add("01 成交明細(xì)");
break;
case 5: // '\005'
m_list.add("05 分時\\日線");
break;
case 60: // '<'
m_list.add("60 漲幅排名");
break;
case 70: // 'F'
m_list.add("70 歷史商品");
break;
case 80: // 'P'
m_list.add("80 綜合排名");
break;
}
if(iNum < m_list.getItemCount())
vString.addElement("A" + strTmp);
}
}
}
private void DealProductCode(String str)
{
int iCount = m_applet.m_codeList.size();
for(int i = 0; i < iCount; i++)
{
if(m_list.getItemCount() > 20)
break;
if(((String)m_applet.m_codeList.elementAt(i)).toUpperCase().indexOf(str) < 0)
continue;
CodeTable s = (CodeTable)m_applet.m_htProduct.get(m_applet.m_codeList.elementAt(i));
HQApplet _tmp = m_applet;
if(m_applet.iCurrentPage != 2)
{
HQApplet _tmp1 = m_applet;
if(m_applet.iCurrentPage != 6 && (s.status == 1 || s.status == 4))
continue;
}
m_list.add(m_applet.m_codeList.elementAt(i) + " " + s.sName);
vString.addElement("P" + m_applet.m_codeList.elementAt(i));
}
}
private void DealProductName(String str)
{
int iCount = m_applet.m_codeList.size();
for(int i = 0; i < iCount; i++)
{
if(m_list.getItemCount() > 20)
break;
CodeTable s = (CodeTable)m_applet.m_htProduct.get(m_applet.m_codeList.elementAt(i));
HQApplet _tmp = m_applet;
if(m_applet.iCurrentPage != 2)
{
HQApplet _tmp1 = m_applet;
if(m_applet.iCurrentPage != 6 && (s.status == 1 || s.status == 4))
continue;
}
for(int j = 0; j < s.sPinyin.length; j++)
if(s.sPinyin[j].startsWith(str))
{
boolean bFound = false;
for(int k = 0; k < vString.size(); k++)
if(vString.elementAt(k).equals(m_applet.m_codeList.elementAt(i)))
bFound = true;
if(!bFound)
{
m_list.add(s.sPinyin[j] + " " + s.sName);
vString.addElement("P" + m_applet.m_codeList.elementAt(i));
}
}
}
}
private void DealIndicator(String str)
{
for(int i = 0; i < IndicatorBase.INDICATOR_NAME.length; i++)
if(IndicatorBase.INDICATOR_NAME[i][0].startsWith(str))
{
String strFullName = m_applet.getShowString("T_" + IndicatorBase.INDICATOR_NAME[i][0]);
m_list.add(IndicatorBase.INDICATOR_NAME[i][0] + " " + strFullName.substring(0, Math.min(6, strFullName.length())));
vString.addElement("T" + IndicatorBase.INDICATOR_NAME[i][0]);
}
}
void m_list_mouseClicked(MouseEvent e)
{
if(e.getModifiers() != 4 && e.getClickCount() > 1)
{
strCmd = "";
int iSel = m_list.getSelectedIndex();
if(iSel >= 0 && iSel < vString.size())
strCmd = (String)vString.elementAt(iSel);
hide();
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -