📄 mainmenubarhandler.java
字号:
m_MenuImportCase.addMouseListener(this);
m_MenuCaseRecentCases.addActionListener(this);
m_MenuCaseRecentCases.addMouseListener(this);
m_MenuCaseExit.addActionListener(this);
m_MenuCaseExit.addMouseListener(this);
createRecentFileSubMenu();
}
/**
* Creates Edit Menu.
*
* @throws SysException
*/
private void createEditMenu() throws SysException {
m_MenuEdit = new JMenu(Resource.srcStr("m_MenuEdit"));
JMenuItem m_MenuEditCopy = new JMenuItem(Resource.srcStr("m_MenuEditCopy"), ResourceLoader
.getImageIcon(ImageLocation.COPY));
JMenuItem m_MenuEditCut = new JMenuItem(Resource.srcStr("m_MenuEditCut"), ResourceLoader
.getImageIcon(ImageLocation.CUT));
JMenuItem m_MenuEditPaste = new JMenuItem(Resource.srcStr("m_MenuEditPaste"), ResourceLoader
.getImageIcon(ImageLocation.PASTE));
JMenuItem m_MenuEditSelectAll = new JMenuItem(Resource.srcStr("m_MenuEditSelectAll"));
m_MenuEdit.setMnemonic('E');
m_MenuEditCopy
.setAccelerator(javax.swing.KeyStroke.getKeyStroke('C', java.awt.event.KeyEvent.CTRL_MASK, false));
m_MenuEditCut.setAccelerator(javax.swing.KeyStroke.getKeyStroke('X', java.awt.event.KeyEvent.CTRL_MASK, false));
m_MenuEditPaste.setAccelerator(javax.swing.KeyStroke
.getKeyStroke('V', java.awt.event.KeyEvent.CTRL_MASK, false));
m_MenuEditSelectAll.setAccelerator(javax.swing.KeyStroke.getKeyStroke('A', java.awt.event.KeyEvent.CTRL_MASK,
false));
m_MenuEdit.add(m_MenuEditCopy);
m_MenuEdit.add(m_MenuEditCut);
m_MenuEdit.add(m_MenuEditPaste);
m_MenuEdit.addSeparator();
m_MenuEdit.add(m_MenuEditSelectAll);
m_MenuEditCopy.addActionListener(this);
m_MenuEditCut.addActionListener(this);
m_MenuEditPaste.addActionListener(this);
m_MenuEditSelectAll.addActionListener(this);
m_MenuBar.add(m_MenuEdit);
m_MenuEdit.setVisible(false);// <<31/03/2005 Mark Li: Set Edit Menu
// invisible>>
}
// <<17/02/2005 Mark Li: Remove Configuration from menu
/**
* Creates Configuration Menu.
*/
/**
* private void createConfigurationMenu() { m_MenuConfiguration = new
* JMenu("Configuration"); JMenuItem m_MenuConfigurationWorkspace = new
* JMenuItem( "Workspace Management", new ImageIcon(
* MainMenuBarHandler.class.getResource("../images/workspace.png")));
* JMenuItem m_MenuConfigurationSystem = new JMenuItem( "System
* Configuration", new ImageIcon(
* MainMenuBarHandler.class.getResource("../images/system.png")));
*
* m_MenuConfiguration.setMnemonic('O');
*
* m_MenuConfiguration.add(m_MenuConfigurationWorkspace);
* m_MenuConfiguration.add(m_MenuConfigurationSystem);
*
* m_MenuConfigurationWorkspace.addActionListener(this);
* m_MenuConfigurationSystem.addActionListener(this);
*
* m_MenuBar.add(m_MenuConfiguration); }
*/
// 17/02/2005 Mark Li: Remove Configuration from menu>>
/**
* Creates Window Menu.
*
* @throws SysException
*/
private void createWindowMenu() throws SysException {
m_MenuWindow = new JMenu(Resource.srcStr("m_MenuWindow"));
JMenuItem m_MenuCascade = new JMenuItem(Resource.srcStr("m_MenuCascade"));
JMenuItem m_MenuVertical = new JMenuItem(Resource.srcStr("m_MenuVertical"));
JMenuItem m_MenuHorizontal = new JMenuItem(Resource.srcStr("m_MenuHorizontal"));
JMenuItem m_MenuMinimize = new JMenuItem(Resource.srcStr("m_MenuMinimize"));
JMenuItem m_MenuWindowManagement = new JMenuItem(Resource.srcStr("m_MenuWindowManagement"), ResourceLoader
.getImageIcon(ImageLocation.MGT_WINDOW));
m_MenuCascade.setActionCommand(ACTION_WINDOWS_CASCADE);
m_MenuVertical.setActionCommand(ACTION_WINDOWS_VERTICAL);
m_MenuHorizontal.setActionCommand(ACTION_WINDOWS_HORIZONTAL);
m_MenuMinimize.setActionCommand(ACTION_WINDOWS_MINIMIZE);
m_MenuWindowManagement.setActionCommand(ACTION_WINDOWS_MANAGEMENT);
m_MenuWindow.setMnemonic('W');
m_MenuWindowManagement.setAccelerator(javax.swing.KeyStroke.getKeyStroke('M',
java.awt.event.KeyEvent.CTRL_MASK, false));
m_MenuWindow.add(m_MenuCascade);
m_MenuWindow.add(m_MenuVertical);
m_MenuWindow.add(m_MenuHorizontal);
m_MenuWindow.add(m_MenuMinimize);
m_MenuWindow.addSeparator();
m_MenuWindow.add(m_MenuWindowManagement);
m_MenuWindow.addSeparator();
m_MenuCascade.addActionListener(this);
m_MenuVertical.addActionListener(this);
m_MenuHorizontal.addActionListener(this);
m_MenuMinimize.addActionListener(this);
m_MenuWindowManagement.addActionListener(this);
m_MenuBar.add(m_MenuWindow);
}
/**
* Creates Help Menu.
*
* @throws SysException
*/
private void createHelpMenu() throws SysException {
m_MenuHelp = new JMenu(Resource.srcStr("m_MenuHelp"));
// <<27/07/2005 Kenneth Lai: Modify for JHelp
JMenuItem m_MenuHelpTopics = new JMenuItem(Resource.srcStr("m_MenuHelpTopics"));
m_MenuHelpTopics.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F1, 0, false));
m_MenuHelp.add(m_MenuHelpTopics);
m_MenuHelp.addSeparator();
// <<17/08/2005: Kenneth Lai: Modified for helpHandler singleton
AlphaminerHelpHandler HelpHandler = AlphaminerHelpHandler.getInstance();
// new AlphaminerHelpHandler();
// 17/08/2005: Kenneth Lai: Modified for helpHandler singleton>>
HelpHandler.setHelpButton(m_MenuHelpTopics, "AlphaMinerHelp");
// 27/07/2005 Kenneth Lai: Modify for JHelp>>
// Construct HelpBroker object for JavaHelp
// String helpHS = "helpset.hs";
// HelpSet helpSet = null;
// ClassLoader c1 = KBBIApplication.class.getClassLoader();
// try{
// URL hsURL = HelpSet.findHelpSet(c1, helpHS);
// helpSet = new HelpSet(null, hsURL);
//
// HelpBroker helpBroker = helpSet.createHelpBroker();
//
// m_MenuHelpTopics.addActionListener(new
// CSH.DisplayHelpFromSource(helpBroker));
// }catch (Exception e)
// {
// // Do Nothing
// }
/*
JMenuItem m_MenuSendMail = new JMenuItem(Resource.srcStr("m_MenuSendMail"), ResourceLoader
.getImageIcon(ImageLocation.SENDMAIL));
m_MenuSendMail.setActionCommand(ACTION_SENDMAIL);
m_MenuSendMail.addActionListener(this);
m_MenuHelp.add(m_MenuSendMail);
m_MenuHelp.addSeparator();
*/
JMenuItem m_MenuCheckUpdate = new JMenuItem(Resource.srcStr("m_MenuCheckUpdate"), ResourceLoader
.getImageIcon(ImageLocation.CHECKUPDATE));
m_MenuCheckUpdate.setActionCommand(ACTION_CHECKUPDATE);
m_MenuCheckUpdate.addActionListener(this);
m_MenuHelp.add(m_MenuCheckUpdate);
m_MenuHelp.addSeparator();
JMenuItem m_MenuHelpAbout = new JMenuItem(Resource.srcStr("m_MenuHelpAbout"), ResourceLoader
.getImageIcon(ImageLocation.ABOUT16));
m_MenuHelpAbout.setActionCommand(ACTION_HELP_ABOUT);
m_MenuHelp.setMnemonic('A');
m_MenuHelp.add(m_MenuHelpAbout);
m_MenuHelpAbout.addActionListener(this);
m_MenuBar.add(m_MenuHelp);
}
private void createAdvanceMenu() {
m_MenuAdvance = new JMenu(Resource.srcStr("m_MenuAdvanced"));
m_MenuWorkSpace = new JMenu(Resource.srcStr("m_MenuWorkspaces"));
m_MenuWorkSpace.setMnemonic('W');
String[] names = WorkspacesManager.getWorkSpacesNames();
int index = WorkspacesManager.CurrentWorkSpaceIndex();
// config
JMenuItem m_MenuWorkSpaceConfiguration = new JMenuItem(Resource.srcStr("m_MenuWorkSpaceConfiguration"));
m_MenuWorkSpaceConfiguration.addActionListener(this);
m_MenuWorkSpace.add(m_MenuWorkSpaceConfiguration);
m_MenuWorkSpace.addSeparator();
// workspace
int i=0;
for (i = 0; i < names.length; i++) {
JCheckBoxMenuItem m_WorkSpace = new JCheckBoxMenuItem(names[i]);
if (i == index) {
m_WorkSpace.setSelected(true);
}
m_WorkSpace.addActionListener(this);
m_MenuWorkSpace.add(m_WorkSpace);
}
m_MenuAdvance.add(m_MenuWorkSpace);
// JMenuItem m_MenuOption = new
// JMenuItem(Resource.srcStr("m_MenuOption"));
m_MenuLocale = new JMenu(Resource.srcStr("m_MenuLocale"));
// workspace menu
/*
* m_MenuOption.setAccelerator( javax.swing.KeyStroke.getKeyStroke( 'O',
* java.awt.event.KeyEvent.CTRL_MASK, false));
*/
m_MenuLocale.setMnemonic('L');
JMenuItem m_MenuLocaleConfiguration = new JMenuItem(Resource.srcStr("m_MenuLocaleConfiguration"));
m_MenuLocaleConfiguration.addActionListener(this);
m_MenuLocale.add(m_MenuLocaleConfiguration);
m_MenuLocale.addSeparator();
names = LocalesManager.getLocalesNames();
int size = names.length;
for(i=0;i<size;i++) {
JCheckBoxMenuItem localeItem = new JCheckBoxMenuItem(names[i]);
localeItem.addActionListener(this);
m_MenuLocale.add(localeItem);
}
index = LocalesManager.CurrentlocaleIndex();
((JCheckBoxMenuItem)m_MenuLocale.getItem(index+2)).setSelected(true);
//m_MenuAdvance.add(m_MenuOption);
m_MenuAdvance.add(m_MenuLocale);
pluginItem = new JMenuItem(Resource.srcStr("Import_plugin"));
pluginItem.addActionListener(this);
pluginItem.setMnemonic('P');
m_MenuAdvance.add(pluginItem);
// m_MenuOption.addActionListener(this);
m_MenuBar.add(m_MenuAdvance);
}
/**
* Creates Recent Cases Submenu.
*/
private void createRecentFileSubMenu() {
//getRecentFileList();
//for (int i = 0; i < m_RecentlyOpenedCase.size(); i++)
// updateRecentFileSubMenu((String) m_RecentlyOpenedCase.elementAt(i));
}
/**
* Inserts a Case into recent Cases Submenu.
*
* @param a_CaseID
* ID of the Case to be inserted.
*/
private void updateRecentFileSubMenu(String caseName, String a_CaseID) {
int count = m_MenuCaseRecentCases.getItemCount();
for (int i = 0; i < count; i++) {
if (m_MenuCaseRecentCases.getItem(i).getActionCommand().endsWith(a_CaseID)) {
m_MenuCaseRecentCases.remove(i);
count--;
break;
}
}
JMenuItem recentCase = new JMenuItem("1. " + caseName);
recentCase.setActionCommand("recent|" + a_CaseID);
recentCase.addActionListener(this);
m_MenuCaseRecentCases.add(recentCase, 0);
if (count == 9)
m_MenuCaseRecentCases.remove(count-1);
for (int i = 1; i <= count; i++) {
String text = m_MenuCaseRecentCases.getItem(i).getText();
int num = Integer.parseInt(text.substring(0, text.indexOf(".")));
String case_Name = text.substring(text.indexOf(". "));
text = String.valueOf(num + 1) + case_Name;
m_MenuCaseRecentCases.getItem(i).setText(text);
}
}
/*
* (non-Javadoc)
*
* @see eti.bi.alphaminer.core.observer.Observer#sendNotify(int)
*/
public void sendNotify(int a_Message) {
// No message would be received in interger format
}
/*
* (non-Javadoc)
*
* @see eti.bi.alphaminer.core.observer.Observer#sendNotify(int,
* java.lang.Object)
*/
public void sendNotify(int a_Message, Object a_Object) {
// TODO Auto-generated method stub
}
// 03/17/2006 Xiaojun Chen aAdd for
/**
* reset language
*/
public synchronized void resetLocale() {
JMenu jmenu = null;
JMenuItem jmenuitem = null;
// Case
m_MenuCase.setText(Resource.srcStr("m_MenuCase"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_NEW);
jmenuitem.setText(Resource.srcStr("m_MenuCaseNew"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_COPY_CASE);
jmenuitem.setText(Resource.srcStr("m_MenuCaseCopyCase"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_SAVE);
jmenuitem.setText(Resource.srcStr("m_MenuCaseSave"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_SAVE_ALL);
jmenuitem.setText(Resource.srcStr("m_MenuCaseSaveAll"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_CLOSE);
jmenuitem.setText(Resource.srcStr("m_MenuCaseClose"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_CLOSE_ALL);
jmenuitem.setText(Resource.srcStr("m_MenuCaseCloseAll"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_DELETE);
jmenuitem.setText(Resource.srcStr("m_MenuCaseDelete"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_VIEW);
jmenuitem.setText(Resource.srcStr("m_MenuCaseView"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_EDIT);
jmenuitem.setText(Resource.srcStr("m_MenuCaseEdit"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_SEARCH);
jmenuitem.setText(Resource.srcStr("m_MenuCaseSearch"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_IMPORTCASE);
jmenuitem.setText(Resource.srcStr("m_MenuCaseImport"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_RECENT);
jmenuitem.setText(Resource.srcStr("m_MenuCaseRecentCases"));
jmenuitem = (JMenuItem) m_MenuCase.getItem(INDEX_EXIT);
jmenuitem.setText(Resource.srcStr("m_MenuCaseExit"));
// Window
m_MenuWindow.setText(Resource.srcStr("m_MenuWindow"));
jmenuitem = (JMenuItem) m_MenuWindow.getItem(0);
jmenuitem.setText(Resource.srcStr("m_MenuWindow"));
jmenuitem = (JMenuItem) m_MenuWindow.getItem(1);
jmenuitem.setText(Resource.srcStr("m_MenuVertical"));
jmenuitem = (JMenuItem) m_MenuWindow.getItem(2);
jmenuitem.setText(Resource.srcStr("m_MenuHorizontal"));
jmenuitem = (JMenuItem) m_MenuWindow.getItem(3);
jmenuitem.setText(Resource.srcStr("m_MenuMinimize"));
jmenuitem = (JMenuItem) m_MenuWindow.getItem(5);
jmenuitem.setText(Resource.srcStr("m_MenuWindowManagement"));
// Advance
m_MenuAdvance.setText(Resource.srcStr("m_MenuAdvanced"));
// jmenuitem = (JMenuItem)m_MenuAdvance.getItem(INDEX_OPTION);
// jmenuitem.setText(Resource.srcStr("m_MenuOption"));
jmenu = (JMenu) m_MenuAdvance.getItem(INDEX_WORKSPACES);
jmenu.setText(Resource.srcStr("m_MenuWorkspaces"));
jmenuitem = (JMenuItem) jmenu.getItem(0);
jmenuitem.setText(Resource.srcStr("m_MenuWorkSpaceConfiguration"));
m_MenuLocale.setText(Resource.srcStr("m_MenuLocale"));
((JMenuItem)m_MenuLocale.getItem(0)).setText(Resource.srcStr("m_MenuLocaleConfiguration"));
pluginItem.setText(Resource.srcStr("Import_plugin"));
// Help
m_MenuHelp.setText(Resource.srcStr("m_MenuHelp"));
jmenuitem = (JMenuItem) m_MenuHelp.getItem(0);
jmenuitem.setText(Resource.srcStr("m_MenuHelpTopics"));
jmenuitem = (JMenuItem) m_MenuHelp.getItem(2);
jmenuitem.setText(Resource.srcStr("m_MenuHelpAbout"));
}
/**
* 2006/8/01
* update workspaces menu and reload workspace if necessary
* @author Xiaojun Chen
* */
public void updateWorkspaces() {
m_MenuWorkSpace.removeAll();
// config
JMenuItem m_MenuWorkSpaceConfiguration = new JMenuItem(Resource.srcStr("m_MenuWorkSpaceConfiguration"));
m_MenuWorkSpaceConfiguration.addActionListener(this);
m_MenuWorkSpace.add(m_MenuWorkSpaceConfiguration);
m_MenuWorkSpace.addSeparator();
String[] names = WorkspacesManager.getWorkSpacesNames();
int current = WorkspacesManager.CurrentWorkSpaceIndex();
// workspace
int i=0;
for (i = 0; i < names.length; i++) {
JCheckBoxMenuItem m_WorkSpace = new JCheckBoxMenuItem(names[i]);
if (i == current) {
m_WorkSpace.setSelected(true);
}
m_WorkSpace.addActionListener(this);
m_MenuWorkSpace.add(m_WorkSpace);
}
if(!SysConfig.getProperty(Constants.BIML_REPOSITORY_KEY).equals(WorkspacesManager.CurrentWorkSpacePath())){
WorkspacesManager.SwitchWorkSpace(current, true);
}
}
/**
* update Locales menu
* @author Xiaojun Chen
* */
public void updateLocales() {
m_MenuLocale.removeAll();
//config
JMenuItem m_MenuLocaleConfiguration = new JMenuItem(Resource.srcStr("m_MenuLocaleConfiguration"));
m_MenuLocaleConfiguration.addActionListener(this);
m_MenuLocale.add(m_MenuLocaleConfiguration);
m_MenuLocale.addSeparator();
String[] names = LocalesManager.getLocalesNames();
int size = names.length;
int i=0;
for(i=0;i<size;i++) {
JCheckBoxMenuItem localeItem = new JCheckBoxMenuItem(names[i]);
localeItem.addActionListener(this);
m_MenuLocale.add(localeItem);
}
int index = LocalesManager.CurrentlocaleIndex();
((JCheckBoxMenuItem)m_MenuLocale.getItem(index+2)).setSelected(true);
}
}
// <<27/07/2005 Kenneth Lai: Add for JHelp
class JHelpMenuBar extends JMenuBar implements MouseListener, HelpObserver {
/**
*
*/
private static final long serialVersionUID = 1L;
private boolean m_HelpState;
public JHelpMenuBar() {
setHelpState(false);
addMouseListener(this);
HelpObserveSubject.registerInterest(this);
}
public void Update(boolean a_HelpState) {
setHelpMode(a_HelpState);
}
private void setHelpMode(boolean a_HelpState) {
HelpCursor helpCursor = new HelpCursor();
if (a_HelpState)
setCursor(helpCursor.getCursor());
else
setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
setHelpState(a_HelpState);
}
private void setHelpState(boolean a_HelpState) {
m_HelpState = a_HelpState;
}
private boolean isHelpMode() {
return m_HelpState;
}
/**
* @see java.awt.event.MouseListener#mouseEntered(MouseEvent)
*/
public void mouseEntered(MouseEvent e) {
}
/**
* @see java.awt.event.MouseListener#mouseExited(MouseEvent)
*/
public void mouseExited(MouseEvent e) {
}
/**
* @see java.awt.event.MouseListener#mousePressed(MouseEvent)
*/
public void mousePressed(MouseEvent e) {
if (isHelpMode()) {
setHelpMode(false);
HelpObserveSubject.sendNotify(false);
}
}
/**
* @see java.awt.event.MouseListener#mouseReleased(MouseEvent)
*/
public void mouseReleased(MouseEvent e) {
}
/**
* @see java.awt.event.MouseListener#mouseClicked(MouseEvent)
*/
public void mouseClicked(MouseEvent e) {
}
}
// 27/07/2005 Kenneth Lai: Add for JHelp>>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -