private void downloadCompleted() { switch (phase) { case Phase.Thumnail: downloadDirectory = subDirectory + @"\" + HtmlDirectory + @"\"; downloadRequestList = new List<string>(); foreach (Item item in Items) { downloadRequestList.Add(item.html); } phase = Phase.Html; downloadCount = downloadRequestList.Count; downloadRequest(); break; case Phase.Html: getHtmlsInfo(); saveTextFile(subDirectory + ".lst"); downloadDirectory = subDirectory + @"\" + PosterDirectory + @"\"; foreach (Item item in Items) { downloadRequestList.Add(item.poster); } downloadCount = downloadRequestList.Count; phase = Phase.Poster; downloadRequest(); break; case Phase.Poster: downloadDirectory = subDirectory + @"\" + ScreenshotDirectory + @"\"; foreach (Item item in Items) { downloadRequestList.Add(item.screen_shot); } downloadCount = downloadRequestList.Count; phase = Phase.Screenshot; downloadRequest(); break; case Phase.Screenshot: phase = Phase.Thumnail; htmlFileList.RemoveAt(0); if (htmlFileList.Count != 0) { AnalizeHtmlList(htmlFileList[0]); MakeDirectorys(htmlFileList[0]); Start(); } else { operatePhase = OperatePhase.Finish; OperateButton.Text = "終了"; OperateButton.Enabled = true; OperateButton.Update(); textBoxTitle.Text = "処理終了"; } break; } }
private void OperateButton_Click(object sender, EventArgs e) { switch (operatePhase) { case OperatePhase.Waiting: OperateButton.Text = "処理中"; OperateButton.Enabled = false; operatePhase = OperatePhase.Doing; OperateButton.Update(); Start(); break; case OperatePhase.Doing: break; case OperatePhase.Finish: this.Close(); break; } }