private void btnDeserialize_Click(object sender, RoutedEventArgs e) { if (comboBox.SelectedItem == null) { MessageBox.Show("Choose deserialization type", "Deserialization"); return; } var type = comboBox.Text; DishList list; switch (type) { case "XML": list = Serializator.XMLDeserialize(); break; case "Binary": list = Serializator.BinaryDeserialize(); break; default: return; } if (list != null) { Menu = list; RefreshMenuGrid(dishGrid, Menu); MessageBox.Show("Successfully deserialized", "Deserialization"); } else { MessageBox.Show("Deserialization error", "Deserialization"); } }
private void btnSerialize_Click(object sender, RoutedEventArgs e) { if (comboBox.SelectedItem == null) { MessageBox.Show("Choose serialization type", "Serialization"); return; } var type = comboBox.Text; string path, msg = string.Empty; switch (type) { case "XML": path = Serializator.XMLSerialize(Menu); break; case "Binary": path = Serializator.BinarySerialize(Menu); break; default: return; } msg = "Successfully serialized."; if (path == null) { msg = "Serialization error"; } else if (ChosenPlugin != null && UsePlugins) { try { ChosenPlugin.Compress(path); msg = "Successfully serialized and compressed"; } catch (Exception ex) { msg = "Compression error: " + ex.Message; } } MessageBox.Show(msg, "Serialization"); }
private void btnOpen_Click(object sender, RoutedEventArgs e) { OpenFileDialog fileDlg = new OpenFileDialog(); fileDlg.Filter = "Archive files|*.zip;*.gz"; fileDlg.ShowDialog(); string path = fileDlg.FileName; if (string.IsNullOrEmpty(path)) { return; } if (PluginList.Count == 0) { var result = MessageBox.Show("Plugins cannot be found. Please choose plugin directory.", "Error", MessageBoxButton.YesNo); if (result != MessageBoxResult.Yes) { return; } FillPluginList(); } else { string msg = string.Empty; foreach (IPlugin plugin in PluginList) { if (plugin.ArchiveType == Path.GetExtension(path)) { try { string resPath = plugin.Decompress(path); path = Path.GetFullPath(resPath); var ext = Path.GetExtension(path); DishList list = null; switch (ext) { case ".dat": list = Serializator.BinaryDeserialize(); break; case ".xml": list = Serializator.XMLDeserialize(); break; } if (list != null) { Menu = list; RefreshMenuGrid(dishGrid, Menu); msg = "Successfully decompressed."; } else { msg = "Deserialization error"; } } catch (Exception ex) { msg = "File cannot be decompressed: " + ex.Message; } } } MessageBox.Show(msg, "Decompression"); } }