package jetbrains.mps.ide.actions;
/*Generated by MPS */
import com.intellij.openapi.actionSystem.DefaultActionGroup;
import jetbrains.mps.ide.ui.tree.module.NamespaceTextNode;
import jetbrains.mps.ide.ui.tree.module.ProjectModulesPoolTreeNode;
import jetbrains.mps.workbench.action.ActionUtils;
import java.util.Map;
public class NamespaceInternalActionsUtil {
public static DefaultActionGroup createNewGroup(final NamespaceTextNode node) {
boolean hasModulesUnder = node.hasModulesUnder();
boolean hasModelsUnder = node.hasModelsUnder();
if (!(hasModelsUnder) && !(hasModulesUnder)) {
return null;
}
DefaultActionGroup newGroup = new DefaultActionGroup("New", true);
// Actions should be disabled for modules pool
if (node.getPath().length > 1 && node.getPath()[1] instanceof ProjectModulesPoolTreeNode) {
return null;
}
if (hasModulesUnder) {
newGroup.addAll(ActionUtils.getGroup(NamespaceNewActions_ActionGroup.ID));
}
if (hasModelsUnder && hasModulesUnder) {
newGroup.addSeparator();
}
if (hasModelsUnder) {
newGroup.add(new NewModel_Action() {
@Override
protected String getNamespace(Map<String, Object> _params) {
return node.getNamespace();
}
});
}
return newGroup;
}
}