コード例 #1
0
        /// <summary>
        /// Úvodní nastavení okna v režimu úpravy existujícího záznamu.
        /// </summary>
        /// <param name="zaznam">Záznam určený k úpravě</param>
        public void UvodniNastaveniRezimuUpravovani(Zaznam zaznam)
        {
            // Úvodní nastavení okna
            Title = "Úprava existujícího záznamu";
            Icon  = new BitmapImage(new Uri(Path.Combine(Validace.VratCestuSlozkyAplikace(), "Icons\\Disketa.png")));

            // Úvodní nastavení interních proměnných
            Nazev               = zaznam.Nazev;
            Datum               = zaznam.Datum;
            PrijemNeboVydaj     = zaznam.PrijemNeboVydaj;
            PrijemVydaj_Hodnota = zaznam.Hodnota_PrijemVydaj;
            Poznamka            = zaznam.Poznamka;
            KategorieZaznamu    = zaznam.kategorie;

            // Vytvoření instance třídy pro nastavení stylů tlačítek
            GrafickePrvky Grafika = new GrafickePrvky();

            // Nastavení stylu tlačítek
            Grafika.NastavTlacitkoULOZIT(UlozitButton);
            Grafika.NastavTlacitkoUPRAVITPOZNAMKU(NastavPoznamkuButton);
            Grafika.NastavTlacitkoUPRAVITPOLOZKY(NastavPolozkuButton);

            // Nastavení zadávacích polí
            NastavZadavaciPole();

            // Nastavení zobrazení kategorie a hodnoty záznamu
            KategorieComboBox.SelectedIndex   = (int)KategorieZaznamu - 1;
            PrijemVydajComboBox.SelectedIndex = (int)PrijemNeboVydaj;
            PrijemVydajTextBox.Text           = PrijemVydaj_Hodnota.ToString();
        }
コード例 #2
0
        /// <summary>
        /// Metoda pro kontrolu zda v kolekci uživatele již existuje stejný záznam jako záznam předaný v parametru.
        /// </summary>
        /// <param name="zaznam">Záznam ke kontrole</param>
        /// <returns>True - záznam již existuje, False - záznam neexistuje</returns>
        public bool KontrolaExistujicihoZaznamu(Zaznam zaznam)
        {
            // Čítač podobností při porovnání záznamů
            int citac = 0;

            // Postupné projití všech záznamů v kolekci přihlášeného uživatele pro kontrolu existujícího záznamu
            foreach (Zaznam InterniZaznam in KolekceDatPrihlasenehoUzivatele)
            {
                // Kontrola názvu
                if (zaznam.Nazev == InterniZaznam.Nazev)
                {
                    citac++;
                }

                // Kontrola data
                if (zaznam.Datum == InterniZaznam.Datum)
                {
                    citac++;
                }

                // Kontrola hodnoty
                if (zaznam.Hodnota_PrijemVydaj == InterniZaznam.Hodnota_PrijemVydaj)
                {
                    citac++;
                }

                // Kontrola poznámky
                if (zaznam.Poznamka == InterniZaznam.Poznamka)
                {
                    citac++;
                }

                // Kontrola kategorie
                if (zaznam.kategorie == InterniZaznam.kategorie)
                {
                    citac++;
                }

                // Kontrola zda se jedná o příjem či výdaj
                if (zaznam.PrijemNeboVydaj == InterniZaznam.PrijemNeboVydaj)
                {
                    citac++;
                }

                // Pokud jsou všechny parametry stejné, nastaví se návratová hodnota na TRUE a ukončí se porovnávání.
                // Pokud se nějaká hodnota liší, čítač se vynuluje a pokračuje se v porovnávání dalšího záznamu.
                if (citac > 5)
                {
                    return(true);
                }
                else
                {
                    citac = 0;
                }
            }

            // Pokud předaný záznam v kolekci záznamů uživatele neexistuje nastaví se návratová hodnota na false
            return(false);
        }
コード例 #3
0
 /// <summary>
 /// Smazání zvoleného záznamu z kolekce záznamů přihlášeného uživatele.
 /// </summary>
 /// <param name="zaznam">Záznam, který bude smazán</param>
 public void SmazatZaznam(Zaznam zaznam)
 {
     KolekceDatPrihlasenehoUzivatele.Remove(zaznam);
 }
