📄 keyandmousecommand.java
字号:
package org.goshawk.workflow.GUI.MouseCommand;
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.ShapeShell.ArrowShell;
import org.goshawk.workflow.GUI.ShapeShell.ShapeShell;
public class KeyAndMouseCommand implements MouseCommand
{
private int startX = 0;
private int startY = 0;
private ShapeShell target = null;
private ShapeShell origin = null;
private EditorCanvas canvas = EditorFrame.getCanvas();
private ShapeMap shapeMap = canvas.getShapeMap();
private boolean isDragged = false;
public void mouseReleased(MouseEvent event)
{
EditorFrame.getCanvas().getShapeMap().remove(FLOW_ARROW);
target = shapeMap.getShapeWithMouse(event.getX(),event.getY(),false);
if(isDragged)
{
if(origin!=null&&target!=null&&!target.getId().equals(origin.getId()))
{
origin.addOtherShape(target);
}
}
else
{
if(target!=null)
{
target.setSelected(true);
shapeMap.put(target.getId(),target);
}
}
isDragged = false;
EditorFrame.getCanvas().repaint();
EditorFrame.getCanvas().repaint();
}
public void mouseDragged(MouseEvent event)
{
ArrowShell arrow = new ArrowShell(startX,startY,event.getX(),event.getY());
arrow.setId(FLOW_ARROW);
EditorFrame.getCanvas().addShapeShell(arrow.getId(),arrow);
EditorFrame.getCanvas().repaint();
isDragged = true;
}
public void mousePressed(MouseEvent event)
{
origin = shapeMap.getShapeWithMouse(event.getX(),event.getY(),false);
if(origin!=null)
{
startX = origin.getCenterX();
startY = origin.getCenterY();
}
}
public boolean process(MouseEvent event)
{
return false;
}
public void setCanvas(EditorCanvas canvas)
{
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -