public void AddProblem(long pnum) { //get code path string path = LocalDirectory.GetCodesPath(pnum); if (string.IsNullOrEmpty(path)) { return; } //get language CodeFileCreator cfc = new CodeFileCreator(); if (cfc.ShowDialog() != DialogResult.OK) { return; } Structures.Language lang = cfc.Language; cfc.Dispose(); //get file extension string ext = ".cpp"; if (lang == Structures.Language.C) { ext = ".c"; } else if (lang == Structures.Language.Java) { ext = ".java"; } else if (lang == Structures.Language.Pascal) { ext = ".pascal"; } //create code file string name = Path.GetFileName(path); CreateFile(path, name, ext); //create input-output string input = Path.Combine(path, "input.txt"); string output = Path.Combine(path, "output.txt"); string correct = Path.Combine(path, "correct.txt"); LocalDirectory.CreateFile(input); LocalDirectory.CreateFile(output); LocalDirectory.CreateFile(correct); ParseInputOutput(pnum, input, correct); //select created problem this.BeginInvoke((MethodInvoker) delegate { ExpandAndSelect(LocateProblem(pnum), ExpandSelectType.SelecFirstChild); }); }
public void AddProblem(long pnum) { //get code path string path = LocalDirectory.GetCodesPath(pnum); if (string.IsNullOrEmpty(path)) return; //get language CodeFileCreator cfc = new CodeFileCreator(); if (cfc.ShowDialog() != DialogResult.OK) return; Structures.Language lang = cfc.Language; cfc.Dispose(); //get file extension string ext = ".cpp"; if (lang == Structures.Language.C) ext = ".c"; else if (lang == Structures.Language.Java) ext = ".java"; else if (lang == Structures.Language.Pascal) ext = ".pascal"; //create code file string name = Path.GetFileName(path); CreateFile(path, name, ext); //create input-output string input = Path.Combine(path, "input.txt"); string output = Path.Combine(path, "output.txt"); string correct = Path.Combine(path, "correct.txt"); LocalDirectory.CreateFile(input); LocalDirectory.CreateFile(output); LocalDirectory.CreateFile(correct); ParseInputOutput(pnum, input, correct); //select created problem this.BeginInvoke((MethodInvoker)delegate { ExpandAndSelect(LocateProblem(pnum), ExpandSelectType.SelecFirstChild); }); }