示例#1
0
        public Piesn[] zapiszTabele()
        {
            Piesn[] eksport = Piesn.importujBaze();

            for (int i = 0; i < DGV.RowCount; i++)
            {
                DataGridViewRow Row = DGV.Rows[i]; // wybor wiersza do zapisu

                eksport[i].nazwa       = Row.Cells["tytul"].Value.ToString();
                eksport[i].wyjscie     = bool.Parse(Row.Cells["wyjscie"].Value.ToString());
                eksport[i].wejscie     = bool.Parse(Row.Cells["wejscie"].Value.ToString());
                eksport[i].komunia     = bool.Parse(Row.Cells["komunia"].Value.ToString());
                eksport[i].ofiarowanie = bool.Parse(Row.Cells["ofiarowanie"].Value.ToString());
                eksport[i].uwielbienie = bool.Parse(Row.Cells["uwielbienie"].Value.ToString());
                eksport[i].krotka      = bool.Parse(Row.Cells["krotka"].Value.ToString());
                eksport[i].srednia     = bool.Parse(Row.Cells["srednia"].Value.ToString());
                eksport[i].dluga       = bool.Parse(Row.Cells["dluga"].Value.ToString());
                eksport[i].starsi      = bool.Parse(Row.Cells["starsi"].Value.ToString());
                eksport[i].mlodsi      = bool.Parse(Row.Cells["mlodsi"].Value.ToString());
                eksport[i].post        = bool.Parse(Row.Cells["post"].Value.ToString());
                eksport[i].wielkanoc   = bool.Parse(Row.Cells["wielkanoc"].Value.ToString());
                eksport[i].koledy      = bool.Parse(Row.Cells["koledy"].Value.ToString());
                eksport[i].adwent      = bool.Parse(Row.Cells["adwent"].Value.ToString());
                eksport[i].maryjne     = bool.Parse(Row.Cells["maryjne"].Value.ToString());
                eksport[i].zwykle      = bool.Parse(Row.Cells["zwykle"].Value.ToString());
                eksport[i].nowa        = bool.Parse(Row.Cells["nowa"].Value.ToString());
            }

            return(eksport);
        }
示例#2
0
 private void BazaPiesni_Activated(object sender, EventArgs e)
 {
     Piesn[] data = Piesn.importujBaze();
     wyczyscTabele();
     wczytajTabele(data);
     ladujStatystyki(Piesn.statystyka(data));
 }
示例#3
0
        public DodajNowa(int index)
        {
            InitializeComponent();

            editIndex = index;
            Piesn editable = new Piesn();

            editable               = Piesn.importujWpis(Piesn.pobierzLinie(index));
            textBox1.Text          = editable.nazwa;
            wejscieBox.Checked     = editable.wejscie;
            ofiarowanieBox.Checked = editable.ofiarowanie;
            komuniaBox.Checked     = editable.komunia;
            uwielbienieBox.Checked = editable.uwielbienie;
            wyjscieBox.Checked     = editable.wyjscie;
            krotkaBox.Checked      = editable.krotka;
            sredniaBox.Checked     = editable.srednia;
            dlugaBox.Checked       = editable.dluga;
            starsiBox.Checked      = editable.starsi;
            mlodsiBox.Checked      = editable.mlodsi;
            postBox.Checked        = editable.post;
            wielkanocBox.Checked   = editable.wielkanoc;
            koledyBox.Checked      = editable.koledy;
            adwentBox.Checked      = editable.adwent;
            maryjneBox.Checked     = editable.maryjne;
            zwykleBox.Checked      = editable.zwykle;
            nowaBox.Checked        = editable.nowa;
            richTextBox1.Text      = editable.tekst;
            numerTextbox.Text      = editable.numer.ToString();
            szukajChwytow();
            try { sizePicker.Value = decimal.Parse(editable.size); }
            catch { }
            button1.Hide();
            button3.Show();
        }
示例#4
0
 private void buttonSearch_Click(object sender, EventArgs e)
 {
     Piesn[] baza = Piesn.importujBaze();
     Piesn[] wyniki;
     wyniki = Piesn.szukajPoCzesci(textBoxSearch.Text, baza);
     wyczyscTabele();
     wczytajTabele(wyniki);
     resize();
     ladujStatystyki(Piesn.statystyka(wyniki));
 }
