# HG changeset patch # User IBBoard # Date 1317153709 -3600 # Node ID 2479414b16f62512f53b199b6b9467132d149267 # Parent 3ec8189262410eaa3a341f35bd423fc2b1933057 Re #361: Add XML output to GTK GUI * Add initial form and load XSLT file list diff -r 3ec818926241 -r 2479414b16f6 FrmExportXml.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/FrmExportXml.cs Tue Sep 27 21:01:49 2011 +0100 @@ -0,0 +1,34 @@ +// This file (FrmExportXml.cs) is a part of the IBBoard.WarFoundry.GUI.GTK project and is copyright 2011 IBBoard +// +// The file and the library/program it is in are licensed and distributed, without warranty, under the GNU Affero GPL license, either version 3 of the License or (at your option) any later version. Please see COPYING for more information and the full license. +using System; +using System.IO; +using IBBoard.GtkSharp; +using System.Collections.Generic; + +namespace IBBoard.WarFoundry.GUI.GTK +{ + public partial class FrmExportXml : Gtk.Dialog + { + public FrmExportXml() + { + this.Build(); + FillXsltList(); + } + + private void FillXsltList() + { + DirectoryInfo dir = new DirectoryInfo(System.IO.Path.Combine(Constants.ExecutablePath, "xsl")); + List files = new List(dir.GetFiles("*.xsl")); + ComboBoxUtils.FillCombo(transformList, files, delegate(FileInfo file) { return file.Name; }); + } + + protected void OnDoTransformWidgetToggled (object sender, System.EventArgs e) + { + bool enabled = doTransformWidget.Active; + lblTransform.Sensitive = enabled; + transformList.Sensitive = enabled; + } + } +} + diff -r 3ec818926241 -r 2479414b16f6 IBBoard.WarFoundry.GUI.GTK.csproj --- a/IBBoard.WarFoundry.GUI.GTK.csproj Sun Sep 25 20:59:44 2011 +0100 +++ b/IBBoard.WarFoundry.GUI.GTK.csproj Tue Sep 27 21:01:49 2011 +0100 @@ -72,6 +72,8 @@ + + diff -r 3ec818926241 -r 2479414b16f6 gtk-gui/IBBoard.WarFoundry.GUI.GTK.FrmExportXml.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gtk-gui/IBBoard.WarFoundry.GUI.GTK.FrmExportXml.cs Tue Sep 27 21:01:49 2011 +0100 @@ -0,0 +1,132 @@ + +// This file has been generated by the GUI designer. Do not modify. +namespace IBBoard.WarFoundry.GUI.GTK +{ + public partial class FrmExportXml + { + private global::Gtk.Table table; + private global::Gtk.CheckButton doTransformWidget; + private global::IBBoard.GtkSharp.Translatable.TranslatableLabel lblOutputFile; + private global::IBBoard.GtkSharp.Translatable.TranslatableLabel lblTransform; + private global::Gtk.FileChooserButton saveAsPath; + private global::Gtk.ComboBox transformList; + private global::Gtk.Button buttonCancel; + private global::Gtk.Button buttonOk; + + protected virtual void Build () + { + global::Stetic.Gui.Initialize (this); + // Widget IBBoard.WarFoundry.GUI.GTK.FrmExportXml + this.Name = "IBBoard.WarFoundry.GUI.GTK.FrmExportXml"; + this.WindowPosition = ((global::Gtk.WindowPosition)(4)); + // Internal child IBBoard.WarFoundry.GUI.GTK.FrmExportXml.VBox + global::Gtk.VBox w1 = this.VBox; + w1.Name = "dialog1_VBox"; + w1.BorderWidth = ((uint)(2)); + // Container child dialog1_VBox.Gtk.Box+BoxChild + this.table = new global::Gtk.Table (((uint)(3)), ((uint)(2)), false); + this.table.Name = "table"; + this.table.RowSpacing = ((uint)(6)); + this.table.ColumnSpacing = ((uint)(6)); + // Container child table.Gtk.Table+TableChild + this.doTransformWidget = new global::Gtk.CheckButton (); + this.doTransformWidget.CanFocus = true; + this.doTransformWidget.Name = "doTransformWidget"; + this.doTransformWidget.Label = global::Mono.Unix.Catalog.GetString ("Transform output?"); + this.doTransformWidget.DrawIndicator = true; + this.doTransformWidget.UseUnderline = true; + this.table.Add (this.doTransformWidget); + global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table [this.doTransformWidget])); + w2.TopAttach = ((uint)(1)); + w2.BottomAttach = ((uint)(2)); + w2.LeftAttach = ((uint)(1)); + w2.RightAttach = ((uint)(2)); + w2.XOptions = ((global::Gtk.AttachOptions)(4)); + w2.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table.Gtk.Table+TableChild + this.lblOutputFile = new global::IBBoard.GtkSharp.Translatable.TranslatableLabel (); + this.lblOutputFile.Name = "lblOutputFile"; + this.lblOutputFile.Xalign = 1F; + this.lblOutputFile.LabelProp = global::Mono.Unix.Catalog.GetString ("Save as:"); + this.table.Add (this.lblOutputFile); + global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table [this.lblOutputFile])); + w3.XOptions = ((global::Gtk.AttachOptions)(4)); + w3.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table.Gtk.Table+TableChild + this.lblTransform = new global::IBBoard.GtkSharp.Translatable.TranslatableLabel (); + this.lblTransform.Sensitive = false; + this.lblTransform.Name = "lblTransform"; + this.lblTransform.LabelProp = global::Mono.Unix.Catalog.GetString ("Transform:"); + this.table.Add (this.lblTransform); + global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table [this.lblTransform])); + w4.TopAttach = ((uint)(2)); + w4.BottomAttach = ((uint)(3)); + w4.XOptions = ((global::Gtk.AttachOptions)(4)); + w4.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table.Gtk.Table+TableChild + this.saveAsPath = new global::Gtk.FileChooserButton (global::Mono.Unix.Catalog.GetString ("Select A File"), ((global::Gtk.FileChooserAction)(0))); + this.saveAsPath.Name = "saveAsPath"; + this.table.Add (this.saveAsPath); + global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table [this.saveAsPath])); + w5.LeftAttach = ((uint)(1)); + w5.RightAttach = ((uint)(2)); + w5.XOptions = ((global::Gtk.AttachOptions)(4)); + w5.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table.Gtk.Table+TableChild + this.transformList = global::Gtk.ComboBox.NewText (); + this.transformList.Sensitive = false; + this.transformList.Name = "transformList"; + this.table.Add (this.transformList); + global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table [this.transformList])); + w6.TopAttach = ((uint)(2)); + w6.BottomAttach = ((uint)(3)); + w6.LeftAttach = ((uint)(1)); + w6.RightAttach = ((uint)(2)); + w6.XOptions = ((global::Gtk.AttachOptions)(4)); + w6.YOptions = ((global::Gtk.AttachOptions)(4)); + w1.Add (this.table); + global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(w1 [this.table])); + w7.Position = 0; + w7.Expand = false; + w7.Fill = false; + // Internal child IBBoard.WarFoundry.GUI.GTK.FrmExportXml.ActionArea + global::Gtk.HButtonBox w8 = this.ActionArea; + w8.Name = "dialog1_ActionArea"; + w8.Spacing = 10; + w8.BorderWidth = ((uint)(5)); + w8.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4)); + // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild + this.buttonCancel = new global::Gtk.Button (); + this.buttonCancel.CanDefault = true; + this.buttonCancel.CanFocus = true; + this.buttonCancel.Name = "buttonCancel"; + this.buttonCancel.UseStock = true; + this.buttonCancel.UseUnderline = true; + this.buttonCancel.Label = "gtk-cancel"; + this.AddActionWidget (this.buttonCancel, -6); + global::Gtk.ButtonBox.ButtonBoxChild w9 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w8 [this.buttonCancel])); + w9.Expand = false; + w9.Fill = false; + // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild + this.buttonOk = new global::Gtk.Button (); + this.buttonOk.CanDefault = true; + this.buttonOk.CanFocus = true; + this.buttonOk.Name = "buttonOk"; + this.buttonOk.UseStock = true; + this.buttonOk.UseUnderline = true; + this.buttonOk.Label = "gtk-ok"; + this.AddActionWidget (this.buttonOk, -5); + global::Gtk.ButtonBox.ButtonBoxChild w10 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w8 [this.buttonOk])); + w10.Position = 1; + w10.Expand = false; + w10.Fill = false; + if ((this.Child != null)) { + this.Child.ShowAll (); + } + this.DefaultWidth = 400; + this.DefaultHeight = 300; + this.Show (); + this.doTransformWidget.Toggled += new global::System.EventHandler (this.OnDoTransformWidgetToggled); + } + } +} diff -r 3ec818926241 -r 2479414b16f6 gtk-gui/gui.stetic --- a/gtk-gui/gui.stetic Sun Sep 25 20:59:44 2011 +0100 +++ b/gtk-gui/gui.stetic Tue Sep 27 21:01:49 2011 +0100 @@ -5,8 +5,8 @@ 2.12 - - + + @@ -165,6 +165,12 @@ gtk-preferences + + Action + transformed xml + transformed xml + + MainWindow @@ -183,6 +189,7 @@ + @@ -2525,4 +2532,181 @@ + + + CenterOnParent + 2 + False + + + + 2 + + + + 3 + 2 + 6 + 6 + + + + + + + True + Transform output? + True + True + True + + + + 1 + 2 + 1 + 2 + True + Fill + Fill + False + True + False + False + True + False + + + + + + 1 + Save as: + + + True + Fill + Fill + False + True + False + False + True + False + + + + + + False + Transform: + + + 2 + 3 + True + Fill + Fill + False + True + False + False + True + False + + + + + + + + 1 + 2 + True + Fill + Fill + False + True + False + False + True + False + + + + + + False + True + + + + 2 + 3 + 1 + 2 + True + Fill + Fill + False + True + False + False + True + False + + + + + 0 + True + False + False + + + + + + + + 10 + 5 + 2 + End + + + + True + True + True + StockItem + gtk-cancel + -6 + gtk-cancel + + + False + False + + + + + + True + True + True + StockItem + gtk-ok + -5 + gtk-ok + + + 1 + False + False + + + + + \ No newline at end of file