Exemplo n.º 1
0
        public void dodaj_plik(string sciezka_zrodolwa, string katalog_docelowy)
        {
            Console.WriteLine("Dodaję " + sciezka_zrodolwa + " do katalogu " + katalog_docelowy);
            obiektXML plikXML=null;
            try
            {
                plikXML = new obiektXML(katalog_docelowy, 1);
                schematy.Text = plikXML.schemat;//Wpisane na sztywno, do obróbki
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return;
            }
            Directory.SetCurrentDirectory(katalog_docelowy);
            sortuj_plik(sciezka_zrodolwa, plikXML.schemat);

            //-----------------------------------------tymczasowe żeby kompilator nie krzyczał

            //zastąpić normalną obsługą pliku XML, ja tego nie miałem jak pisałem
            if(plikXML!=null)
                plikXML.aktualizuj();
        }
Exemplo n.º 2
0
 private void DodajPiosenki_Click(object sender, EventArgs e)
 {
     if (source.Text == "" || destination.Text == "")
     {
         MessageBox.Show("Nie wybrano wymaganych folderów!");
     }
     String zrodlo = source.Text;
     String docelowy = destination.Text;
     if (!File.Exists(docelowy + "\\struktura_logiczna.xml"))
     {
         MessageBox.Show("Folder docelowy nigdy nie został posortowany!");
         return;
     }
     obiektXML plikXML = new obiektXML(docelowy, 1);
     if (!plikXML.analizuj())
     {
         MessageBox.Show("Nastąpiły zmiany w drzewie folderów, przed dodawaniem wymagane jest ponowne sortowanie!");
         return;
     }
     Logi.AppendText("Dodawanie plików muzycznych z folderu: " + zrodlo + " do posortowanego folderu: " + docelowy + Environment.NewLine);
     Logi.Refresh();
     progressBar2.Maximum = 0;
     progressBar2.Value = 0;
     progressBar2.Step = 1;
     Dictionary<string, List<string>> sciezki_plikow = znajdz_wspierane_pliki(zrodlo);
     foreach (string rozszerzenie in utwor.wspierane_rozszerzenia) //iterujemy po rozszerzeniach
     {
         foreach (string sciezka in sciezki_plikow[rozszerzenie])
         {
             Logi.AppendText("Dodaję plik: " + sciezka + Environment.NewLine);
             Logi.Refresh();
             dodaj_plik(sciezka, docelowy);
             progressBar2.PerformStep();
             Logi.AppendText("Zakończono dodawanie pliku: " + sciezka + Environment.NewLine);
             Logi.Refresh();
         }
     }
     progressBar2.Value = 0;
     progressBar2.Maximum = 0;
     Logi.AppendText("Zakończono dodawanie plików!" + Environment.NewLine);
     Logi.Refresh();
     MessageBox.Show("Zakończono dodawanie plików!");
 }
Exemplo n.º 3
0
        private void Dodaj_Do_Głównego_Click(object sender, EventArgs e)
        {
            if (directoryTreeView.SelectedNode == null)
            {
                MessageBox.Show("Nie wybrano folderu do dodania!");
                return;
            }
            String source = directoryTreeView.SelectedNode.Name;
            if (!File.Exists(source + @"\struktura_logiczna.xml"))
            {
                MessageBox.Show("Folder nie został posortowany");
                return;
            }
            else
            {

                obiektXML xml = new obiektXML(source, 1);
                if (!xml.analizuj())
                {
                    MessageBox.Show("Błąd w systemie plików folderu!");
                    return;
                }
                String[] temp = source.Split('\\');
                String nazwa_parenta;
                if (temp.Length > 2)
                {
                    nazwa_parenta = temp[temp.Length - 2];
                }
                else
                {
                    nazwa_parenta = "Bez nazwy";
                }
                CopyFolder(source, folderGlowny + "\\" + nazwa_parenta);
                xml = new obiektXML(folderGlowny + "\\" + nazwa_parenta, 1);

                xml.generujXML(folderGlowny + "\\" + nazwa_parenta);

                mainFolderXML mainXML = new mainFolderXML(folderGlowny + "\\struktura_folderow.xml");

                mainXML.generujElementy();
                MessageBox.Show("Dodano folder o nazwie " + nazwa_parenta + " do folderu głównego programu!");
            }
        }
Exemplo n.º 4
0
        private void button1_Click(object sender, EventArgs e)
        {
            progressBar2.Value = 0;
            button1.Enabled = false;
            Logi.Clear();
            if (!Directory.Exists(directoryTreeView.SelectedNode.Name))                            //sprawdz czy podana sciezka jest poprawna
            {
                MessageBox.Show("Podano nieprawidlowa sciezke folderu", "", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                button1.Enabled = true;
                return;
            }
            else if (Directory.GetLogicalDrives().Contains(directoryTreeView.SelectedNode.Name))
            {
                DialogResult dr = MessageBox.Show("Czy jestes pewien przeszukiwania zawartosci calego dysku?\n"
                + "Moze to potrwac bardzo dlugo, a nawet zawiesic program.\n", "", MessageBoxButtons.YesNo);
                if (dr == DialogResult.No) return;
            }
            else
            {
                /*Nie widziałem pliku xml, więc nie wiem, skąd pobrać schemat
                String tmp = sciezka_box.Text + "\\" + "struktura_logiczna.xml";
                if (File.Exists(@"" + tmp))           //ostrzeżenie przed zmianą schematu
                {
                    XmlDocument plikXML = new XmlDocument();
                    plikXML.Load(tmp);
                    //mozna w tym komunikacie dodac jaka jest aktualna sciezka
                    DialogResult wynik = MessageBox.Show("Czy chcesz zmienić sposób dotychczasowego sortowania?", "", MessageBoxButtons.YesNo);
                    if(wynik = DialogResult.No)
                    {
                        return;
                    }
                }
                */

                try
                {
                    sortuj();
                    String folder = directoryTreeView.SelectedNode.Name + "\\Musesort";
                    obiektXML xml = new obiektXML(schematy.Text);
                    xml.generujXML(folder);
                    MessageBox.Show("Pomyślnie posortowano pliki.", "", MessageBoxButtons.OK);
                    button1.Enabled = true;
                    //MessageBox.Show("Pomyślnie posortowano pliki.", "", MessageBoxButtons.OK);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(this, ex.Message, "Przerwanie sortowania.");
                    Console.WriteLine(ex);
                }
            }
            button1.Enabled = true;
            progressBar2.Value = 0;
        }