示例#5
0
        public void drukujZNazw(string nazwa1, string nazwa2)
        {
            Piesn target1, target2;
            int   index1 = Piesn.szukajPoNazwie(nazwa1);

            target1 = Piesn.importujWpis(Piesn.pobierzLinie(index1));
            string tekst1 = target1.tekst;
            string size1  = target1.size;
            string title1 = (int.Parse(size1) + 3).ToString();

            tekst1 = tekst1.Replace("@", " ");
            tekst1 = tekst1.Replace("\n", "<br>");

            int index2 = Piesn.szukajPoNazwie(nazwa2);

            target2 = Piesn.importujWpis(Piesn.pobierzLinie(index2));
            string tekst2 = target2.tekst;
            string size2  = target2.size;
            string title2 = (int.Parse(size2) + 3).ToString();

            tekst2 = tekst2.Replace("@", " ");
            tekst2 = tekst2.Replace("\n", "<br>");

            string[] html =
            {
                "<html>",
                "<head>",
                "</head>",
                "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />",
                "<body>",
                "<table height=100% width=100% border=1><tr>",
                "<td width=50% align=center valign=top>",
                "<br>",
                "<b><u><h1 style=\"font-size:" + title1 + "pt;\">",
                Piesn.importujWpis(Piesn.pobierzLinie(index1)).nazwa,
                "</h1></u></b><h3 style=\"font-size:" + size1 + "pt; font-weight:normal;\">",
                tekst1,
                "</h3>",
                "</td>",
                "<td width=50% align=center valign=top>",
                "<br>",
                "<b><u><h1 style=\"font-size:" + title2 + "pt;\">",
                Piesn.importujWpis(Piesn.pobierzLinie(index2)).nazwa,
                "</h1></u></b><h3 style=\"font-size:" + size2 + "pt; font-weight:normal;\">",
                tekst2,
                "</h3>",
                "</td></tr></table>",
                "</body>",
                "<script>javascript:window.print()</script>",
                "</html>",
            };
            File.WriteAllLines("wydruk.html", html);
            System.Diagnostics.Process.Start(@"wydruk.html");
        }
示例#6
0
        private void DGV_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridViewSelectedRowCollection sel = DGV.SelectedRows;
            string selName = sel[0].Cells[0].Value.ToString();

            int index = Piesn.szukajPoNazwie(selName);

            SongDetails details = new SongDetails(index);

            details.Show();
        }
示例#7
0
        public void Form2_Load(object sender, EventArgs e)
        {
            Piesn[] data = Piesn.importujBaze();
            wczytajTabele(data);
            int szerokosc = 622 + DGV.Columns[0].Width;

            this.Width = szerokosc;
            if (Settings.fasterComputer)
            {
                buttonSearch.Hide();
            }
        }
示例#8
0
 private Color kolorujBraki(Piesn dane)
 {
     if (dane.chwyty.Count == 0)
     {
         return(Color.Yellow);                            // BRAK CHWYTOW
     }
     if (dane.numer == 0)
     {
         return(Color.SkyBlue);                         // BRAK NUMERU
     }
     return(Color.Empty);
 }
示例#9
0
 private void textBoxSearch_TextChanged(object sender, EventArgs e)
 {
     if (Settings.fasterComputer)
     {
         Piesn[] baza = Piesn.importujBaze();
         Piesn[] wyniki;
         wyniki = Piesn.szukajPoCzesci(textBoxSearch.Text, baza);
         wyczyscTabele();
         wczytajTabele(wyniki);
         resize();
         ladujStatystyki(Piesn.statystyka(wyniki));
     }
 }
