📄 commandfactory.java
字号:
package org.goshawk.workflow.GUI.MouseCommand.Factory;
import java.awt.Point;
import java.awt.event.MouseEvent;
import org.goshawk.workflow.GUI.Display.EditorCanvas;
import org.goshawk.workflow.GUI.Display.EditorFrame;
import org.goshawk.workflow.GUI.Display.ShapeMap;
import org.goshawk.workflow.GUI.MouseCommand.MouseCommand;
import org.goshawk.workflow.GUI.Utils.SpringUtil;
import org.springframework.context.ApplicationContext;
public class CommandFactory
{
private static ApplicationContext context = SpringUtil.getContext();
public static MouseCommand getMouseCommand(String name)
{
return (MouseCommand)context.getBean(name);
}
public static MouseCommand getMouseCommand(MouseEvent event)
{
Point mousePoint = event.getPoint();
EditorCanvas canvas = EditorFrame.getCanvas();
ShapeMap shapeMap = canvas.getShapeMap();
if(event.getButton() == MouseEvent.BUTTON3)
{
if(shapeMap.isMouseInShapes(mousePoint.x,mousePoint.y,false))
return getMouseCommand("RightEditMouseCommand");
else
return getMouseCommand("RightKeyMouseCommand");
}
else
{
if((!shapeMap.isSelected()
||shapeMap.isMouseInShapes(mousePoint.x,mousePoint.y,false))
&&!(shapeMap.isMultiSelected()&&shapeMap.isMouseInShapes(mousePoint.x,mousePoint.y,true)))
{
if(!event.isControlDown())
shapeMap.selectCheckWithMouse(mousePoint.x,mousePoint.y);
}
canvas.repaint();
if(event.getClickCount()>1)
{
return getMouseCommand("DoubleClickCommand");
}
if(event.isControlDown())
{
return getMouseCommand("KeyAndMouseCommand");
}
else if(!event.isControlDown()&&shapeMap.isSelected()
&&shapeMap.isMouseInShapes(mousePoint.x,mousePoint.y,true))
{
return getMouseCommand("PointClickMouseCommand");
}
else if(!event.isControlDown())
{
return getMouseCommand("SelectMouseCommand");
}
return getMouseCommand("SelectMouseCommand");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -