/// <summary> /// Setting のコンストラクタ /// </summary> private Setting() { this.filepath = System.IO.Path.Combine(Path.ExecutableDirectory, SETTING_FILENAME); //--保存先のファイルが存在しないとき if (!System.IO.File.Exists(this.filepath)) { this.makeXml(); } //--読み込み try{ this.Load(this.filepath); } catch { ConfirmOverwriteSetting.Result r = ConfirmOverwriteSetting.Confirm(); if (r.overwrite) { if (r.backup) { System.IO.File.Move(this.filepath, Path.GetAvailablePath(this.filepath, "bk")); } this.makeXml(); } else { this.filepath = ""; } this.LoadXml(DEFAULT_SETTING); } }
/// <summary> /// 設定ファイル上書きの確認を取り、結果を取得します。 /// </summary> /// <returns>上書き確認の結果</returns> public static ConfirmOverwriteSetting.Result Confirm() { ConfirmOverwriteSetting f = new ConfirmOverwriteSetting(); while (!f.result) { f.ShowDialog(); } ConfirmOverwriteSetting.Result r = new ConfirmOverwriteSetting.Result(f.yes, f.checkBox1.Checked); f.Dispose(); return(r); }
/// <summary> /// 設定ファイル上書きの確認を取り、結果を取得します。 /// (既に起動した後で確認を取る時の為のメッセージが表示されます。) /// </summary> /// <returns>上書き確認の結果</returns> public static ConfirmOverwriteSetting.Result Confirm2() { ConfirmOverwriteSetting f = new ConfirmOverwriteSetting(); f.label1.Text = AFTER_LOAD1; f.label2.Text = AFTER_LOAD2; while (!f.result) { f.ShowDialog(); } ConfirmOverwriteSetting.Result r = new ConfirmOverwriteSetting.Result(f.yes, f.checkBox1.Checked); f.Dispose(); return(r); }
/// <summary> /// 現在の設定を保存します。 /// </summary> public void Save() { if (this.filepath == "") { ConfirmOverwriteSetting.Result r = Configuration.ConfirmOverwriteSetting.Confirm2(); if (!r.overwrite) { return; } this.filepath = System.IO.Path.Combine(Path.ExecutableDirectory, SETTING_FILENAME); if (r.backup) { System.IO.File.Move(this.filepath, Path.GetAvailablePath(this.filepath, "bk")); } } base.Save(this.filepath); }