示例#10
0
        public static Piesn importujWpis(string linia) // konwertuje wpis z bazy ze stringa na klase Piesn (wpisuje w pola)
        {
            Piesn wpis = new Piesn();

            string[] poSplicie = linia.Split('|'); //rozdzielnik wpisow
            // rozbicie linii
            wpis.nazwa       = poSplicie[0];
            wpis.tekst       = poSplicie[1].Replace("$", "\n");
            wpis.wejscie     = bool.Parse(poSplicie[2]);
            wpis.wyjscie     = bool.Parse(poSplicie[3]);
            wpis.komunia     = bool.Parse(poSplicie[4]);
            wpis.ofiarowanie = bool.Parse(poSplicie[5]);
            wpis.krotka      = bool.Parse(poSplicie[6]);
            wpis.srednia     = bool.Parse(poSplicie[7]);
            wpis.dluga       = bool.Parse(poSplicie[8]);
            wpis.starsi      = bool.Parse(poSplicie[9]);
            wpis.mlodsi      = bool.Parse(poSplicie[10]);
            wpis.post        = bool.Parse(poSplicie[11]);
            wpis.wielkanoc   = bool.Parse(poSplicie[12]);
            wpis.koledy      = bool.Parse(poSplicie[13]);
            wpis.adwent      = bool.Parse(poSplicie[14]);
            wpis.maryjne     = bool.Parse(poSplicie[15]);
            wpis.zwykle      = bool.Parse(poSplicie[16]);
            wpis.uwielbienie = bool.Parse(poSplicie[17]);
            wpis.nowa        = bool.Parse(poSplicie[18]);
            string chwytyString = poSplicie[19];

            wpis.numer = int.Parse(poSplicie[20]);
            if (poSplicie.Length < 23)
            {
                wpis.size = "14";
            }
            else
            {
                wpis.size = poSplicie[21];
            }
            //  MessageBox.Show(chwytyString);
            List <string> chwyty = new List <string>();

            string[] chwytyArr = chwytyString.Split('&'); //rozdzielnik chwytów
            //chwyty = chwytyArr.ToList();
            foreach (string chwyt in chwytyArr)
            {
                if (!string.IsNullOrEmpty(chwyt))
                {
                    chwyty.Add(chwyt);
                }
            }
            wpis.chwyty = chwyty;
            return(wpis);
        }
示例#11
0
        public void drukujZNazw(string nazwa1)
        {
            string size   = "14";
            int    index1 = Piesn.szukajPoNazwie(nazwa1);
            Piesn  target = Piesn.importujWpis(Piesn.pobierzLinie(index1));
            string tekst1 = target.tekst;

            size = target.size;
            string title = (int.Parse(size) + 3).ToString();

            tekst1 = tekst1.Replace("@", " ");
            tekst1 = tekst1.Replace("\n", "</font><br><font color=black>");

            tekst1 = tekst1.Replace("[czerwony]", "<font color=red>");      //red
            tekst1 = tekst1.Replace("[zielony]", "<font color=green>");     //green
            tekst1 = tekst1.Replace("[niebieski]", "<font color=blue>");    // blue
            tekst1 = tekst1.Replace("[fioletowy]", "<font color=#660066>"); // violet
            tekst1 = tekst1.Replace("[brazowy]", "<font color=brown>");     // brown

            string[] html =
            {
                "<html>",
                "<head>",
                "</head>",
                "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />",
                "<body>",
                "<table height=100% width=100% border=1><tr>",
                "<td width=50% align=center valign=top>",
                "<br>",
                "<b><u><h1 style=\"font-size:" + title + "pt;\">",
                Piesn.importujWpis(Piesn.pobierzLinie(index1)).nazwa,
                "</h1></u></b><h3 style=\"font-size:" + size + "pt; font-weight:normal;\">",
                tekst1,
                "</h3>",
                "</td>",
                "<td width=50% align=center valign=top>",
                "<br>",
                "<b><u><h1 style=\"font-size:" + title + "pt;\">",
                Piesn.importujWpis(Piesn.pobierzLinie(index1)).nazwa,
                "</h1></u></b><h3 style=\"font-size:" + size + "pt; font-weight:normal;\">",
                tekst1,
                "</h3>",
                "</td></tr></table>",
                "</body>",
                "<script>javascript:window.print()</script>",
                "</html>",
            };

            File.WriteAllLines("wydruk.html", html);
            System.Diagnostics.Process.Start(@"wydruk.html");
        }
示例#12
0
        private void labelBezNumeru_DoubleClick(object sender, EventArgs e)
        {
            Piesn[] baza = Piesn.importujBaze();

            string lista = null;

            for (int i = 0; i < Piesn.policzBaze(); i++)
            {
                if (baza[i].numer == 0)
                {
                    lista += baza[i].nazwa + "\n";
                }
            }

            MessageBox.Show(lista, "BEZ NUMERU");
        }
示例#13
0
        private void nowaText_DoubleClick(object sender, EventArgs e)
        {
            System.IO.StreamReader file = new System.IO.StreamReader("baza.txt");
            string linia, lista = null;
            Piesn  bufor = new Piesn();

            while ((linia = file.ReadLine()) != null)
            {
                bufor = Piesn.importujWpis(linia);
                if (bufor.nowa)
                {
                    lista += bufor.nazwa + "\n";
                }
            }
            file.Close();
            MessageBox.Show(lista, "DO PRZEĆWICZENIA");
        }
