private void savePlusConfigButton_Click(object sender, RoutedEventArgs e) { OpenFileDialog selectConfigDialogue = new OpenFileDialog(); selectConfigDialogue.Filter = "osu!oABC|*.xml"; selectConfigDialogue.Multiselect = false; if (selectConfigDialogue.ShowDialog() ?? true) { var storage = ConfigStorage.readFromFile(selectConfigDialogue.FileName); var existingConfig = storage.configs.FindIndex((x) => x.name == difficultyNameTextbox.Text); if (existingConfig != -1) { MessageBoxResult dialogResult = MessageBox.Show("There is already a config with the name " + difficultyNameTextbox.Text + "\nDo you want to override it?", "Override warning!", MessageBoxButton.YesNo); if (dialogResult == MessageBoxResult.Yes) { storage.configs[existingConfig] = new PatternConfiguration(difficultyNameTextbox.Text, beatmapStats, Patterns.ToList()); } else if (dialogResult == MessageBoxResult.No) { return; } } else { storage.configs.Add(new PatternConfiguration(difficultyNameTextbox.Text, beatmapStats, Patterns.ToList())); } ConfigStorage.saveToFile(selectConfigDialogue.FileName, storage); MessageBox.Show("Configuration saved!"); } }
public static void saveToFile(string fileName, ConfigStorage storage) { XmlSerializer formatter = new XmlSerializer(typeof(ConfigStorage)); using (FileStream fs = new FileStream(fileName, FileMode.OpenOrCreate)) { formatter.Serialize(fs, storage); } }
public static ConfigStorage readFromFile(string fileName) { XmlSerializer formatter = new XmlSerializer(typeof(ConfigStorage)); using (FileStream fs = new FileStream(fileName, FileMode.OpenOrCreate)) { ConfigStorage obj = (ConfigStorage)formatter.Deserialize(fs); return(obj); } }
private void saveConfigButton_Click(object sender, RoutedEventArgs e) { SaveFileDialog saveFileDialogue = new SaveFileDialog(); saveFileDialogue.Filter = "osu!oABC config|*.xml"; if (saveFileDialogue.ShowDialog() ?? true) { var storage = new ConfigStorage(); storage.configs.Add(new PatternConfiguration(difficultyNameTextbox.Text, beatmapStats, Patterns.ToList())); ConfigStorage.saveToFile(saveFileDialogue.FileName, storage); MessageBox.Show("Configuration saved!"); } }
private void generateFullMapsetFromConfigButton_Click(object sender, RoutedEventArgs e) { OpenFileDialog selectConfigDialogue = new OpenFileDialog(); selectConfigDialogue.Filter = "osu!oABC|*.xml"; selectConfigDialogue.Multiselect = false; if (selectConfigDialogue.ShowDialog() ?? true) { var obj = ConfigStorage.readFromFile(selectConfigDialogue.FileName); foreach (var config in obj.configs) { initializeBeatmap(); generator.mapContext = (MapContextAwareness)baseContext.Clone(); Beatmap generatedMap = generator.generateBeatmap(config); generatedMap.Version = config.name; generatedMap.regenerateFilename(); generatedMap.Save(generatedMap.Filename); } MessageBox.Show("Maps saved!"); } }
private void loadConfigButton_Click(object sender, RoutedEventArgs e) { OpenFileDialog selectConfigDialogue = new OpenFileDialog(); selectConfigDialogue.Filter = "osu!oABC|*.xml"; selectConfigDialogue.Multiselect = false; if (selectConfigDialogue.ShowDialog() ?? true) { var obj = ConfigStorage.readFromFile(selectConfigDialogue.FileName); SelectConfig selectConfig = new SelectConfig(obj); if (selectConfig.ShowDialog() ?? true) { foreach (var p in selectConfig.selected.patterns) { Patterns.Add(p); } difficultyNameTextbox.Text = selectConfig.selected.name; beatmapStats = selectConfig.selected.beatmapStats; } } }
public SelectConfig(ConfigStorage configStorage) { Patterns = new ObservableCollection <PatternConfiguration>(configStorage.configs); this.DataContext = this; InitializeComponent(); }