📄 selectmousecommand.java
字号:
package org.goshawk.workflow.GUI.MouseCommand;
import java.awt.Point;
import java.awt.Rectangle;
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.RectangleShell;
import org.goshawk.workflow.GUI.Utils.ShapeUtil;
public class SelectMouseCommand implements MouseCommand
{
private Point beginPoint = new Point();
private Point endPoint = new Point();
private boolean isButton1 = false;
private EditorCanvas canvas = null;
private ShapeMap shapeMap = null;
public SelectMouseCommand()
{
this.canvas = EditorFrame.getCanvas();
shapeMap = canvas.getShapeMap();
}
public SelectMouseCommand(EditorCanvas canvas)
{
this.canvas = canvas;
}
public void mouseReleased(MouseEvent event)
{
RectangleShell rectArea = (RectangleShell)canvas.getShapeMap().get(MouseCommand.RECT_AREA);
if(rectArea!=null)
{
int x = rectArea.getX();
int y = rectArea.getY();
int endx = rectArea.getWidth()+x;
int endy = rectArea.getHeight()+y;
canvas.getShapeMap().selectCheckWithCutRect(x,y,endx,endy);
}
canvas.addShapeShell(MouseCommand.RECT_AREA,null);
canvas.repaint();
isButton1 = false;
}
public void mouseDragged(MouseEvent event)
{
if(isButton1)
{
endPoint = event.getPoint();
int width = endPoint.x - beginPoint.x;
int height = endPoint.y - beginPoint.y;
int x = beginPoint.x;
int y = beginPoint.y;
Rectangle rect = ShapeUtil.createRectangle(x, y, width, height);
RectangleShell rectShell = new RectangleShell(rect);
rectShell.setSelectable(false);
canvas.addShapeShell(MouseCommand.RECT_AREA,rectShell);
RectangleShell rectArea = (RectangleShell)canvas.getShapeMap().get(MouseCommand.RECT_AREA);
if(rectArea!=null)
{
x = rectArea.getX();
y = rectArea.getY();
int endx = rectArea.getWidth()+x;
int endy = rectArea.getHeight()+y;
canvas.getShapeMap().selectCheckWithCutRect(x,y,endx,endy);
}
canvas.repaint();
}
}
public void mousePressed(MouseEvent event)
{
if (event.getButton() == MouseEvent.BUTTON1)
{
beginPoint = event.getPoint();
isButton1 = true;
shapeMap.selectCheckWithMouse(beginPoint.x,beginPoint.y);
canvas.repaint();
canvas.removeComponent();
}
}
public boolean process(MouseEvent event)
{
return false;
}
public void setCanvas(EditorCanvas canvas)
{
this.canvas = canvas;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -