/// <summary> /// 現在の状態を取得します /// </summary> /// <param name="table">反映させる設定</param> public bool Get(IPatrolTable destination) { bool retry = false; List<GenreFolder> folders = new List<GenreFolder>(); foreach (TreeNode folderNode in Nodes) { GenreFolder folder = (GenreFolder)folderNode.Tag; folder.Clear(); foreach (TreeNode patternNode in folderNode.Nodes) { PatrolPatternEditControl patternControl = (PatrolPatternEditControl)patternNode.Tag; PatrolPattern pattern = patternControl.GetInitializedCurrentPattern(folder); if (pattern != null) { folder.Add(pattern); } else if (MessageBox.Show("設定項目を入力しなおしますか?\nここで無視した設定は保存されません", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) { retry = true; return retry; } } folders.Add(folder); } destination.Clear(); foreach (GenreFolder folder in folders) { destination.Add(folder); } return retry; }