private void buttonProjConfirm_Click(object sender, RoutedEventArgs e) { if (textBoxProjNaziv.Text != "" && textBoxProjAvtor.Text != "" && comboBoxProjProgJezik.SelectedItem != null && comboBoxProjVrsta.SelectedItem != null && comboBoxProjOgrodje.SelectedItem != null) { Projekt projekt = new Projekt { Naziv = textBoxProjNaziv.Text, Avtor = textBoxProjAvtor.Text, ProgramskiJezik = (ProgJezik)comboBoxProjProgJezik.SelectedItem, VrstaProjekta = (TipApp)comboBoxProjVrsta.SelectedItem, Ogrodje = (Ogrodje)comboBoxProjOgrodje.SelectedItem, Lokacija = textBlockProjLokacija.Text }; //string folder = Directory.GetParent(projekt.Lokacija).ToString() + "/" + projekt.Naziv; //ce bi meu file string folder = projekt.Lokacija + "/" + projekt.Naziv; Directory.CreateDirectory(folder); Directory.CreateDirectory(folder + "/Data"); XmlSerializer serializer = new XmlSerializer(typeof(Projekt)); projekt.Lokacija = folder + "/" + projekt.Naziv + "-info.xml"; using (FileStream fileStream = new FileStream(projekt.Lokacija, FileMode.Create)) { serializer.Serialize(fileStream, projekt); } Projekt = projekt; DialogResult = true; } }
/// <summary> /// odpre .xml file ki vsebuje podatke o projektu(lokacijo, ime, avtorja, jezik, ogrode) in pripravi UI, tree view populatea z datotekami projekta in pripravi projekt za delo z njim /// </summary> /// <param name="projektPath"></param> private void SetupProject(string projektPath) { XmlSerializer serializer = new XmlSerializer(typeof(Projekt)); using (FileStream fileStream = new FileStream(projektPath, FileMode.Open)) { Projekt projekt = (Projekt)serializer.Deserialize(fileStream); this.Projekt = projekt; this.Projekt.Lokacija = projektPath; //updatamo path ce je slucjan bla dat premaknjena pa pol odprta TODO: test this //MessageBox.Show(Projekt.Naziv); UpdateTree(); } var dirInfo = new DirectoryInfo(Directory.GetParent(projektPath) + "/Data"); DatotekeKoda.Clear(); XmlSerializer serializerDat = new XmlSerializer(typeof(Datoteka)); foreach (var file in dirInfo.GetFiles()) { using (FileStream fileStream = new FileStream(file.FullName, FileMode.Open)) { DatotekeKoda.Add((Datoteka)serializerDat.Deserialize(fileStream)); } } }
public MainWindow() { InitializeComponent(); if (Properties.Settings.Default.ProgLangs == null) { Properties.Settings.Default.ProgLangs = new System.Collections.ObjectModel.ObservableCollection <ProgJezik>(); } if (Properties.Settings.Default.Ogrodja == null) { Properties.Settings.Default.Ogrodja = new System.Collections.ObjectModel.ObservableCollection <Ogrodje>(); } ChangeTheme(); //this.Closing += new CancelEventHandler(this.Window_Closing); this.isDataSaved = true; //this.isDataSaved = false; Datoteke = new ObservableCollection <Item>(); currDat = new Datoteka(); DatotekeKoda = new List <Datoteka>(); Projekt = new Projekt(); Metode = new List <Metoda>(); }
/// <summary> /// odpre window newProjWindow, ki služi za ustvarjanje novega projekta /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MenuItem_Click_Ustvari_Projekt(object sender, RoutedEventArgs e) { NewProjWindow newProjWindow = new NewProjWindow(); newProjWindow.ShowDialog(); if (newProjWindow.DialogResult == true) { Projekt = newProjWindow.Projekt; SetupProject(Projekt.Lokacija); //ShraniProj(); } //var itemProvider = new ItemProvider(); //string startupPath = Directory.GetParent(System.IO.Directory.GetCurrentDirectory()).Parent.Parent.Parent.FullName; //var items = itemProvider.GetItems(startupPath); //treeView.Items.Clear(); //DataContext = items; }