private void ma_FormClosed(object sender, FormClosedEventArgs e) { ModAnime ma = sender as ModAnime; if (ma.DialogResult == DialogResult.OK) { if (ma.IsModified) { long lsize = ma.Ani.Size; if (ma.Ani.Path == String.Empty) { ma.Ani.Size = 0L; } // up else if (Directory.Exists(ma.Ani.Path)) { ma.Ani.Size = Anime.GetSize(ma.Ani.Path); } this.Space += ma.Ani.Size - lsize; ma.ListView.RefreshObject(ma.Ani); if (ma.ListView.SelectedObject == ma.Ani) { Form.tsslSelSpace.Text = String.Format("Selected Size: {0}", FormatAnimeSize(ma.Ani.Size)); this.OnRemarkChanged(); } // undo push, modify eanime = org's copy, organime = list's anime this.AniStack.Push(new AnimeStack(EditType.Modify, ma.OriAni, ma.Ani)); base.ModifyInfo(ma.ListView); } } }
public override void ModifyInfo(ObjectListView olv) { Anime a = olv.SelectedObject as Anime; if (a != null) { ModAnime ma = new ModAnime(olv, a); ma.FormClosed += ma_FormClosed; ma.Show(); } }