diff FrmExportXml.cs @ 124:a647afc19fe9

Re #361: Add XML export UI to GTK# * Add sensitivity changing on OK button * Need to make buttons do things, and allow creating new files with file chooser
author IBBoard <dev@ibboard.co.uk>
date Wed, 28 Sep 2011 21:01:54 +0100
parents 2479414b16f6
children 42d2aa87dfa7
line wrap: on
line diff
--- a/FrmExportXml.cs	Wed Sep 28 20:46:08 2011 +0100
+++ b/FrmExportXml.cs	Wed Sep 28 21:01:54 2011 +0100
@@ -14,6 +14,7 @@
 		{
 			this.Build();
 			FillXsltList();
+			saveAsPath.SetCurrentFolder(Environment.GetFolderPath(Environment.SpecialFolder.Personal));
 		}
 
 		private void FillXsltList()
@@ -23,11 +24,27 @@
 			ComboBoxUtils.FillCombo(transformList, files, delegate(FileInfo file) { return file.Name; });
 		}
 
-		protected void OnDoTransformWidgetToggled (object sender, System.EventArgs e)
+		protected void OnDoTransformWidgetToggled(object sender, System.EventArgs e)
 		{
 			bool enabled = doTransformWidget.Active;
 			lblTransform.Sensitive = enabled;
 			transformList.Sensitive = enabled;
+			SetOkayButtonSensitive();
+		}
+
+		private void SetOkayButtonSensitive()
+		{
+			buttonOk.Sensitive = saveAsPath.Filename != null && (!doTransformWidget.Active || ComboBoxUtils.GetSelectedItem<FileInfo>(transformList) != null);
+		}
+
+		protected void OnTransformListChanged(object sender, System.EventArgs e)
+		{
+			SetOkayButtonSensitive();
+		}
+
+		protected void OnSaveAsPathSelectionChanged(object sender, System.EventArgs e)
+		{
+			SetOkayButtonSensitive();
 		}
 	}
 }