mirror of
https://github.com/OMGeeky/ATCS.git
synced 2025-12-26 23:57:25 +01:00
main changes are: - Modified marker (* character before name) goes up the project tree by marking all parents of a modified object as modified. - Impact management when changing an object's ID. Allows for some refactoring to occur, while marking the impacted elements as modified, or aven creating "altered" versions if imapcted element was only in game source.
125 lines
2.4 KiB
Java
125 lines
2.4 KiB
Java
package com.gpl.rpg.atcontentstudio.model;
|
|
|
|
import java.awt.Image;
|
|
import java.util.ArrayList;
|
|
import java.util.Enumeration;
|
|
import java.util.List;
|
|
|
|
import javax.swing.tree.TreeNode;
|
|
|
|
import com.gpl.rpg.atcontentstudio.model.GameSource.Type;
|
|
import com.gpl.rpg.atcontentstudio.model.gamedata.GameDataSet;
|
|
import com.gpl.rpg.atcontentstudio.ui.DefaultIcons;
|
|
|
|
public class ClosedProject implements ProjectTreeNode {
|
|
|
|
String name;
|
|
Workspace parent;
|
|
|
|
public ClosedProject(Workspace w, String name) {
|
|
this.parent = w;
|
|
this.name = name;
|
|
}
|
|
|
|
@Override
|
|
public TreeNode getChildAt(int childIndex) {
|
|
return null;
|
|
}
|
|
@Override
|
|
public int getChildCount() {
|
|
return 0;
|
|
}
|
|
@Override
|
|
public TreeNode getParent() {
|
|
return parent;
|
|
}
|
|
@Override
|
|
public int getIndex(TreeNode node) {
|
|
return 0;
|
|
}
|
|
@Override
|
|
public boolean getAllowsChildren() {
|
|
return false;
|
|
}
|
|
@Override
|
|
public boolean isLeaf() {
|
|
return true;
|
|
}
|
|
@Override
|
|
public Enumeration<ProjectTreeNode> children() {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public void childrenAdded(List<ProjectTreeNode> path) {
|
|
path.add(0,this);
|
|
parent.childrenAdded(path);
|
|
}
|
|
@Override
|
|
public void childrenChanged(List<ProjectTreeNode> path) {
|
|
path.add(0,this);
|
|
parent.childrenChanged(path);
|
|
}
|
|
@Override
|
|
public void childrenRemoved(List<ProjectTreeNode> path) {
|
|
path.add(0,this);
|
|
parent.childrenRemoved(path);
|
|
}
|
|
@Override
|
|
public void notifyCreated() {
|
|
childrenAdded(new ArrayList<ProjectTreeNode>());
|
|
}
|
|
|
|
@Override
|
|
public String getDesc() {
|
|
return name+" [closed]";
|
|
}
|
|
|
|
@Override
|
|
public Project getProject() {
|
|
return null;
|
|
}
|
|
|
|
|
|
@Override
|
|
public Image getIcon() {
|
|
return getOpenIcon();
|
|
}
|
|
@Override
|
|
public Image getClosedIcon() {
|
|
//TODO Create a cool Project icon.
|
|
return DefaultIcons.getStdClosedIcon();
|
|
}
|
|
@Override
|
|
public Image getLeafIcon() {
|
|
//TODO Create a cool Project icon.
|
|
return DefaultIcons.getStdClosedIcon();
|
|
}
|
|
@Override
|
|
public Image getOpenIcon() {
|
|
//TODO Create a cool Project icon.
|
|
return DefaultIcons.getStdOpenIcon();
|
|
}
|
|
|
|
@Override
|
|
public GameDataSet getDataSet() {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public Type getDataType() {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public boolean isEmpty() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean needsSaving() {
|
|
return false;
|
|
}
|
|
|
|
}
|