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

📄 alignmentdialog.java

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


package com.jfimagine.jfdraw.gui.dialog;

import java.awt.BorderLayout;
import java.awt.GridLayout;
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.BorderFactory;
import javax.swing.JFrame;

import javax.swing.JComponent;
import javax.swing.JDialog;
import javax.swing.JPanel;
import javax.swing.JOptionPane;
import javax.swing.JButton;

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;

import com.jfimagine.jfdraw.action.ActionConst;

/**
 * AlignmentDialog is used to process grpah alignments.
 *
 * @author     CookieMaker    
 *
 * @version $Revision: 1.3.3 $
 */
public class AlignmentDialog extends JDialog implements ActionListener {

    	private static AlignmentDialog m_dialog=null;
    	public static AlignmentDialog getDialog(){
    		return m_dialog;
	}
    	
	private DrawAdapter	 m_pane;    	
 
    	public static void showAlignmentDialog(DrawAdapter pane) {
    		if (m_dialog==null){
        		JFrame frame = GUIUtils.getJFrame(pane);
        		m_dialog = new AlignmentDialog(frame,pane,CADResource.getString("label.alignment.alignment"));
        	}
        	m_dialog.setVisible(true);
    	}

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

		m_pane	=pane;
                
    		    
		JButton alignLeftButton	=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.left.label"),
        			 	CADResource.getString("menuitem.view.alignment.left.tooltip"),
        			 	"general/alignleft24",
       			   	 	CADResource.getChar("menuitem.view.alignment.left.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_LEFT,
        			 	this);

		JButton alignRightButton=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.right.label"),
        			 	CADResource.getString("menuitem.view.alignment.right.tooltip"),
        			 	"general/alignright24",
       			   	 	CADResource.getChar("menuitem.view.alignment.right.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_RIGHT,
        			 	this);

		JButton alignTopButton	=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.top.label"),
        			 	CADResource.getString("menuitem.view.alignment.top.tooltip"),
        			 	"general/aligntop24",
       			   	 	CADResource.getChar("menuitem.view.alignment.top.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_TOP,
        			 	this);

		JButton alignBottomButton=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.bottom.label"),
        			 	CADResource.getString("menuitem.view.alignment.bottom.tooltip"),
        			 	"general/alignbottom24",
       			   	 	CADResource.getChar("menuitem.view.alignment.bottom.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_BOTTOM,
        			 	this);

		JButton alignCenterButton=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.center.label"),
        			 	CADResource.getString("menuitem.view.alignment.center.tooltip"),
        			 	"general/aligncenter24",
       			   	 	CADResource.getChar("menuitem.view.alignment.center.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_CENTER,
        			 	this);

		JButton alignJustifyHorizontalButton	=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.justify.horizontal.label"),
        			 	CADResource.getString("menuitem.view.alignment.justify.horizontal.tooltip"),
        			 	"general/alignjustifyhorizontal24",
       			   	 	CADResource.getChar("menuitem.view.alignment.justify.horizontal.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_JUSTIFY_HORIZONTAL,
        			 	this);

		JButton alignJustifyVerticalButton	=ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.justify.vertical.label"),
        			 	CADResource.getString("menuitem.view.alignment.justify.vertical.tooltip"),
        			 	"general/alignjustifyvertical24",
       			   	 	CADResource.getChar("menuitem.view.alignment.justify.vertical.mnemonic"),
        			 	ActionConst.CMD_GRAPH_ALIGNMENT_JUSTIFY_VERTICAL,
        			 	this);

		JButton alignProportionalSpacingHorizontal =
					ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.proportionalspacing.horizontal.label"),
        		 		CADResource.getString("menuitem.view.alignment.proportionalspacing.horizontal.tooltip"),
        		 		"general/alignhorizontalproportionalspacing16",
       		   	 		CADResource.getChar("menuitem.view.alignment.proportionalspacing.horizontal.mnemonic"),
        		 		ActionConst.CMD_GRAPH_ALIGNMENT_PROPORTIONAL_SPACING_HORIZONTAL,
        		 		this);

		JButton alignProportionalSpacingVertical =
					ToolFactory.createButton(CADResource.getString("menuitem.view.alignment.proportionalspacing.vertical.label"),
        		 		CADResource.getString("menuitem.view.alignment.proportionalspacing.vertical.tooltip"),
        		 		"general/alignverticalproportionalspacing16",
       		   	 		CADResource.getChar("menuitem.view.alignment.proportionalspacing.vertical.mnemonic"),
        		 		ActionConst.CMD_GRAPH_ALIGNMENT_PROPORTIONAL_SPACING_VERTICAL,
        		 		this);
        		 	        			 	
		
        	//Put everything together, using the content pane's BorderLayout.
        	Container contentPane = getContentPane();

		contentPane.setLayout(new GridLayout(0,9));
		contentPane.add(alignLeftButton);
		contentPane.add(alignRightButton);
		contentPane.add(alignTopButton);
		contentPane.add(alignBottomButton);
		contentPane.add(alignCenterButton);
		contentPane.add(alignJustifyHorizontalButton);
		contentPane.add(alignJustifyVerticalButton);
		contentPane.add(alignProportionalSpacingHorizontal);
		contentPane.add(alignProportionalSpacingVertical);

		setModal(false);
		setSize(new Dimension(300, 60)); 
		setLocation(300,100); 
	}


    //Handle clicks on each alignment buttons
    public void actionPerformed(ActionEvent e) { 
    	//System.out.println("align dialog: "+e.getActionCommand());
    	
    	m_pane.actionPerformed(e);
    }
    
}

⌨️ 快捷键说明

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