Exemple #1
0
            public void ThreadFunc()
            {
                widokMiniatur.sem.WaitOne();
                bool takDlaWszystkich = false;

                foreach (Zdjecie z in widokMiniatur.Zdjecia)
                {
                    if (z.Edytowano == true)
                    {
                        if (takDlaWszystkich)
                        {
                            z.Zapisz();
                        }
                        else
                        {
                            RodzajDecyzji decyzja = (RodzajDecyzji)widokMiniatur.Invoke(new ZapiszZdjecieDelegate(z.ZapisanieNiezapisanych));
                            if (decyzja == RodzajDecyzji.Tak)
                            {
                                z.Zapisz();
                            }
                            else if (decyzja == RodzajDecyzji.TakDlaWszystkich)
                            {
                                takDlaWszystkich = true;
                                z.Zapisz();
                            }
                            else if (decyzja == RodzajDecyzji.NieDlaWszystkich)
                            {
                                break;
                            }
                        }
                    }
                }

                widokMiniatur.Invoke(new OproznijWidokMiniatur(widokMiniatur.Oproznij));
                widokMiniatur.katalogi = katalogi;

                for (int i = 0; i < katalogi.Length; i++)
                {
                    if (stop)
                    {
                        break;
                    }
                    widokMiniatur.Invoke(new WyswietlKatalog(widokMiniatur.DodajKatalog), katalogi[i]);
                }

                widokMiniatur.WyswietloneZdjecia.Clear();
                widokMiniatur.WszystkieZdjecia.Clear();

                for (int i = 0; i < zdjecia.Length; i++)
                {
                    if (stop)
                    {
                        break;
                    }
                    widokMiniatur.Invoke(new WyswietlZdjecie(widokMiniatur.Dodaj), zdjecia[i]);
                }
                widokMiniatur.sem.Release();
            }
        /// <summary>
        /// Metoda wywoluje DialogBox z pytaniem do uzytkownika czy ma zapisac zdjecie
        /// </summary>
        public RodzajDecyzji ZapisanieNiezapisanych()
        {
            DialogBoxes.CzyZapisac CzyZapisac = new Photo.DialogBoxes.CzyZapisac(this.Path);
            CzyZapisac.ShowDialog();
            RodzajDecyzji decyzja = CzyZapisac.Decyzja;

            CzyZapisac.Dispose();
            return(decyzja);
        }
Exemple #3
0
        /// <summary>
        /// Metoda wypelniajaca kontrolke przekazanym zdjeciem
        /// </summary>
        /// <param name="zdjecia">Tablica zdjec</param>
        public void Wypelnij(IZdjecie[] zdjecia)
        {
            if (zdjecia.Length != 0)
            {
                //this.Oproznij();
                Zdjecie temp = this.zdjecie;
                this.zdjecie           = (Zdjecie)zdjecia[0];
                this.pictureBox1.Image = ZoomImage();
                this.checkImagePosition();
                this.lmStartingPoint   = new Point();
                this.selectedRectangle = new Rectangle(0, 0, 0, 0);
                zdjecie.Zaznaczenie    = selectedRectangle;
                if (temp != zdjecie && temp != null)
                {
                    if (temp.Edytowano)
                    {
                        RodzajDecyzji decyzja = temp.ZapisanieNiezapisanych();
                        switch (decyzja)
                        {
                        case RodzajDecyzji.Tak:
                            temp.Zapisz();
                            break;

                        case RodzajDecyzji.Nie:
                            break;

                        case RodzajDecyzji.TakDlaWszystkich:
                            temp.Zapisz();
                            break;

                        case RodzajDecyzji.NieDlaWszystkich:
                            break;
                        }
                    }
                    temp.Dispose();
                    if (ZmodyfikowanoZdjecie != null)
                    {
                        ZmodyfikowanoZdjecie(null, temp, RodzajModyfikacjiZdjecia.Zawartosc);
                    }
                }
                this.Refresh();
            }
        }
Exemple #4
0
 private void NoForAll_Click(object sender, EventArgs e)
 {
     decyzja = RodzajDecyzji.NieDlaWszystkich;
     this.Close();
 }
Exemple #5
0
 private void No_Button_Click(object sender, EventArgs e)
 {
     decyzja = RodzajDecyzji.Nie;
     this.Close();
 }
 private void Yes_Button_Click(object sender, EventArgs e)
 {
     decyzja = RodzajDecyzji.Tak;
     this.Close();
 }
 private void YesForAll_Click(object sender, EventArgs e)
 {
     decyzja = RodzajDecyzji.TakDlaWszystkich;
     this.Close();
 }