コード例 #4
0
        /// <summary>
        /// Metoda pro vykreslení informační bubliny předaného záznamu na plátno uložené v interní proměnné třídy.
        /// Plátno pro vykreslení je předáváno v konstruktoru této třídy.
        /// </summary>
        /// <param name="zaznam">Záznam pro vykreslení</param>
        private void VykresliInfoBublinu(Zaznam zaznam)
        {
            // Smazání předchozího obsahu
            this.InfoCanvas.Children.Clear();

            // Vytvoření textového řetězce obsahujícího názvy všech položek daného záznamu
            string SeznamPolozek = "";

            foreach (Polozka polozka in zaznam.SeznamPolozek)
            {
                SeznamPolozek += polozka.Nazev + "; ";
            }
            // Odstranění posledních 2 znaků (; ) z textového řetězce
            if (SeznamPolozek.Length > 0)
            {
                SeznamPolozek = SeznamPolozek.Remove(SeznamPolozek.Length - 2);
            }

            // Vytvoření obdélníku na pozadí pro vytvoření efektu okrajů
            Rectangle okraje = new Rectangle
            {
                Fill   = Brushes.DarkBlue,
                Width  = InfoCanvas.Width,
                Height = InfoCanvas.Height
            };

            // Vytvoření pozadí informační bubliny
            Rectangle pozadi = new Rectangle
            {
                Fill   = Brushes.Ivory,
                Width  = InfoCanvas.Width - 2,
                Height = InfoCanvas.Height - 2
            };

            // Podtržení
            Rectangle deliciCara = new Rectangle
            {
                Width  = InfoCanvas.Width,
                Height = 1,
                Fill   = Brushes.DarkBlue
            };

            // Podtržení
            Rectangle deliciCara2 = new Rectangle
            {
                Width  = InfoCanvas.Width,
                Height = 1,
                Fill   = Brushes.DarkBlue
            };

            // Kategorie záznamu
            Label kategorie = new Label
            {
                Content  = "Kategorie:  " + Zaznam.NazvyKategorii[(int)zaznam.kategorie],
                FontSize = 14,
                HorizontalContentAlignment = HorizontalAlignment.Left
            };

            // Oddělení popisků
            Rectangle oddeleni = new Rectangle
            {
                Width  = 1,
                Height = 30,
                HorizontalAlignment = HorizontalAlignment.Center,
                Fill = Brushes.DarkBlue
            };

            // Datum vytvoření záznamu
            Label datum = new Label
            {
                Content  = "Přidáno dne: " + zaznam.DatumZapisu.Date.ToString("dd.MM.yyyy"),
                FontSize = 14
            };

            // Poznámka záznamu
            TextBox poznamka = new TextBox
            {
                Text         = zaznam.Poznamka,
                FontSize     = 12,
                Background   = Brushes.Ivory,
                TextWrapping = TextWrapping.Wrap,
                Width        = InfoCanvas.Width - 2,
                Height       = Math.Ceiling((InfoCanvas.Height - 34) / 2)
            };

            // Vypsání názvů položek
            TextBox polozky = new TextBox
            {
                Text         = SeznamPolozek,
                FontSize     = 12,
                Background   = Brushes.Ivory,
                TextWrapping = TextWrapping.Wrap,
                Width        = InfoCanvas.Width - 2,
                Height       = Math.Ceiling((InfoCanvas.Height - 34) / 2)
            };

            // Pokud poznámka neobsahuje text, zobrazí se informativní popisek
            if (poznamka.Text.Length == 0)
            {
                poznamka.Text = "Žádná poznámka";
            }

            // Pokud záznam neobsahuje žádné položky, zobrazí se informační popisek okna pro výpis položek
            if (polozky.Text.Length == 0)
            {
                polozky.Text = "Záznam neobsahuje žádné položky";
            }

            // Přidání okrajů na plátno
            InfoCanvas.Children.Add(okraje);
            Canvas.SetLeft(okraje, 0);
            Canvas.SetTop(okraje, 0);

            // Přidání pozadí bubliny na plátno
            InfoCanvas.Children.Add(pozadi);
            Canvas.SetLeft(pozadi, 1);
            Canvas.SetTop(pozadi, 1);

            // Vypsání kategorie na plátno
            InfoCanvas.Children.Add(kategorie);
            Canvas.SetLeft(kategorie, 1);
            Canvas.SetTop(kategorie, 1);

            // Vypsání data úpravy na plátno
            InfoCanvas.Children.Add(datum);
            Canvas.SetRight(datum, 3);
            Canvas.SetTop(datum, 1);

            // Přidání oddělovací přepážky na plátno
            InfoCanvas.Children.Add(oddeleni);
            Canvas.SetLeft(oddeleni, InfoCanvas.Width / 2);
            Canvas.SetTop(oddeleni, 1);

            // Přidání dělící čáry na plátno
            InfoCanvas.Children.Add(deliciCara);
            Canvas.SetLeft(deliciCara, 0);
            Canvas.SetTop(deliciCara, 30);

            // Vypsání textu poznámky
            InfoCanvas.Children.Add(poznamka);
            Canvas.SetLeft(poznamka, 1);
            Canvas.SetTop(poznamka, 31);

            // Přidání dělící čáry na plátno
            InfoCanvas.Children.Add(deliciCara2);
            Canvas.SetLeft(deliciCara2, 0);
            Canvas.SetTop(deliciCara2, (31 + poznamka.Height));

            // Vypsání názvů položek
            InfoCanvas.Children.Add(polozky);
            Canvas.SetLeft(polozky, 1);
            Canvas.SetTop(polozky, (32 + poznamka.Height));
        }