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

📄 libdialog.java

📁 用Java开发的、实现类似Visio功能的应用程序源码
💻 JAVA
字号:
/**
 *    $Id:LibDialog.java $
 *
 *    Copyright 2004 ~ 2005  JingFei International Cooperation LTD. All rights reserved. *
 */


package com.jfimagine.jfdraw.gui.dialog;

import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Container;
import java.awt.Font;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.BorderFactory;
import javax.swing.JTabbedPane;
import javax.swing.JFrame;

import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRootPane;
import javax.swing.JTextArea;
import javax.swing.KeyStroke;
import javax.swing.JOptionPane;
import javax.swing.JButton;
import javax.swing.JEditorPane;

import com.jfimagine.jfdraw.gui.ToolFactory;
import com.jfimagine.jfdraw.gui.resource.CADResource;
import com.jfimagine.jfdraw.gui.GUIConst;
import com.jfimagine.jfdraw.gui.CADPane;
import com.jfimagine.jfdraw.gui.DrawAdapter;  
import com.jfimagine.jfdraw.gui.GUIUtils;


/**
 * LibDialog is used to process libraries and templates.
 *
 * @author     CookieMaker    
 *
 * @version $Revision: 1.1.0 $
 */
public class LibDialog extends JDialog implements ActionListener,WindowListener{

    	private static LibDialog m_dialog=null;
    	public static LibDialog getDialog(){
    		return m_dialog;
	}
        
        public static LibDialog getInstance(DrawAdapter pane){
    		if (m_dialog==null){
        		JFrame frame = GUIUtils.getJFrame(pane);
        		m_dialog = new LibDialog(frame,pane,CADResource.getString("dialog.library.title"));
        	}
        	return m_dialog;
        }
    	
	private DrawAdapter	 m_pane;    	
    	private LibPanel m_libraryPanel;
    	private LibPanel m_templatePanel;  
    	
    	public  LibPanel getLibraryPanel(){
    		return m_libraryPanel;
    	}
    	public  LibPanel getTemplatePanel(){
    		return m_templatePanel;
    	}


    	public static void showLibDialog(DrawAdapter pane) {
    		if (m_dialog==null){
        		JFrame frame = GUIUtils.getJFrame(pane);
        		m_dialog = new LibDialog(frame,pane,CADResource.getString("dialog.library.title"));
        	}
        	m_dialog.setVisible(true);
    	}

	public LibDialog(Frame owner, DrawAdapter pane,String title) {
		super(owner, title, true);

		m_pane	=pane;
                
    		LibContainer container	=new LibContainer(pane); 
    		m_libraryPanel		=container.getLibraryPanel();
    		m_templatePanel		=container.getTemplatePanel();
		
        	//Put everything together, using the content pane's BorderLayout.
        	Container contentPane = getContentPane();
		contentPane.setLayout(new BorderLayout());
        	contentPane.add(container, BorderLayout.CENTER);

		setModal(false);
		setSize(new Dimension(150, 400)); 
		setLocation(0,100); 
		addWindowListener(this);
	}


    	//Handle clicks on the Set and Cancel buttons.
    	public void actionPerformed(ActionEvent e) {
        	if ("Confirm".equals(e.getActionCommand())) {
        		//do nothing
        	}else{
        		//do nothing
        	}
        	
        	m_dialog.setVisible(false);
    	}

 
	public void windowOpened(WindowEvent e){
	}

	public void windowClosing(WindowEvent e){
		if (m_libraryPanel.isModified() || m_templatePanel.isModified()){
                    		int n = JOptionPane.showConfirmDialog(
                                   null,
                                   CADResource.getString("libdialog.savemodified"),
                                   CADResource.getString("sys.warn"),
                                    JOptionPane.YES_NO_OPTION);
                                   
				if (n==JOptionPane.YES_OPTION){
                    			m_libraryPanel.saveLibrary();  
                    			m_templatePanel.saveLibrary();
                    		}
			
		}
	}

	public void windowClosed(WindowEvent e){
	}

	public void windowIconified(WindowEvent e){
	}

	public void windowDeiconified(WindowEvent e){
	}

	public void windowActivated(WindowEvent e){
	}

	public void windowDeactivated(WindowEvent e){
	}


}

⌨️ 快捷键说明

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