statemanager.java

来自「这个是java设计模式的文件 可能对了解设计思想有一定帮助」· Java 代码 · 共 52 行

JAVA
52
字号
import java.awt.*;

public class StateManager
{
 private State currentState;
 RectState rState;
 ArrowState aState;
 CircleState cState;
 FillState fState;

 public StateManager(Mediator med)
 {
  rState = new RectState(med);
  cState = new CircleState(med);
  aState = new ArrowState(med);
  fState = new FillState(med);
  currentState = aState;
 }
 public void setRect()
 {
    currentState = rState;
 }
 public void setCircle()
 {
    currentState = cState;
 }
 public void setFill()
 {
    currentState = fState;
 }
 public void setArrow()
 {
    currentState = aState;
 }
 public void mouseDown(int x, int y)
 {
    currentState.mouseDown(x, y);
 }
 public void mouseUp(int x, int y)
 {
    currentState.mouseUp(x, y);
 }
 public void mouseDrag(int x, int y)
 {
    currentState.mouseDrag(x, y);
 }
 public void select(Drawing d, Color c)
 {
    currentState.select(d, c);
 }
}

⌨️ 快捷键说明

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