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

📄 freegrapheditor.java

📁 经典的java图像处理程序源码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.mxgraph.swing.examples;import java.awt.Color;import java.awt.Point;import java.net.URL;import java.text.NumberFormat;import java.util.Iterator;import java.util.List;import javax.swing.ImageIcon;import javax.swing.UIManager;import org.w3c.dom.Document;import com.mxgraph.io.mxCodec;import com.mxgraph.model.mxCell;import com.mxgraph.model.mxGeometry;import com.mxgraph.model.mxICell;import com.mxgraph.model.mxIGraphModel;import com.mxgraph.swing.mxGraphComponent;import com.mxgraph.swing.examples.editor.BasicGraphEditor;import com.mxgraph.swing.examples.editor.EditorMenuBar;import com.mxgraph.swing.examples.editor.EditorPalette;import com.mxgraph.swing.util.mxGraphTransferable;import com.mxgraph.util.mxConstants;import com.mxgraph.util.mxEvent;import com.mxgraph.util.mxEventObject;import com.mxgraph.util.mxPoint;import com.mxgraph.util.mxResources;import com.mxgraph.util.mxUtils;import com.mxgraph.util.mxEventSource.mxIEventListener;import com.mxgraph.view.mxCellState;import com.mxgraph.view.mxGraph;public class FreeGraphEditor extends BasicGraphEditor{	/**	 * Holds the shared number formatter.	 * 	 * @see NumberFormat#getInstance()	 */	public static final NumberFormat numberFormat = NumberFormat.getInstance();	/**	 * Holds the URL for the icon to be used as a handle for creating new	 * connections. This is currently unused.	 */	public static URL url = null;	//FreeGraphEditor.class.getResource("/com/mxgraph/swing/examples/images/connector.gif");	/**	 * 	 */	public FreeGraphEditor()	{		super("mxGraph Editor", new CustomGraphComponent(new CustomGraph()));		final mxGraph graph = graphComponent.getGraph();		// Creates the shapes palette		EditorPalette shapesPalette = insertPalette(mxResources.get("shapes"));		EditorPalette imagesPalette = insertPalette(mxResources.get("images"));		EditorPalette symbolsPalette = insertPalette(mxResources.get("symbols"));		// Sets the edge template to be used for creating new edges if an edge		// is clicked in the shape palette		shapesPalette.addListener(mxEvent.SELECT,				new mxIEventListener()				{					public void invoke(Object sender, mxEventObject evt)					{						if (evt.getArgCount() > 0								&& evt.getArgAt(1) instanceof mxGraphTransferable)						{							mxGraphTransferable t = (mxGraphTransferable) evt									.getArgAt(1);							Object cell = t.getCells()[0];							if (graph.getModel().isEdge(cell))							{								((CustomGraph) graph).setEdgeTemplate(cell);							}						}					}				});		// Adds some template cells for dropping into the graph		shapesPalette				.addTemplate(						"Container",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/swimlane.png")),						"swimlane", 280, 280, "Container");		shapesPalette				.addTemplate(						"Rectangle",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/rectangle.png")),						null, 160, 120, "");		shapesPalette				.addTemplate(						"Rounded Rectangle",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/rounded.png")),						"rounded=1", 160, 120, "");		shapesPalette				.addTemplate(						"Ellipse",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/ellipse.png")),						"ellipse", 160, 160, "");		shapesPalette				.addTemplate(						"Double Ellipse",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/doubleellipse.png")),						"ellipse;shape=doubleEllipse", 160, 160, "");		shapesPalette				.addTemplate(						"Triangle",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/triangle.png")),						"triangle", 120, 160, "");		shapesPalette				.addTemplate(						"Rhombus",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/rhombus.png")),						"rhombus", 160, 160, "");		shapesPalette				.addTemplate(						"Horizontal Line",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/hline.png")),						"line", 160, 10, "");		shapesPalette				.addTemplate(						"Hexagon",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/hexagon.png")),						"shape=hexagon", 160, 120, "");		shapesPalette				.addTemplate(						"Cylinder",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/cylinder.png")),						"shape=cylinder", 120, 160, "");		shapesPalette.addTemplate("Actor", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/actor.png")),				"shape=actor", 120, 160, "");		shapesPalette.addTemplate("Cloud", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/cloud.png")),				"ellipse;shape=cloud", 160, 120, "");		shapesPalette				.addEdgeTemplate(						"Straight",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/straight.png")),						"straight", 120, 120, "");		shapesPalette				.addEdgeTemplate(						"Horizontal Connector",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/connect.png")),						null, 100, 100, "");		shapesPalette				.addEdgeTemplate(						"Vertical Connector",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/vertical.png")),						"vertical", 100, 100, "");		shapesPalette				.addEdgeTemplate(						"Entity Relation",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/entity.png")),						"entity", 100, 100, "");		shapesPalette				.addEdgeTemplate(						"Arrow",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/arrow.png")),						"arrow", 120, 120, "");		imagesPalette.addTemplate("Bell", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/bell.png")),				"image;image=/com/mxgraph/swing/examples/images/bell.png", 50,				50, "Bell");		imagesPalette.addTemplate("Box", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/box.png")),				"image;image=/com/mxgraph/swing/examples/images/box.png", 50,				50, "Box");		imagesPalette				.addTemplate(						"Cube",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/cube_green.png")),						"image;image=/com/mxgraph/swing/examples/images/cube_green.png",						50, 50, "Cube");		imagesPalette				.addTemplate(						"User",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/dude3.png")),						"roundImage;image=/com/mxgraph/swing/examples/images/dude3.png",						50, 50, "User");		imagesPalette				.addTemplate(						"Earth",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/earth.png")),						"roundImage;image=/com/mxgraph/swing/examples/images/earth.png",						50, 50, "Earth");		imagesPalette.addTemplate("Gear", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/gear.png")),				"roundImage;image=/com/mxgraph/swing/examples/images/gear.png",				50, 50, "Gear");		imagesPalette.addTemplate("Home", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/house.png")),				"image;image=/com/mxgraph/swing/examples/images/house.png", 50,				50, "Home");		imagesPalette				.addTemplate(						"Package",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/package.png")),						"image;image=/com/mxgraph/swing/examples/images/package.png",						50, 50, "Package");		imagesPalette				.addTemplate(						"Printer",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/printer.png")),						"image;image=/com/mxgraph/swing/examples/images/printer.png",						50, 50, "Printer");		imagesPalette.addTemplate("Server", new ImageIcon(FreeGraphEditor.class				.getResource("/com/mxgraph/swing/examples/images/server.png")),				"image;image=/com/mxgraph/swing/examples/images/server.png",				50, 50, "Server");		imagesPalette				.addTemplate(						"Workplace",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/workplace.png")),						"image;image=/com/mxgraph/swing/examples/images/workplace.png",						50, 50, "Workplace");		imagesPalette				.addTemplate(						"Wrench",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/wrench.png")),						"roundImage;image=/com/mxgraph/swing/examples/images/wrench.png",						50, 50, "Wrench");		symbolsPalette				.addTemplate(						"Cancel",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/cancel_end.png")),						"roundImage;image=/com/mxgraph/swing/examples/images/cancel_end.png",						80, 80, "Cancel");		symbolsPalette				.addTemplate(						"Error",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/error.png")),						"roundImage;image=/com/mxgraph/swing/examples/images/error.png",						80, 80, "Error");		symbolsPalette				.addTemplate(						"Event",						new ImageIcon(								FreeGraphEditor.class										.getResource("/com/mxgraph/swing/examples/images/event.png")),						"roundImage;image=/com/mxgraph/swing/examples/images/event.png",						80, 80, "Event");

⌨️ 快捷键说明

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