⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainmenubarhandler.java

📁 为了下东西 随便发了个 datamining 的源代码
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
	 * Processes action of Window->Tile Windows Horizontally.
	 */
	private void processActionTileHorizontally() {
		m_Container.tileWindowsHorizontally();
	}

	/**
	 * Processes action of Window->Tile Windows Vertically.
	 */
	private void processActionTileVertically() {
		m_Container.tileWindowsVertically();
	}

	/**
	 * Processes action of Window->Cascade Windows.
	 */
	private void processActionCascade() {
		m_Container.cascadeWindows();
	}

	/**
	 * Processes action of Window->Minimize Windows.
	 */
	private void processActionMinimize() {
		m_Container.minimizeWindows();
	}

	/**
	 * Processes action of Window->Case Management Window.
	 * 
	 * @throws SysException
	 */
	private void processActionCaseManagement() throws SysException {
		m_Container.showManagementWindow(false);
	}

	/**
	 * Processes action of Window->[Case Window].
	 * 
	 * @param a_ActionCommand
	 *            the action command of the menu item selected.
	 */
	private void processActionSwitchWindow(String a_ActionCommand) {
		String caseID = null;
		if (a_ActionCommand.startsWith("switch|")) {
			caseID = a_ActionCommand.substring(a_ActionCommand.indexOf("|") + 1);
			// <<06/04/2005, Frank J. Xu
			// m_Container.editCase(caseID, true);
			m_Container.editCaseByName(caseID, true);
			// 06/04/2005, Frank J. Xu>>
		}
	}

	/**
	 * Processes action of Help->About.
	 * 
	 * @throws SysException
	 */
	private void processActionAbout() throws SysException {
		m_Container.showAbout();
	}

	/**
	 * Processes action of Advance->Language.
	 * 
	 */
	private void processActionLocale(int index, boolean config) {
		int current = 0;
		if(config) {
			LocalesManager.configuration();
			return;
		}
		
		String[] names = LocalesManager.getLocalesNames();
		current = LocalesManager.CurrentlocaleIndex()+2;
		
		if (MessageDialog.showConfirmDialog(m_Container, Resource.srcStr("SWITHC_LOCALE") + "\n" + names[current - 2] + "->" + names[index - 2], Resource.srcStr("SWITHC_WORKSPACE"),JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE)==JOptionPane.NO_OPTION){
			if(index!=current){
				m_MenuLocale.getItem(index).setSelected(false);
			}
			else{
				m_MenuLocale.getItem(current).setSelected(true);
			}
			return;
		}
		
		
		// the index of workspace is index-2
		if(LocalesManager.SwitchLocale(index-2,false)){
			m_MenuLocale.getItem(current).setSelected(false);
			m_MenuLocale.getItem(index).setSelected(true);
		}
	}
	
	
	/**
	 * @author Xiaojun Chen
	 * @param index the slected index of menu
	 * @param config true if the configuration menu is selected 
	 * */
	private void processActionWorkSpace(int index,boolean config){
		
		int current=0;
		if(config){
			WorkspacesManager.configuration();
			return;
		}
		
		/*
		 * for(int i=2;i<index;i++){
		 * if((m_MenuWorkSpace.getItem(i)).isSelected()){ selected = i; break; } }
		 * 
		 * for(int i=index+1;i<length;i++){
		 * if((m_MenuWorkSpace.getItem(i)).isSelected()){ selected = i; break; } }
		 */
		
		current = WorkspacesManager.CurrentWorkSpaceIndex()+2;
		
		String[] names = WorkspacesManager.getWorkSpacesNames();
		
		if (MessageDialog.showConfirmDialog(m_Container, Resource.srcStr("SWITHC_WORKSPACE") + "\n"	+ names[current - 2] + "->" + names[index - 2], Resource.srcStr("SWITHC_WORKSPACE"),JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE)==JOptionPane.NO_OPTION){
			if(index!=current){
				m_MenuWorkSpace.getItem(index).setSelected(false);
			}
			else{
				m_MenuWorkSpace.getItem(current).setSelected(true);
			}
			return;
		}
		
		// TODO
		// make sure that all cases and casewindow are closed
		if(index-2==WorkspacesManager.CurrentWorkSpaceIndex()){
			if(!m_Container.disposeAllCases()){
				return;
			}
		}
		
		// the index of workspace is index-2
		if(WorkspacesManager.SwitchWorkSpace(index-2,false)){
			m_MenuWorkSpace.getItem(current).setSelected(false);
			m_MenuWorkSpace.getItem(index).setSelected(true);
		}
		
	}
	
	/**
		 * Sets action command for menu bar items.
		 * 
		 * @param a_Message
		 *            action command to be set.
		 */
	private void setButtonActionCommand(String a_Message) {
		m_MenuCase.getItem(INDEX_COPY_CASE).setActionCommand(a_Message);
		m_MenuCase.getItem(INDEX_SAVE).setActionCommand(a_Message);
		m_MenuCase.getItem(INDEX_CLOSE).setActionCommand(a_Message);
		m_MenuCase.getItem(INDEX_DELETE).setActionCommand(a_Message);
		m_MenuCase.getItem(INDEX_VIEW).setActionCommand(a_Message);
		m_MenuCase.getItem(INDEX_EDIT).setActionCommand(a_Message);
	}

	/**
	 * Set menu bar to Login State.
	 */
	private void loginState() {
		// setEnabledConnect(false);
		// setEnabledDisconnect(true);
		setEnabledNew(true);
		setEnabledCopyCase(false);
		setEnabledSave(false);
		setEnabledSaveAll(false);
		setEnabledClose(false);
		setEnabledCloseAll(false);
		setEnabledDelete(false);
		setEnabledView(false);
		setEnabledEdit(false);
		// setEnabledActivate(false);
		// setEnabledSearch(true);
		// setEnabledRecentCase(true);//<<23/03/2005 Mark Li: Remove Recent Case
		// from menu bar
		setEnabledMenuEdit(true);
		setEnabledCut(false);
		setEnabledCopy(false);
		setEnabledPaste(false);
		setEnabledSelectAll(false);
		setEnabledMenuWindow(true);
	}

	/**
	 * Set menu bar to Logoff State.
	 */
	private void logoffState() {
		// setEnabledConnect(true);
		// setEnabledDisconnect(false);
		setEnabledNew(false);
		setEnabledCopyCase(false);
		setEnabledSave(false);
		setEnabledSaveAll(false);
		setEnabledClose(false);
		setEnabledCloseAll(false);
		setEnabledDelete(false);
		setEnabledView(false);
		setEnabledEdit(false);
		// setEnabledActivate(false);
		// setEnabledSearch(false);
		//if (m_Container.enableSerachResultPanel) {
		//	setEnabledRecentCase(false);
		//}
		setEnabledMenuEdit(false);
		setEnabledMenuWindow(false);
	}

	/**
	 * Set menu bar to the Select Case State.
	 * 
	 * @param a_Message
	 *            action command to be set.
	 */
	private void selectCaseState(String a_Message) {
		setEnabledCopyCase(true);
		setEnabledSave(false);
		setEnabledSaveAll(false);
		setEnabledClose(false);
		setEnabledCloseAll(false);
		setEnabledDelete(true);
		setEnabledView(true);
		setEnabledEdit(true);
		// setEnabledActivate(true);
		initMenuActivate(a_Message);
		setButtonActionCommand(a_Message);
	}

	/**
	 * Set menu bar to the Edit Case State.
	 * 
	 * @param a_Message
	 *            action command to be set.
	 * @param a_IsEdit
	 *            true if the Case Window in focus is in edit mode; false
	 *            otherwise.
	 * @param a_IsNew
	 *            true if the Case Window in focus is showing a newly created
	 *            Case; false otherwise.
	 */
	private void editCaseState(String a_Message, boolean a_IsEdit, boolean a_IsNew) {
		selectCaseState(a_Message);
		if (a_IsEdit) {
			setEnabledSave(true);
			setEnabledSaveAll(true);
			setEnabledClose(true);
			setEnabledCloseAll(true);
			setEnabledView(!a_IsNew);
			setEnabledEdit(false);
			// setEnabledActivate(true);
		} else {
			setEnabledSave(false);
			setEnabledSaveAll(true);
			setEnabledClose(false);
			setEnabledCloseAll(true);
			setEnabledView(false);
			setEnabledEdit(true);
			// setEnabledActivate(false);
		}
	}

	/**
	 * Initializes File->Activate checkbox status.
	 * 
	 * @param a_CaseID
	 *            ID of the selected Case.
	 */
	private void initMenuActivate(String a_CaseID) {
		m_MenuCase.getItem(16).removeItemListener(this);
		CaseInfoList infoList = CaseInfoListHandler.getInstance().getCaseInfoList(false);
		boolean exist = true;
		if (infoList != null) {
			CaseInformation info = infoList.getCaseInfo(a_CaseID);
			if (info != null) {
				// setEnabledActivate(!info.getStatus().equalsIgnoreCase(BICase.NEW));
				if (info.getStatus().equalsIgnoreCase(BICase.ACTIVATE))
					m_MenuCase.getItem(16).setSelected(true);
				else
					m_MenuCase.getItem(16).setSelected(false);
				// System.out.println("case info: " + info.getStatus());
			} else {
				// System.err.println("Case " + a_CaseID + " is not found in
				// case info list");
				exist = false;
			}
		} else
			exist = false;
		if (!exist) {
			// System.out.println("Case info list is null ... try case
			// handler");
			try {
				BICase selectedCase = CaseHandler.getInstance().getCase(a_CaseID, false);
				if (selectedCase != null) {
					//System.out.println("case: " + selectedCase.getStatus());
					// setEnabledActivate(selectedCase.getStatus().equalsIgnoreCase(BICase.NEW));
					m_MenuCase.getItem(16).setSelected(selectedCase.getStatus() == BICase.ACTIVATE);
				} else {
					System.err.println("Case " + a_CaseID + " not found");
				}
			} catch (BaseException be) {
				System.err.println(be.getMessage());
			}
		}
		m_MenuCase.getItem(16).addItemListener(this);
	}

	/**
	 * Creates the Menu Bar.
	 */
	private void createMenuBar() throws SysException {
		// m_MenuBar = new JMenuBar();
		m_MenuBar = new JHelpMenuBar(); // <<27/07/2005 Kenneth Lai: Modify for
										// JHelp>>
		createCaseMenu();
		createEditMenu();
		// <<17/02/2005 Mark Li: Remove Configuration from menu
		// createConfigurationMenu();
		// 17/02/2005 Mark Li: Remove Configuration from menu>>
		createWindowMenu();
		createAdvanceMenu();
		createHelpMenu();
		m_Container.setJMenuBar(m_MenuBar);
	}

	/**
	 * Creates File Menu.
	 */
	private void createCaseMenu() throws SysException {
		m_MenuCase = new JMenu(Resource.srcStr("m_MenuCase"));
		JMenuItem m_MenuFileConnect = new JMenuItem(Resource.srcStr("m_MenuFileConnect"), ResourceLoader
				.getImageIcon(ImageLocation.LOG_IN));
		JMenuItem m_MenuFileDisconnect = new JMenuItem(Resource.srcStr("m_MenuFileDisconnect"), ResourceLoader
				.getImageIcon(ImageLocation.LOG_OUT));
		JMenuItem m_MenuCaseNew = new JMenuItem(Resource.srcStr("m_MenuCaseNew"), ResourceLoader
				.getImageIcon(ImageLocation.NEW_CASE));
		JMenuItem m_MenuCaseCopyCase = new JMenuItem(Resource.srcStr("m_MenuCaseCopyCase"), ResourceLoader
				.getImageIcon(ImageLocation.COPY_CASE));
		JMenuItem m_MenuCaseSave = new JMenuItem(Resource.srcStr("m_MenuCaseSave"), ResourceLoader
				.getImageIcon(ImageLocation.SAVE_CASE));
		JMenuItem m_MenuCaseSaveAll = new JMenuItem(Resource.srcStr("m_MenuCaseSaveAll"), ResourceLoader
				.getImageIcon(ImageLocation.SAVE_ALL_CASE));
		JMenuItem m_MenuCaseClose = new JMenuItem(Resource.srcStr("m_MenuCaseClose"), ResourceLoader
				.getImageIcon(ImageLocation.CLOSE_CASE));
		JMenuItem m_MenuCaseCloseAll = new JMenuItem(Resource.srcStr("m_MenuCaseCloseAll"), ResourceLoader
				.getImageIcon(ImageLocation.CLOSE_ALL_CASE));
		JMenuItem m_MenuCaseDelete = new JMenuItem(Resource.srcStr("m_MenuCaseDelete"), ResourceLoader
				.getImageIcon(ImageLocation.DELETE_CASE));
		JMenuItem m_MenuCaseView = new JMenuItem(Resource.srcStr("m_MenuCaseView"), ResourceLoader
				.getImageIcon(ImageLocation.VIEW_CASE));
		JMenuItem m_MenuCaseEdit = new JMenuItem(Resource.srcStr("m_MenuCaseEdit"), ResourceLoader
				.getImageIcon(ImageLocation.EDIT_CASE));
		JMenuItem m_MenuCaseSearch = new JMenuItem(Resource.srcStr("m_MenuCaseSearch"), ResourceLoader
				.getImageIcon(ImageLocation.SEARCH));
		JMenuItem m_MenuImportCase = new JMenuItem(Resource.srcStr("m_MenuCaseImport"), ResourceLoader
				.getImageIcon(ImageLocation.IMPORTCASE));
		m_MenuCaseRecentCases = new JMenu(Resource.srcStr("m_MenuCaseRecentCases"));
		JMenuItem m_MenuCaseExit = new JMenuItem(Resource.srcStr("m_MenuCaseExit"));
		m_MenuCase.setMnemonic('F');
		m_MenuFileConnect.setAccelerator(KeyStroke.getKeyStroke('C', KeyEvent.ALT_MASK, false));
		m_MenuFileDisconnect.setAccelerator(KeyStroke.getKeyStroke('D', KeyEvent.ALT_MASK, false));
		m_MenuCaseNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke('N', java.awt.event.KeyEvent.CTRL_MASK, false));
		m_MenuCaseCopyCase.setAccelerator(javax.swing.KeyStroke.getKeyStroke('W', java.awt.event.KeyEvent.CTRL_MASK,
				false));
		m_MenuCaseSave
				.setAccelerator(javax.swing.KeyStroke.getKeyStroke('S', java.awt.event.KeyEvent.CTRL_MASK, false));
		m_MenuCaseSaveAll.setAccelerator(javax.swing.KeyStroke.getKeyStroke('S', java.awt.event.KeyEvent.CTRL_MASK
				| java.awt.event.KeyEvent.SHIFT_MASK, false));
		m_MenuCaseClose.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F4,
				java.awt.event.KeyEvent.CTRL_MASK, false));
		m_MenuCaseCloseAll.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F4,
				java.awt.event.KeyEvent.CTRL_MASK | java.awt.event.KeyEvent.SHIFT_MASK, false));
		m_MenuCaseDelete.setAccelerator(javax.swing.KeyStroke.getKeyStroke('D', java.awt.event.KeyEvent.CTRL_MASK,
				false));
		m_MenuCaseView
				.setAccelerator(javax.swing.KeyStroke.getKeyStroke('V', java.awt.event.KeyEvent.CTRL_MASK, false));
		m_MenuCaseEdit
				.setAccelerator(javax.swing.KeyStroke.getKeyStroke('E', java.awt.event.KeyEvent.CTRL_MASK, false));
		m_MenuImportCase.setAccelerator(javax.swing.KeyStroke.getKeyStroke('I', java.awt.event.KeyEvent.CTRL_MASK,
				false));
		// <<23/03/2005 Mark Li: Remove "Active" from menu Bar
		// m_MenuCaseActivate.setAccelerator(
		// javax.swing.KeyStroke.getKeyStroke(
		// 'A',
		// java.awt.event.KeyEvent.ALT_MASK,
		// false));
		// 23/03/2005 Mark Li: Remove "Active" from menu Bar>>
		// <<23/03/2005 Mark Li: Set flag to show Search Window
		if (m_Container.enableSerachResultPanel) {
			m_MenuCaseSearch.setAccelerator(javax.swing.KeyStroke.getKeyStroke('S', java.awt.event.KeyEvent.ALT_MASK,
					false));
		}
		// 23/03/2005 Mark Li: Set flag to show Search Window>>
		m_MenuCaseExit
				.setAccelerator(javax.swing.KeyStroke.getKeyStroke('Q', java.awt.event.KeyEvent.CTRL_MASK, false));
		m_MenuCase.add(m_MenuFileConnect);
		m_MenuCase.add(m_MenuFileDisconnect);
		INDEX_CONNECT = 0;
		INDEX_DISCONNECT = 1;
		m_MenuCase.addSeparator(); // 2
		m_MenuCase.add(m_MenuCaseNew);
		m_MenuCase.add(m_MenuCaseCopyCase);
		INDEX_NEW = 3;
		INDEX_COPY_CASE = 4;
		m_MenuCase.addSeparator(); // 5
		m_MenuCase.add(m_MenuCaseSave);
		m_MenuCase.add(m_MenuCaseSaveAll);
		INDEX_SAVE = 6;
		INDEX_SAVE_ALL = 7;
		m_MenuCase.addSeparator(); // 8
		m_MenuCase.add(m_MenuCaseClose);
		m_MenuCase.add(m_MenuCaseCloseAll);
		INDEX_CLOSE = 9;
		INDEX_CLOSE_ALL = 10;
		m_MenuCase.addSeparator(); // 11
		m_MenuCase.add(m_MenuCaseDelete);
		INDEX_DELETE = 12;
		m_MenuCase.addSeparator(); // 13
		m_MenuCase.add(m_MenuCaseView);
		m_MenuCase.add(m_MenuCaseEdit);
		INDEX_VIEW = 14;
		INDEX_EDIT = 15;
		m_MenuCase.add(m_MenuCaseSearch);//16
		INDEX_SEARCH = 16;
		m_MenuCase.addSeparator(); 
		m_MenuCase.add(m_MenuImportCase);
		INDEX_IMPORTCASE = 18;
		m_MenuCase.addSeparator();
		m_MenuCase.add(m_MenuCaseRecentCases);
		INDEX_RECENT = 20;
		m_MenuCase.addSeparator();
		m_MenuCase.add(m_MenuCaseExit);
		INDEX_EXIT = 22;
		// <<23/03/2005 Mark Li: Set flag to show Search Window
		// if(!m_Container.enableSerachResultPanel){
		// }else{
		// m_MenuFile.addSeparator();
		// }
		// 23/03/2005 Mark Li: Set flag to show Search Window>>
		// m_MenuFile.addSeparator();
		// <<23/03/2005 Mark Li: Set "Recent Case" Invisible
		m_MenuCaseRecentCases.setVisible(true);
		m_MenuFileConnect.setVisible(false);
		m_MenuFileDisconnect.setVisible(false);
		// m_MenuFile.addSeparator();
		// 23/03/2005 Mark Li: Set "Recent Case" Invisible>>
		m_MenuBar.add(m_MenuCase);
		m_MenuFileConnect.addActionListener(this);
		m_MenuFileDisconnect.addActionListener(this);
		m_MenuCaseNew.addActionListener(this);
		m_MenuCaseNew.addMouseListener(this);
		m_MenuCaseCopyCase.addActionListener(this);
		m_MenuCaseCopyCase.addMouseListener(this);
		m_MenuCaseSave.addActionListener(this);
		m_MenuCaseSave.addMouseListener(this);
		m_MenuCaseSaveAll.addActionListener(this);
		m_MenuCaseSaveAll.addMouseListener(this);
		m_MenuCaseClose.addActionListener(this);
		m_MenuCaseClose.addMouseListener(this);
		m_MenuCaseCloseAll.addActionListener(this);
		m_MenuCaseCloseAll.addMouseListener(this);
		m_MenuCaseDelete.addActionListener(this);
		m_MenuCaseDelete.addMouseListener(this);
		m_MenuCaseView.addActionListener(this);
		m_MenuCaseView.addMouseListener(this);
		m_MenuCaseEdit.addActionListener(this);
		m_MenuCaseEdit.addMouseListener(this);
		// m_MenuCaseActivate.addMouseListener(this);
		m_MenuCaseSearch.addActionListener(this);
		m_MenuCaseSearch.addMouseListener(this);
		m_MenuImportCase.addActionListener(this);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -