📄 treeviewcontainer.java
字号:
package fileTree;
import java.util.ArrayList;
import java.util.List;
/**
* 记录树的历史视图
* @author hyj
*
*/
public class TreeViewContainer {
// 储存对树的操作历史中每个树的视图对象
private List viewList = new ArrayList();
// 跟踪back,forward的索引
private int index = 0;
private static int LIST_SIZE = 3;
private boolean isMost = false;
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
public List getViewList() {
return viewList;
}
public void setViewList(List viewList) {
this.viewList = viewList;
}
public void privious(){
this.index--;
}
public void next(){
this.index++;
}
public boolean isFirst(){
return index == 0;
}
public boolean isLast(){
return index == (viewList.size() - 1);
}
public void addView(Object obj) {
if(!isMost){
if(index == LIST_SIZE){
isMost = true;
replaceValue(obj);
return;
}
next();
viewList.add(index, obj);
} else { // 如果容器已满,每次删除第一个,把新元素添加到最后,游标指向容器最后一个元素
replaceValue(obj);
}
}
/**
* 每次删除第一个,把新元素添加到最后,游标指向容器最后一个元素
* @param obj
*/
private void replaceValue(Object obj) {
viewList.remove(0);
viewList.add(obj);
index = getSize() - 1;
}
public void addView(int index, Object obj){
viewList.add(index, obj);
}
public Object getView(){
return viewList.get(index);
}
public int getSize(){
return viewList.size();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -