Mercurial > repos > IBBoard.WarFoundry.GUI.GTK
diff FrmMainWindow.cs @ 157:2d1dd73a3289
Re #417: Improve install experience
* Add a "Add data file" action (currently has no error checking)
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Tue, 15 May 2012 21:00:29 +0100 |
parents | 83b19b57cba1 |
children | 6b4cc1fc3f42 |
line wrap: on
line diff
--- a/FrmMainWindow.cs Sat May 12 20:11:33 2012 +0100 +++ b/FrmMainWindow.cs Tue May 15 21:00:29 2012 +0100 @@ -1291,5 +1291,33 @@ dialog.Dispose(); } } + + protected void OnAddNewFileActionActivated(object sender, EventArgs e) + { + string cancelText = Translation.GetTranslation("bttnCancel", "cancel"); + string openText = Translation.GetTranslation("bttnOpen", "open"); + FileChooserDialog fileDialog = new FileChooserDialog("Add data file", this, FileChooserAction.Open, cancelText, ResponseType.Cancel, openText, ResponseType.Accept); + fileDialog.SelectMultiple = true; + FileFilter filter = new FileFilter(); + filter.AddPattern("*.race"); + filter.AddPattern("*.system"); + filter.Name = "WarFoundry data files"; + fileDialog.AddFilter(filter); + int response = fileDialog.Run(); + string[] filePaths = fileDialog.Filenames; + fileDialog.Hide(); + fileDialog.Dispose(); + + if (response == (int)ResponseType.Accept) + { + foreach (string filePath in filePaths) + { + string newFilePath = System.IO.Path.Combine(WarFoundryHacks.dataPath, System.IO.Path.GetFileName(filePath)); + File.Copy(filePath, newFilePath); + } + + WarFoundryLoader.GetDefault().LoadFiles(); + } + } } }