示例#14
0
        private void bezchwytText_DoubleClick(object sender, EventArgs e)
        {
            System.IO.StreamReader file = new System.IO.StreamReader("baza.txt");
            string linia, lista = null;
            Piesn  bufor = new Piesn();

            while ((linia = file.ReadLine()) != null)
            {
                bufor = Piesn.importujWpis(linia);
                if (bufor.chwyty.Count == 0)
                {
                    lista += bufor.nazwa + "\n";
                }
            }
            file.Close();
            MessageBox.Show(lista, "BEZ CHWYTÓW");
        }
示例#15
0
        private void SongDetails_Activated(object sender, EventArgs e)
        {
            Piesn detale = new Piesn();

            detale          = Piesn.importujWpis(Piesn.pobierzLinie(numer));
            labelTytul.Text = detale.nazwa;
            labelTytul.Left = ((this.Width) / 2) - ((labelTytul.Width) / 2);
            if (detale.numer == 0)
            {
                labelNumer.Text = "BRAK NUMERU W KOMPUTERZE";
            }
            else
            {
                labelNumer.Text = "NUMER: " + detale.numer.ToString();
            }
            labelNumer.Left   = ((this.Width) / 2) - ((labelNumer.Width) / 2);
            richTextBox1.Text = detale.tekst;
        }
示例#16
0
        public static Piesn[] szukajPoCzesci(string nazwa, Piesn[] baza) // szuka czesci nazwy w calej bazie, zwraca tabele z wynikami
        {
            List <Piesn> wynikiList = new List <Piesn>();
            int          wielkosc   = policzBaze();

            for (int i = 0; i < wielkosc; i++)
            {
                if (baza[i].nazwa.ToUpper().Contains(nazwa.ToUpper()))
                {
                    wynikiList.Add(baza[i]);
                }
            }
            int wynikiWielkosc = wynikiList.Count;

            Piesn[] wyniki = new Piesn[wynikiWielkosc];
            wyniki = wynikiList.ToArray();
            return(wyniki);
        }
示例#17
0
        public static Piesn importujWpisold(string linia) // konwertuje wpis z bazy ze stringa na klase Piesn (wpisuje w pola)
        {
            Piesn wpis = new Piesn();

            string[] poSplicie = linia.Split('|'); //rozdzielnik wpisow
            // rozbicie linii
            wpis.nazwa       = poSplicie[0];
            wpis.tekst       = poSplicie[1].Replace("$", "\n");
            wpis.wejscie     = bool.Parse(poSplicie[2]);
            wpis.wyjscie     = bool.Parse(poSplicie[3]);
            wpis.komunia     = bool.Parse(poSplicie[4]);
            wpis.ofiarowanie = bool.Parse(poSplicie[5]);
            wpis.krotka      = bool.Parse(poSplicie[6]);
            wpis.srednia     = bool.Parse(poSplicie[7]);
            wpis.dluga       = bool.Parse(poSplicie[8]);
            wpis.starsi      = bool.Parse(poSplicie[9]);
            wpis.mlodsi      = bool.Parse(poSplicie[10]);
            wpis.post        = bool.Parse(poSplicie[11]);
            wpis.wielkanoc   = bool.Parse(poSplicie[12]);
            wpis.koledy      = bool.Parse(poSplicie[13]);
            wpis.adwent      = bool.Parse(poSplicie[14]);
            wpis.maryjne     = bool.Parse(poSplicie[15]);
            wpis.zwykle      = bool.Parse(poSplicie[16]);
            wpis.uwielbienie = bool.Parse(poSplicie[17]);
            wpis.nowa        = bool.Parse(poSplicie[18]);

            List <string> chwyty = new List <string>();
            int           j      = 19;

            while (j < poSplicie.Length)
            {
                if (poSplicie[j] == "")
                {
                    j++; continue;
                }
                chwyty.Add(poSplicie[j]);
                j++;
            }

            wpis.chwyty = chwyty;
            return(wpis);
        }
