package jetbrains.mps.build.mps.pluginSolution.plugin; /*Generated by MPS */ import java.util.List; import jetbrains.mps.internal.collections.runtime.ListSequence; import java.util.LinkedList; import org.jetbrains.mps.openapi.module.SModule; import java.util.Comparator; import javax.swing.Icon; public class ModulesListData implements NodeData { private final List<NodeData> myData = ListSequence.fromList(new LinkedList<NodeData>()); private final List<ModuleData> myModules = ListSequence.fromList(new LinkedList<ModuleData>()); public ModulesListData(List<SModule> modules) { for (SModule m : modules) { ModuleData moduleData = new ModuleData(m); ListSequence.fromList(this.myModules).addElement(moduleData); } ListSequence.fromList(this.myModules).sort(new Comparator<ModuleData>() { public int compare(ModuleData p0, ModuleData p1) { return p0.getText().compareToIgnoreCase(p1.getText()); } }, true); } @Override public String getText() { return "All Modules In Project"; } @Override public List<NodeData> getChildren() { return this.myData; } public List<ModuleData> getModules() { return this.myModules; } @Override public Icon getIcon(boolean expanded) { return null; } @Override public boolean canHaveChildren() { return true; } @Override public void addChildren(NodeData nodeData) { ListSequence.fromList(this.myData).addElement(nodeData); } @Override public NodeData getParent() { return null; } @Override public void setParent(NodeData parent) { } }