Вариант для \Classes\EditorScripts
X++:
public void OpenNewWindowProject(Editor e)
{
#define.Shared('Shared')
#define.Private('Private')
str projectName = subStr(e.currentLine(), e.selectionStartCol(), e.selectionEndCol() - e.selectionStartCol());
ProjectNode projectNode;
boolean findProject(boolean _isPrivate = false)
{
boolean ret;
;
projectNode = infolog.projectRootNode();
projectNode = projectNode.AOTfindChild(_isPrivate ? #Private : #Shared);
projectNode = projectNode.AOTfindChild(projectName);
if (projectNode)
{
ret = true;
}
return ret;
}
;
if(findProject() || findProject(true))
{
projectNode.AOTrun();
}
else
{
checkFailed(strFmt("Не удалось найти проект \"%1\"", projectName));
}
}