示例#18
0
        public static Piesn[] importujBaze() // importuje baze danych z pliku do tabeli klasy Piesn - uzywa importujWpis
        {
            int wielkosc = policzBaze();

            Piesn[]      nowa = new Piesn[wielkosc];
            wielkoscBazy baza = new wielkoscBazy();
            int          i    = 0;

            System.IO.StreamReader file = new System.IO.StreamReader("baza.txt");
            string linia;

            while ((linia = file.ReadLine()) != null)
            {
                nowa[i] = importujWpis(linia);
                i++;
                baza.wielkosc = i;
            }

            file.Close();
            return(nowa);
        }
示例#19
0
        private void button1_Click(object sender, EventArgs e)
        {
            Piesn nowa  = new Piesn();
            int   numer = 0;

            if (numerTextbox.Text != "")
            {
                try { numer = int.Parse(numerTextbox.Text); }
                catch { MessageBox.Show("BLEDNY NUMER"); return; }
            }
            nowa.setPiesn(textBox1.Text.ToUpper(), richTextBox1.Text, wejscieBox.Checked, wyjscieBox.Checked,
                          komuniaBox.Checked, ofiarowanieBox.Checked, krotkaBox.Checked, sredniaBox.Checked, dlugaBox.Checked,
                          starsiBox.Checked, mlodsiBox.Checked, postBox.Checked, wielkanocBox.Checked, koledyBox.Checked,
                          adwentBox.Checked, maryjneBox.Checked, zwykleBox.Checked, uwielbienieBox.Checked, nowaBox.Checked,
                          listaChwytow, numer, sizePicker.Value.ToString());

            nowa.dopiszElement();

            MessageBox.Show("Dodano wpis do bazy", "Dodano!", MessageBoxButtons.OK);
            this.Close();
        }
示例#20
0
        private void rebuildToolStripMenuItem_Click(object sender, EventArgs e)
        {
            int wielkosc = Piesn.policzBaze();

            Piesn[]      nowa = new Piesn[wielkosc];
            wielkoscBazy baza = new wielkoscBazy();
            int          i    = 0;

            System.IO.StreamReader file = new System.IO.StreamReader("baza.txt");
            string linia;

            while ((linia = file.ReadLine()) != null)
            {
                nowa[i] = Piesn.importujWpisold(linia);
                i++;
                baza.wielkosc = i;
            }

            file.Close();
            Piesn.zapiszBaze(nowa, Piesn.policzBaze());
        }
示例#21
0
        private void DodajNowa_Load(object sender, EventArgs e)
        {
            bufor = Piesn.importujBaze();
            string temp = null;

            for (int i = 0; i < bufor.Length; i++)
            {
                try { temp = bufor[i].numer.ToString(); }
                catch
                {
                    errorCount++;
                }
                numbers.Add(temp);

                try { temp = bufor[i].nazwa.ToUpper(); }
                catch
                {
                    errorCount++;
                }
                names.Add(temp);
            }
        }
示例#22
0
 private void button3_Click(object sender, EventArgs e)
 {
     if (editIndex == -1)
     {
         MessageBox.Show("editIndex == 1\nBłąd edycji, następuje zamknięcie okna", "BŁĄD!");
         this.Close();
     }
     else
     {
         Piesn[] baza = new Piesn[1000];
         baza = Piesn.importujBaze();
         Piesn nowa = new Piesn();
         nowa.setPiesn(textBox1.Text, richTextBox1.Text, wejscieBox.Checked, wyjscieBox.Checked,
                       komuniaBox.Checked, ofiarowanieBox.Checked, krotkaBox.Checked, sredniaBox.Checked, dlugaBox.Checked,
                       starsiBox.Checked, mlodsiBox.Checked, postBox.Checked, wielkanocBox.Checked, koledyBox.Checked,
                       adwentBox.Checked, maryjneBox.Checked, zwykleBox.Checked, uwielbienieBox.Checked, nowaBox.Checked,
                       listaChwytow, int.Parse(numerTextbox.Text), sizePicker.Value.ToString());
         baza[editIndex] = nowa;
         Piesn.zapiszBaze(baza, Piesn.policzBaze());
         MessageBox.Show("Edycja pieśni " + nowa.nazwa + " zakończona powodzeniem! Odśwież aby zobaczyć zmiany!", "Edytowano!");
         this.Close();
     }
 }
示例#23
0
 private void button3_Click(object sender, EventArgs e)
 {
     Piesn[] data = Piesn.importujBaze();
     wyczyscTabele();
     wczytajTabele(data);
 }
示例#24
0
 public void drukujZPiesn(Piesn piesn)
 {
     // TO DO
 }