//daha sonra geri alabilmek için yapýlan deðiþiklikleri yýðýna ekler public void YeniDegisiklikEkle(IDegisiklik degisiklik) { //yapýlan deðiþikliði yýðýna ekle gecmisDegisiklikler.Push(degisiklik); //ileri alma iþlemi için saklanan deðiþiklikleri sil geriAlinmisDegisiklikler.Clear(); //Menüdeki 'Geri Al' seçeneðini aktif yap anaForm.GeriAlAktif = true; //Menüdeki 'Ýleri Al' seçeneðini pasif yap anaForm.IleriAlAktif = false; }
//son geri alýnan deðiþikliði tekrar uygular public void IleriAl() { if (geriAlinmisDegisiklikler.Count > 0) { //son geri alýnan deðiþikliði yýðýndan al IDegisiklik degisiklik = (IDegisiklik)geriAlinmisDegisiklikler.Pop(); //bu deðiþikliði tekrar uygula degisiklik.Uygula(this); //bu deðiþikliði 'geri' iþlemi için diðer yýðýna ekle gecmisDegisiklikler.Push(degisiklik); //eðer ileri alýnacak hiç deðiþiklik kalmamýþsa menüdeki 'Ýleri Al' seçeneðini pasif yap if (geriAlinmisDegisiklikler.Count <= 0) { anaForm.IleriAlAktif = false; } //menüdeki 'Geri Al' seçeneðini aktif yap anaForm.GeriAlAktif = true; } }
public DegisiklikOperation(IDegisiklik _degisiklik) { this._degisiklik = _degisiklik; }