diff FrmMainWindow.cs @ 142:f23e5b40ca9d

Re #344: Show unit requirement failures * Add new widget for displaying failures nicely * Use widget for displaying failures in main window * Use widget for displaying failures in new unit dialog
author IBBoard <dev@ibboard.co.uk>
date Tue, 18 Oct 2011 21:03:35 +0100
parents 1ce4fe9ae3c1
children 45c2485f37c0
line wrap: on
line diff
--- a/FrmMainWindow.cs	Mon Oct 17 20:53:07 2011 +0100
+++ b/FrmMainWindow.cs	Tue Oct 18 21:03:35 2011 +0100
@@ -1258,6 +1258,7 @@
 		protected void OnTransformedXmlActionActivated(object sender, System.EventArgs e)
 		{
 			FrmExportXml form = new FrmExportXml(WarFoundryCore.CurrentArmy);
+			form.ParentWindow = this.GdkWindow;
 			form.Run();
 			form.Hide();
 			form.Dispose();
@@ -1266,6 +1267,8 @@
 		protected void OnMiEditArmyActivated(object sender, System.EventArgs e)
 		{
 			FrmEditArmy form = new FrmEditArmy(commandStack, WarFoundryCore.CurrentArmy);
+			form.TransientFor = this;
+			form.WindowPosition = WindowPosition.CenterOnParent;
 			form.Run();
 			form.Hide();
 			form.Dispose();
@@ -1282,15 +1285,8 @@
 
 			if (failureMessages != null && failureMessages.Count > 0)
 			{
-				StringBuilder sb = new StringBuilder();
-
-				foreach (string msg in failureMessages)
-				{
-					sb.AppendLine(msg);
-				}
-
-				MessageDialog dialog = new MessageDialog(this, DialogFlags.Modal, MessageType.Warning, ButtonsType.Ok, false, sb.ToString());
-				dialog.Title = "Validation errors";
+				ValidationFailureWidget failureWidget = new ValidationFailureWidget(failureMessages);
+				Dialog dialog = new SimpleDialog("Validation errors", this, DialogFlags.Modal, failureWidget);
 				dialog.Run();
 				dialog.Hide();
 				dialog.Dispose();