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

📄 casewindow.java

📁 一个数据挖掘软件ALPHAMINERR的整个过程的JAVA版源代码
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
	    
	    if ( isHelpMode() )
	        setCursor(helpCursor.getCursor());
	    else
	        setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
	}
	
	/**
	 * @see java.awt.event.MouseMotionListener#mouseDragged(MouseEvent)
	 */
	public void mouseDragged(MouseEvent e) {
	}
	
	/**
	 * @see eti.bi.alphaminer.core.observer.Observer#sendNotify(String)
	 */
	@SuppressWarnings("deprecation")
	public void sendNotify(String a_Message) {
		if (a_Message == null)
			return;
		
		//resetLocale
		if(a_Message.equals(Resource.CHANGE_LOCALE)) {
			
			int select = m_MessageTab.getSelectedIndex();
			for(int i=0;i<m_MessageTab.countComponents();i++) {
				if(m_MessageTab.getComponent(i) instanceof SystemMessagePanel){
					((SystemMessagePanel)m_MessageTab.getComponent(i)).resetLocale();
					m_MessageTab.setTitleAt(i, Resource.srcStr("m_LabelSystemMessage"));
				}else if(m_MessageTab.getComponent(i) instanceof DescriptionPanel){
					((DescriptionPanel)m_MessageTab.getComponent(i)).resetLocale();
					m_MessageTab.setTitleAt(i, Resource.srcStr("m_LabelMessage"));
				}
			}
			m_MessageTab.setSelectedIndex(select);
			//m_MessageTab.repaint();
			
			m_CaseDiagramPanel.sendNotify(a_Message);
			
			if(m_CaseHelpToolBarHandler!=null) {
				m_CaseHelpToolBarHandler.resetLocale();
			}
			
			return;
		}
		
		String nodeID = a_Message.substring(a_Message.indexOf("|") + 1);
		Operator operator = null;
		if (a_Message.startsWith("run node|")) {
			operator = m_CaseDiagramPanel.getOperator(nodeID);
			if (operator == null)
				return;
			if (!(operator instanceof InsightOperator))
				operator.setRunningMode();
			//m_SystemMessagePanel.appendSystemMessage("run " + nodeID + ", ");
			//m_CaseDiagramPanel.getPanelDiagramDrawing().paintImmediately(
			//	m_CaseDiagramPanel.getPanelDiagramDrawing().getBounds());
			m_CaseDiagramPanel.getPanelDiagramDrawing().repaint();
		} else if (a_Message.startsWith("finish node|")) {
			operator = m_CaseDiagramPanel.getOperator(nodeID);
			if (operator == null)
				return;
			if (!(operator instanceof InsightOperator))
				operator.setFinishRunningMode();
			//m_CaseDiagramPanel.getPanelDiagramDrawing().paintImmediately(
			//		m_CaseDiagramPanel.getPanelDiagramDrawing().getBounds());
			m_CaseDiagramPanel.getPanelDiagramDrawing().repaint();
			//m_SystemMessagePanel.appendSystemMessage("finish run " + nodeID + "\n");
		} else if (a_Message.startsWith("error node|")) {
			operator = m_CaseDiagramPanel.getOperator(nodeID);
			if (operator == null)
				return;
			//m_CaseDiagramPanel.setActiveComponent(operator);
			operator.setRunningErrorMode();
			m_SystemMessageHandler.appendMessage(
				Resource.srcStr("Errorinrunning") + operator.getLabel() + Resource.srcStr("node1")+"\n");						
		} else if (a_Message.startsWith("succeed node|")) {
			operator = m_CaseDiagramPanel.getOperator(nodeID);
			if (operator==null)
				return;
			operator.setSucceedMode();
			m_SystemMessageHandler.appendMessage(Resource.srcStr("Node")+" (" + operator.getLabel() + ") "+Resource.srcStr("executionsucceed")+".\n");
			//m_CaseDiagramPanel.getPanelDiagramDrawing().paintImmediately(
			//		m_CaseDiagramPanel.getPanelDiagramDrawing().getBounds());
		}
		else if(a_Message.startsWith("stop node|")) {
			String[] nodes = nodeID.split(";");
			if(nodes==null) {
				return;
			}
			nodeID = nodes[0];
			if(nodes.length==2) {
				operator = m_CaseDiagramPanel.getOperator(nodeID);
				if(operator!=null) {
					operator.setSucceedMode();
				}
				nodeID = nodes[1];
			}
			operator = m_CaseDiagramPanel.getOperator(nodeID);
			if (operator==null)
				return;
			operator.setFinishRunningMode();
			operator.setSelectMode();
			m_SystemMessageHandler.appendMessage(Resource.srcStr("Node")+" (" + operator.getLabel() + ") "+Resource.srcStr("stopexecution")+".\n");
			//m_CaseDiagramPanel.getPanelDiagramDrawing().paintImmediately(
			//		m_CaseDiagramPanel.getPanelDiagramDrawing().getBounds());
		}
	}
	

	/**
	 * Sets layout of CaseWindow in edit mode.
	 */
	private void setEditModeLayout() {
		m_CaseToolBar.setVisible(m_IsEditMode);
		SystemMessagePanel.getInstance(m_CaseID).setVisible(m_IsEditMode);
		if (m_IsEditMode)
			m_SplitPaneDiagramMessage.setDividerSize(2);
		else
			m_SplitPaneDiagramMessage.setDividerSize(0);
	}

	/**
	 * Sets poperties of the CaseWindow.
	 * @throws SysException
	 */
	private void setCaseWindowProperties() throws SysException {
		this.setClosable(true);
		this.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
		this.setFrameIcon(ResourceLoader.getImageIcon(ImageLocation.CASE));

		try {
			this.setIcon(false);
		} catch (java.beans.PropertyVetoException pe) {
		}
		this.setIconifiable(true);
		this.setJMenuBar(null);
		this.setLayer(0);
		this.setMaximizable(true);
		this.setResizable(true);
		this.addInternalFrameListener(this);
	}

	/**
	 * Notifies parent about any changes of the state of this Case.
	 */
	private void notifyParent() {
		String prefix = null;
		if (getEditMode()) {
			if (m_IsNew)
				prefix = "new|";
			else
				prefix = "edit|";
		} else
			prefix = "view|";

		m_ParentFrame.getMenuBarHandler().sendNotify(prefix + m_CaseID);
		m_ParentFrame.getToolBarHandler().sendNotify(prefix + m_CaseID);
	}

	/**
	 * Creates UI of the CaseWindow.
	 * @throws SysException
	 */
	private void createCaseWindow() throws SysException {

//		m_CaseDiagramPanel = new CaseDiagramPanel();
		m_CaseDiagramPanel = CaseDiagramPanel.createInstance(this, m_CaseID);
		m_CaseDiagramPanel.setCaseWindow(this);

		m_MessageTab = new JHelpTabbedPane();
//		m_SystemMessagePanel = new SystemMessagePanel(m_MessageTab);
		String[] superscript = new String[1];
		superscript[0] = m_CaseName;
		SystemMessagePanel.createInstance(m_CaseID,superscript,m_MessageTab); 
		//m_SystemMessagePanel = SystemMessagePanel.getInstance();
		m_DescriptionPanel = new DescriptionPanel(m_MessageTab, m_CaseDiagramPanel);

		m_SplitPaneDiagramMessage = new JHelpSplitPane();

		// <<25/07/2005 Kenneth Lai: Add for JHelp
		HelpObserveSubject.registerInterest(this);
		HelpObserveSubject.registerInterest(m_CaseDiagramPanel);
//		HelpObserveSubject.registerInterest(m_DescriptionPanel);
//		HelpObserveSubject.registerInterest(m_MessageTab);
//		HelpObserveSubject.registerInterest(SystemMessagePanel.getInstance(m_CaseID));
		HelpObserveSubject.registerInterest(m_SplitPaneDiagramMessage);
		// 25/07/2005 Kenneth Lai: Add for JHelp>>
		
		// Operator Panel
		//<<Frank Xu, 09/12/2004
		//set DM Engine Type to SAS temporarily.
		m_CaseDiagramPanel.setM_DMEngineType(m_DMEngineType);		
		//m_OperatorPanel = OperatorPanelFactory.createInstance(m_DMEngineType);
		//Frank Xu, 09/12/2004>>.		
		
		
		// Case Diagram and Message Panel
//		m_CaseDiagramPanel.setCaseID(m_CaseID);
		
		m_ParentFrame.getMenuBarHandler().updateRecentFileList(getCaseID());

		m_SplitPaneDiagramMessage.add(m_CaseDiagramPanel, JSplitPane.TOP);	
		
		
		//m_SplitPaneDiagramMessage.add(m_SystemMessagePanel, JSplitPane.BOTTOM);
		m_MessageTab.setTabPlacement(JTabbedPane.BOTTOM);		
		m_MessageTab.add(m_DescriptionPanel,Resource.srcStr("DescriptionMessageTab"));
		m_MessageTab.add(SystemMessagePanel.getInstance(m_CaseID), Resource.srcStr("SystemMessageTab"));
//		m_MessageTab.setFont(new java.awt.Font("Dialog",5,12));
		m_SplitPaneDiagramMessage.add(m_MessageTab, JSplitPane.BOTTOM);		

		//<< 12/08/2006 Xiaojun Chen: Added for Case Toobar
		m_CaseHelpToolBarHandler = new CaseHelpToolBarHandler(this);
		m_CaseToolBar = m_CaseHelpToolBarHandler.getToolBar();
		m_CaseToolBar.setPreferredSize(new Dimension(210, 300));
		
		// 10/08/2005 Kenneth Lai: Added for widening stencil>>
		
		getContentPane().add(m_CaseToolBar, BorderLayout.WEST);
		getContentPane().add(m_SplitPaneDiagramMessage, BorderLayout.CENTER);
		m_SplitPaneDiagramMessage.addMouseListener(this);
		m_SplitPaneDiagramMessage.addMouseMotionListener(this);
		m_DescriptionPanel.addMouseListener(this);
		m_DescriptionPanel.addMouseMotionListener(this);
		m_MessageTab.addMouseListener(this);
		m_MessageTab.addMouseMotionListener(this);
		m_CaseDiagramPanel.addMouseListener(this);
		m_CaseDiagramPanel.addMouseMotionListener(this);
		setCaseWindowProperties();

		m_SplitPaneDiagramMessage.setOrientation(JSplitPane.VERTICAL_SPLIT);
//		m_SplitPaneDiagramMessage.setDividerLocation(350);
//		m_SplitPaneDiagramMessage.setLastDividerLocation(350);
		m_SplitPaneDiagramMessage.setDividerLocation(500); //<<29/03/2005 Mark LiResize the vertical span of the description area
		m_SplitPaneDiagramMessage.setLastDividerLocation(200);//29/03/2005 Mark LiResize the vertical span of the description area>>
		m_SplitPaneDiagramMessage.setResizeWeight(1);

		setEditModeLayout();
	}
	
	public CaseDiagramPanel getCaseDiagramPanel()
	{
		return m_CaseDiagramPanel;
	}
	/* (non-Javadoc)
	 * @see eti.bi.alphaminer.core.observer.Observer#sendNotify(int)
	 */
	public void sendNotify(int a_Message) {
		// TODO Auto-generated method stub
	}
	
	/* (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
	}
	
	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;
	}
	// 22/07/2005 Kenneth Lai: Added for JHelp>>
	
	// 11/08/2006 Xiaojun Chen: Added for CaseHelpToolBar
	public boolean hasCaseHelpToolBarHandler(){
		return m_CaseHelpToolBarHandler!=null;
	}
	
	/**
	 * Add a CaseHelpToolBar
	 * @param aCaseHelpToolBar a CaseHelpToolBar to be added for CaseWindow
	 * */
	public void addCaseHelpToolBarHandler(CaseHelpToolBarHandler aCaseHelpToolBar){
		m_CaseHelpToolBarHandler = aCaseHelpToolBar;
		m_CaseToolBar = m_CaseHelpToolBarHandler.getToolBar();
		getContentPane().add(m_CaseToolBar,BorderLayout.WEST);
	}

	public void ActionCaseHelpToolBar() {
		if(m_CaseToolBar!=null) {
			m_CaseToolBar.setVisible(!m_CaseToolBar.isVisible());
		}
	}
	
	public void showCaseHelpToolBar() {
		m_CaseToolBar.setVisible(true);
	}
	
	public void hideCaseHelpToolBar(){
		if(m_CaseHelpToolBarHandler==null){
			return;
		}
		m_CaseToolBar.setVisible(false);
	}
	
	public void Dock() {
		((BasicToolBarUI) m_CaseToolBar.getUI()).setFloating(false, null);
		getContentPane().add(m_CaseToolBar, BorderLayout.WEST);
	}

	public void Float() {
		
	}

	public void removeSystemHelpToolBar() {
		hideCaseHelpToolBar();
		m_CaseHelpToolBarHandler.showAllToolPage();
	}
	
	public CaseHelpToolBarHandler getCaseHelpToolBarHandler() {
		return m_CaseHelpToolBarHandler;
	}

	public void registerInterest(Observer a_Observer) {
		// TODO Auto-generated method stub
		
	}
}

⌨️ 快捷键说明

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