📄 statemanager.java
字号:
package controller.state;
import viewer.*;
import model.persistency.*;
import javax.swing.JOptionPane;
/**
*
* <p>Title: </p>
* 状态管理类
* <p>Description: </p>
* 对各个状态进行管理,用于状态之间的转换
*/
public class StateManager {
private State currentstate;
ChoiceItemState cis;
MChoiceItemState mcis;
BFItemState bfis;
TFItemState tfis;
public StateManager(Mediator m){
cis = new ChoiceItemState(m);
mcis = new MChoiceItemState(m);
bfis = new BFItemState(m);
tfis = new TFItemState(m);
currentstate = null;
}
/**
* 设置为单选题状态
*/
public void setChoice(){ currentstate = cis;}
/**
* 设置为多选题状态
*/
public void setMChoice(){currentstate = mcis; }
/**
* 设置为填空题状态
*/
public void setBlankFill(){currentstate = bfis;}
/**
* 设置为判断题状态
*/
public void setTrueFalse(){ currentstate = tfis; }
/**
* 调用当前状态的动作
* @param item PersistentItem 题目
* @return UserFrame 当前状态框架
*/
public UserFrame mouseDown(PersistentItem item){
UserFrame frame = currentstate.mouseDown(item);
return frame;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -