Changeset - 4ef58379d19a
[Not reviewed]
default
0 10 0
Jason Maltzen (jmaltzen) - 9 years ago 2015-11-19 23:50:55
jason.maltzen@unsanctioned.net
Add a debug menu to help in tracking down problems. Save screen height/width settings entered by the user and load on next run.
10 files changed with 1087 insertions and 955 deletions:
0 comments (0 inline, 0 general)
DesertPaintLab.csproj
Show inline comments
...
 
@@ -72,11 +72,15 @@
 
    <Compile Include="gtk-gui\DesertPaintLab.ScreenCheckDialog.cs" />
 
  </ItemGroup>
 
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
 
  <ProjectExtensions>
 
    <MonoDevelop>
 
      <Properties>
 
        <Policies>
 
          <TextStylePolicy inheritsSet="VisualStudio" inheritsScope="text/plain" scope="text/x-csharp" />
 
          <CSharpFormattingPolicy IndentSwitchBody="True" IndentBlocksInsideExpressions="True" AnonymousMethodBraceStyle="NextLine" PropertyBraceStyle="NextLine" PropertyGetBraceStyle="NextLine" PropertySetBraceStyle="NextLine" EventBraceStyle="NextLine" EventAddBraceStyle="NextLine" EventRemoveBraceStyle="NextLine" StatementBraceStyle="NextLine" ElseNewLinePlacement="NewLine" CatchNewLinePlacement="NewLine" FinallyNewLinePlacement="NewLine" WhileNewLinePlacement="DoNotCare" ArrayInitializerWrapping="DoNotChange" ArrayInitializerBraceStyle="NextLine" BeforeMethodDeclarationParentheses="False" BeforeMethodCallParentheses="False" BeforeConstructorDeclarationParentheses="False" NewLineBeforeConstructorInitializerColon="NewLine" NewLineAfterConstructorInitializerColon="SameLine" BeforeDelegateDeclarationParentheses="False" NewParentheses="False" SpacesBeforeBrackets="False" inheritsSet="Mono" inheritsScope="text/x-csharp" scope="text/x-csharp" />
 
        </Policies>
 
        <GtkDesignInfo generateGettext="False" />
 
      </Properties>
 
    </MonoDevelop>
 
  </ProjectExtensions>
 
</Project>
...
 
\ No newline at end of file
MainWindow.cs
Show inline comments
...
 
@@ -20,12 +20,13 @@
 
 THE SOFTWARE.
 
*/
 

	
 
using System;
 
using System.IO;
 
using System.Collections.Generic;
 
using System.Text.RegularExpressions;
 
using Gtk;
 
using DesertPaintLab;
 

	
 
public partial class MainWindow : Gtk.Window
 
{
 
	const int colorTolerance = 2;
...
 
@@ -46,12 +47,14 @@ public partial class MainWindow : Gtk.Wi
 
	PaintColor reactedColor = new PaintColor();
 
	
 
	int screenWidth = 0;
 
	int screenHeight = 0;
 
	int pixelMultiplier = 1;
 

	
 
    bool enableDebugMenu = false;
 

	
 
	Gdk.Window rootWindow = null;
 
	Gdk.Pixbuf screenBuffer = null;
 

	
 
	Reagent reagent1 = null;
 
	Reagent reagent2 = null;
 
	Reagent reagent3 = null;
...
 
@@ -83,13 +86,13 @@ public partial class MainWindow : Gtk.Wi
 
		{
 
			if (dir.Name != "template")
 
			{
 
				profileList.Add(dir.Name);
 
			}
 
		}
 
		
 

	
 
		Palette.Load(System.IO.Path.Combine(
 
				System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location),
 
		    	"colors.txt"));
 
		
 
		Build();
 
		
...
 
@@ -105,22 +108,32 @@ public partial class MainWindow : Gtk.Wi
 
		// get the root window
 
		rootWindow = Gdk.Global.DefaultRootWindow;
 

	
 
		// get its width and height
 
		rootWindow.GetSize(out screenWidth, out screenHeight);
 

	
 
        string settingsPath = System.IO.Path.Combine(appDataPath, "settings");
 
        if (System.IO.File.Exists(settingsPath))
 
        {
 
            LoadSettings(settingsPath);
 
        }
 

	
 
        this.DebugAction.Visible = enableDebugMenu;
 

	
 
		ScreenCheckDialog screenCheckDialog = new ScreenCheckDialog();
 
		screenCheckDialog.ScreenWidth = screenWidth;
 
		screenCheckDialog.ScreenHeight = screenHeight;
 
		screenCheckDialog.GamePixelWidth = pixelMultiplier;
 
		ResponseType resp = (ResponseType)screenCheckDialog.Run();
 
		screenWidth = screenCheckDialog.ScreenWidth;
 
		screenHeight = screenCheckDialog.ScreenHeight;
 
		pixelMultiplier = screenCheckDialog.GamePixelWidth;
 
		screenCheckDialog.Destroy();
 

	
 
        SaveSettings(settingsPath);
 

	
 
		screenBuffer = new Gdk.Pixbuf(Gdk.Colorspace.Rgb, false, 8, screenWidth, screenHeight);
 
	
 
		swatchHeight    *= pixelMultiplier;
 
		colorBarWidth   *= pixelMultiplier;
 
		redBarSpacing   *= pixelMultiplier;
 
		greenBarSpacing *= pixelMultiplier;
...
 
@@ -129,12 +142,89 @@ public partial class MainWindow : Gtk.Wi
 
		if (!OpenProfile())
 
		{
 
			shouldShutDown = true;
 
		}
 
	}
 

	
 
    static Regex optionEntry = new Regex(@"(?<opt>[^#=][^=]*)=(?<optval>.*)$");
 
    void LoadSettings(string file)
 
    {
 
        string line;
 
        Match match;
 
        using (StreamReader reader = new StreamReader(file))
 
        {
 
            while ((line = reader.ReadLine()) != null) 
 
            {
 
                match = optionEntry.Match(line);
 
                if (match.Success)
 
                {
 
                    String optName = match.Groups["opt"].Value.ToLower();
 
                    String optVal = match.Groups["optval"].Value.Trim();
 
                    switch (optName)
 
                    {
 
                        case "screenwidth":
 
                            try {
 
                                int val = Int32.Parse(optVal);
 
                                if (val > 0)
 
                                {
 
                                    screenWidth = val;
 
                                }
 
                            } catch (FormatException) {
 
                                // ignore
 
                            }
 
                            break;
 
                        case "screenheight":
 
                            try {
 
                                int val = Int32.Parse(optVal);
 
                                if (val > 0)
 
                                {
 
                                    screenHeight = val;
 
                                }
 
                            } catch (FormatException) {
 
                                // ignore
 
                            }
 
                            break;
 
                        case "pixelmultiplier":
 
                            try {
 
                                int val = Int32.Parse(optVal);
 
                                if (val > 0)
 
                                {
 
                                    pixelMultiplier = val;
 
                                }
 
                            } catch (FormatException) {
 
                                // ignore
 
                            }
 
                            break;
 
                        case "debug":
 
                            try {
 
                                bool val = Boolean.Parse(optVal.ToLower());
 
                                enableDebugMenu = val;
 
                            } catch (FormatException) {
 
                                // ignore
 
                            }
 
                            break;
 
                        default:
 
                            // ignore
 
                            break;
 
                    }
 
                }
 
            }
 
        }
 
    }
 

	
 
    void SaveSettings(string file)
 
    {
 
        using (StreamWriter writer = new StreamWriter(file))
 
        {
 
            writer.WriteLine("screenwidth={0}", screenWidth);
 
            writer.WriteLine("screenheight={0}", screenHeight);
 
            writer.WriteLine("pixelmultiplier={0}", pixelMultiplier);
 
            writer.WriteLine("debug={0}", enableDebugMenu);
 
        }
 
    }
 

	
 
	bool ConfirmedExit()
 
	{
 
		if (unsavedData)
 
		{
 
			MessageDialog md = new MessageDialog(this, 
 
	            DialogFlags.DestroyWithParent,
...
 
@@ -602,12 +692,27 @@ public partial class MainWindow : Gtk.Wi
 
        //screenBuffer.Save("screenshot.png", "png");
 
		
 
		return false;
 
		
 
	}
 
	
 
    protected virtual void OnDebugScreenshot(object sender, System.EventArgs e)
 
    {
 
        Gdk.Image rootImage = rootWindow.GetImage(0, 0, screenWidth, screenHeight);
 
        screenBuffer.GetFromImage(rootImage, rootImage.Colormap, 0, 0, 0, 0, screenWidth, screenHeight);
 
        string screenshotDir = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
 
        string filename;
 
        int i = 0;
 
        do
 
        {
 
            ++i;
 
            filename = System.IO.Path.Combine(screenshotDir, String.Format("DesertPaintLab_{0}.png", i));
 
        } while (System.IO.File.Exists(filename));
 
        screenBuffer.Save(filename, "png");
 
    }
 

	
 
	protected virtual void OnCaptureButton(object sender, System.EventArgs e)
 
	{
 
		if (CaptureReactionColor())
 
		{
 
			string warning = "";
 
			if (reactedColor.Red == 0)
gtk-gui/DesertPaintLab.FirstRunDialog.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class FirstRunDialog
 
	{
 
		private global::Gtk.Label label2;
 
		
 
		private global::Gtk.Button buttonCancel;
 
		
 
		private global::Gtk.Button buttonImport;
 
		
 
		private global::Gtk.Button buttonNew;
 

 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.FirstRunDialog
 
			this.Name = "DesertPaintLab.FirstRunDialog";
 
			this.Title = "Set Up Profile";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.Modal = true;
 
			this.AllowShrink = true;
 
			// Internal child DesertPaintLab.FirstRunDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			w1.BorderWidth = ((uint)(2));
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.label2 = new global::Gtk.Label ();
 
			this.label2.Name = "label2";
 
			this.label2.LabelProp = "Since this is your first time using this program, you need a new profile.\n\nYou ca" +
 
			"n either import an existing PracticalPaint reactions.txt file, or you can start " +
 
			"a new profile from scratch.";
 
			this.label2.Wrap = true;
 
			w1.Add (this.label2);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label2]));
 
			w2.Position = 0;
 
			w2.Padding = ((uint)(5));
 
			// Internal child DesertPaintLab.FirstRunDialog.ActionArea
 
			global::Gtk.HButtonBox w3 = this.ActionArea;
 
			w3.Name = "dialog1_ActionArea";
 
			w3.Spacing = 10;
 
			w3.BorderWidth = ((uint)(5));
 
			w3.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 w4 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w3 [this.buttonCancel]));
 
			w4.Expand = false;
 
			w4.Fill = false;
 
			// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
 
			this.buttonImport = new global::Gtk.Button ();
 
			this.buttonImport.CanDefault = true;
 
			this.buttonImport.CanFocus = true;
 
			this.buttonImport.Name = "buttonImport";
 
			this.buttonImport.UseUnderline = true;
 
			this.buttonImport.Label = "Import reactions.txt";
 
			this.AddActionWidget (this.buttonImport, -3);
 
			global::Gtk.ButtonBox.ButtonBoxChild w5 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w3 [this.buttonImport]));
 
			w5.Position = 1;
 
			w5.Expand = false;
 
			w5.Fill = false;
 
			// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
 
			this.buttonNew = new global::Gtk.Button ();
 
			this.buttonNew.CanFocus = true;
 
			this.buttonNew.Name = "buttonNew";
 
			this.buttonNew.UseUnderline = true;
 
			this.buttonNew.Label = "New Profile";
 
			this.AddActionWidget (this.buttonNew, -5);
 
			global::Gtk.ButtonBox.ButtonBoxChild w6 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w3 [this.buttonNew]));
 
			w6.Position = 2;
 
			w6.Expand = false;
 
			w6.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 416;
 
			this.DefaultHeight = 189;
 
			this.Show ();
 
		}
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class FirstRunDialog
 
	{
 
		private global::Gtk.Label label2;
 
		
 
		private global::Gtk.Button buttonCancel;
 
		
 
		private global::Gtk.Button buttonImport;
 
		
 
		private global::Gtk.Button buttonNew;
 

	
 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.FirstRunDialog
 
			this.Name = "DesertPaintLab.FirstRunDialog";
 
			this.Title = "Set Up Profile";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.Modal = true;
 
			this.AllowShrink = true;
 
			// Internal child DesertPaintLab.FirstRunDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			w1.BorderWidth = ((uint)(2));
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.label2 = new global::Gtk.Label ();
 
			this.label2.Name = "label2";
 
			this.label2.LabelProp = "Since this is your first time using this program, you need a new profile.\n\nYou can either import an existing PracticalPaint reactions.txt file, or you can start a new profile from scratch.";
 
			this.label2.Wrap = true;
 
			w1.Add (this.label2);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label2]));
 
			w2.Position = 0;
 
			w2.Padding = ((uint)(5));
 
			// Internal child DesertPaintLab.FirstRunDialog.ActionArea
 
			global::Gtk.HButtonBox w3 = this.ActionArea;
 
			w3.Name = "dialog1_ActionArea";
 
			w3.Spacing = 10;
 
			w3.BorderWidth = ((uint)(5));
 
			w3.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 w4 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w3 [this.buttonCancel]));
 
			w4.Expand = false;
 
			w4.Fill = false;
 
			// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
 
			this.buttonImport = new global::Gtk.Button ();
 
			this.buttonImport.CanDefault = true;
 
			this.buttonImport.CanFocus = true;
 
			this.buttonImport.Name = "buttonImport";
 
			this.buttonImport.UseUnderline = true;
 
			this.buttonImport.Label = "Import reactions.txt";
 
			this.AddActionWidget (this.buttonImport, -3);
 
			global::Gtk.ButtonBox.ButtonBoxChild w5 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w3 [this.buttonImport]));
 
			w5.Position = 1;
 
			w5.Expand = false;
 
			w5.Fill = false;
 
			// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
 
			this.buttonNew = new global::Gtk.Button ();
 
			this.buttonNew.CanFocus = true;
 
			this.buttonNew.Name = "buttonNew";
 
			this.buttonNew.UseUnderline = true;
 
			this.buttonNew.Label = "New Profile";
 
			this.AddActionWidget (this.buttonNew, -5);
 
			global::Gtk.ButtonBox.ButtonBoxChild w6 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w3 [this.buttonNew]));
 
			w6.Position = 2;
 
			w6.Expand = false;
 
			w6.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 416;
 
			this.DefaultHeight = 189;
 
			this.Show ();
 
		}
 
	}
 
}
gtk-gui/DesertPaintLab.NewProfileDialog.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class NewProfileDialog
 
	{
 
		private global::Gtk.Label label1;
 
		
 
		private global::Gtk.Entry profileNameEntry;
 
		
 
		private global::Gtk.Button buttonCancel;
 
		
 
		private global::Gtk.Button buttonOk;
 

 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.NewProfileDialog
 
			this.Name = "DesertPaintLab.NewProfileDialog";
 
			this.Title = "New Profile";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.BorderWidth = ((uint)(5));
 
			// Internal child DesertPaintLab.NewProfileDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			w1.Spacing = 10;
 
			w1.BorderWidth = ((uint)(9));
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.label1 = new global::Gtk.Label ();
 
			this.label1.Name = "label1";
 
			this.label1.LabelProp = "Name your new profile:";
 
			w1.Add (this.label1);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label1]));
 
			w2.Position = 0;
 
			w2.Expand = false;
 
			w2.Fill = false;
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.profileNameEntry = new global::Gtk.Entry ();
 
			this.profileNameEntry.CanFocus = true;
 
			this.profileNameEntry.Name = "profileNameEntry";
 
			this.profileNameEntry.IsEditable = true;
 
			this.profileNameEntry.InvisibleChar = '●';
 
			w1.Add (this.profileNameEntry);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(w1 [this.profileNameEntry]));
 
			w3.Position = 1;
 
			w3.Expand = false;
 
			w3.Fill = false;
 
			// Internal child DesertPaintLab.NewProfileDialog.ActionArea
 
			global::Gtk.HButtonBox w4 = this.ActionArea;
 
			w4.Name = "dialog1_ActionArea";
 
			w4.Spacing = 10;
 
			w4.BorderWidth = ((uint)(5));
 
			w4.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 w5 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonCancel]));
 
			w5.Expand = false;
 
			w5.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 w6 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonOk]));
 
			w6.Position = 1;
 
			w6.Expand = false;
 
			w6.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 318;
 
			this.DefaultHeight = 177;
 
			this.Show ();
 
		}
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class NewProfileDialog
 
	{
 
		private global::Gtk.Label label1;
 
		
 
		private global::Gtk.Entry profileNameEntry;
 
		
 
		private global::Gtk.Button buttonCancel;
 
		
 
		private global::Gtk.Button buttonOk;
 

	
 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.NewProfileDialog
 
			this.Name = "DesertPaintLab.NewProfileDialog";
 
			this.Title = "New Profile";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.BorderWidth = ((uint)(5));
 
			// Internal child DesertPaintLab.NewProfileDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			w1.Spacing = 10;
 
			w1.BorderWidth = ((uint)(9));
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.label1 = new global::Gtk.Label ();
 
			this.label1.Name = "label1";
 
			this.label1.LabelProp = "Name your new profile:";
 
			w1.Add (this.label1);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label1]));
 
			w2.Position = 0;
 
			w2.Expand = false;
 
			w2.Fill = false;
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.profileNameEntry = new global::Gtk.Entry ();
 
			this.profileNameEntry.CanFocus = true;
 
			this.profileNameEntry.Name = "profileNameEntry";
 
			this.profileNameEntry.IsEditable = true;
 
			this.profileNameEntry.InvisibleChar = '●';
 
			w1.Add (this.profileNameEntry);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(w1 [this.profileNameEntry]));
 
			w3.Position = 1;
 
			w3.Expand = false;
 
			w3.Fill = false;
 
			// Internal child DesertPaintLab.NewProfileDialog.ActionArea
 
			global::Gtk.HButtonBox w4 = this.ActionArea;
 
			w4.Name = "dialog1_ActionArea";
 
			w4.Spacing = 10;
 
			w4.BorderWidth = ((uint)(5));
 
			w4.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 w5 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonCancel]));
 
			w5.Expand = false;
 
			w5.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 w6 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonOk]));
 
			w6.Position = 1;
 
			w6.Expand = false;
 
			w6.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 318;
 
			this.DefaultHeight = 177;
 
			this.Show ();
 
		}
 
	}
 
}
gtk-gui/DesertPaintLab.PaintSwatch.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class PaintSwatch
 
	{
 
		private global::Gtk.VBox vbox1;
 
		
 
		private global::Gtk.Label colorNameLabel;
 
		
 
		private global::Gtk.DrawingArea colorBox;
 
		
 
		private global::Gtk.Label rgbLabel;
 

 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.PaintSwatch
 
			global::Stetic.BinContainer.Attach (this);
 
			this.Name = "DesertPaintLab.PaintSwatch";
 
			// Container child DesertPaintLab.PaintSwatch.Gtk.Container+ContainerChild
 
			this.vbox1 = new global::Gtk.VBox ();
 
			this.vbox1.Name = "vbox1";
 
			this.vbox1.Spacing = 6;
 
			// Container child vbox1.Gtk.Box+BoxChild
 
			this.colorNameLabel = new global::Gtk.Label ();
 
			this.colorNameLabel.Name = "colorNameLabel";
 
			this.colorNameLabel.LabelProp = "Unknown";
 
			this.vbox1.Add (this.colorNameLabel);
 
			global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.colorNameLabel]));
 
			w1.Position = 0;
 
			w1.Expand = false;
 
			w1.Fill = false;
 
			// Container child vbox1.Gtk.Box+BoxChild
 
			this.colorBox = new global::Gtk.DrawingArea ();
 
			this.colorBox.Name = "colorBox";
 
			this.vbox1.Add (this.colorBox);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.colorBox]));
 
			w2.Position = 1;
 
			// Container child vbox1.Gtk.Box+BoxChild
 
			this.rgbLabel = new global::Gtk.Label ();
 
			this.rgbLabel.Name = "rgbLabel";
 
			this.rgbLabel.LabelProp = "???, ???, ???";
 
			this.vbox1.Add (this.rgbLabel);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.rgbLabel]));
 
			w3.Position = 2;
 
			w3.Expand = false;
 
			w3.Fill = false;
 
			this.Add (this.vbox1);
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.Hide ();
 
		}
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class PaintSwatch
 
	{
 
		private global::Gtk.VBox vbox1;
 
		
 
		private global::Gtk.Label colorNameLabel;
 
		
 
		private global::Gtk.DrawingArea colorBox;
 
		
 
		private global::Gtk.Label rgbLabel;
 

	
 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.PaintSwatch
 
			global::Stetic.BinContainer.Attach (this);
 
			this.Name = "DesertPaintLab.PaintSwatch";
 
			// Container child DesertPaintLab.PaintSwatch.Gtk.Container+ContainerChild
 
			this.vbox1 = new global::Gtk.VBox ();
 
			this.vbox1.Name = "vbox1";
 
			this.vbox1.Spacing = 6;
 
			// Container child vbox1.Gtk.Box+BoxChild
 
			this.colorNameLabel = new global::Gtk.Label ();
 
			this.colorNameLabel.Name = "colorNameLabel";
 
			this.colorNameLabel.LabelProp = "Unknown";
 
			this.vbox1.Add (this.colorNameLabel);
 
			global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.colorNameLabel]));
 
			w1.Position = 0;
 
			w1.Expand = false;
 
			w1.Fill = false;
 
			// Container child vbox1.Gtk.Box+BoxChild
 
			this.colorBox = new global::Gtk.DrawingArea ();
 
			this.colorBox.Name = "colorBox";
 
			this.vbox1.Add (this.colorBox);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.colorBox]));
 
			w2.Position = 1;
 
			// Container child vbox1.Gtk.Box+BoxChild
 
			this.rgbLabel = new global::Gtk.Label ();
 
			this.rgbLabel.Name = "rgbLabel";
 
			this.rgbLabel.LabelProp = "???, ???, ???";
 
			this.vbox1.Add (this.rgbLabel);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.rgbLabel]));
 
			w3.Position = 2;
 
			w3.Expand = false;
 
			w3.Fill = false;
 
			this.Add (this.vbox1);
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.Hide ();
 
		}
 
	}
 
}
gtk-gui/DesertPaintLab.ScreenCheckDialog.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class ScreenCheckDialog
 
	{
 
		private global::Gtk.VBox vbox2;
 
		
 
		private global::Gtk.HBox hbox1;
 
		
 
		private global::Gtk.Label label1;
 
		
 
		private global::Gtk.Entry screenWidthEntry;
 
		
 
		private global::Gtk.Entry screenHeightEntry;
 
		
 
		private global::Gtk.HBox hbox2;
 
		
 
		private global::Gtk.Label label2;
 
		
 
		private global::Gtk.Entry gamePixelWidthEntry;
 
		
 
		private global::Gtk.Button buttonOk;
 

 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.ScreenCheckDialog
 
			this.Name = "DesertPaintLab.ScreenCheckDialog";
 
			this.Title = "Screen Check";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.Modal = true;
 
			this.BorderWidth = ((uint)(9));
 
			// Internal child DesertPaintLab.ScreenCheckDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.vbox2 = new global::Gtk.VBox ();
 
			this.vbox2.Name = "vbox2";
 
			this.vbox2.Spacing = 20;
 
			this.vbox2.BorderWidth = ((uint)(20));
 
			// Container child vbox2.Gtk.Box+BoxChild
 
			this.hbox1 = new global::Gtk.HBox ();
 
			this.hbox1.Name = "hbox1";
 
			this.hbox1.Spacing = 20;
 
			this.hbox1.BorderWidth = ((uint)(10));
 
			// Container child hbox1.Gtk.Box+BoxChild
 
			this.label1 = new global::Gtk.Label ();
 
			this.label1.Name = "label1";
 
			this.label1.LabelProp = "Screen Resolution";
 
			this.hbox1.Add (this.label1);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.label1]));
 
			w2.Position = 0;
 
			w2.Expand = false;
 
			w2.Fill = false;
 
			// Container child hbox1.Gtk.Box+BoxChild
 
			this.screenWidthEntry = new global::Gtk.Entry ();
 
			this.screenWidthEntry.WidthRequest = 50;
 
			this.screenWidthEntry.CanFocus = true;
 
			this.screenWidthEntry.Name = "screenWidthEntry";
 
			this.screenWidthEntry.IsEditable = true;
 
			this.screenWidthEntry.InvisibleChar = '●';
 
			this.hbox1.Add (this.screenWidthEntry);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.screenWidthEntry]));
 
			w3.Position = 1;
 
			// Container child hbox1.Gtk.Box+BoxChild
 
			this.screenHeightEntry = new global::Gtk.Entry ();
 
			this.screenHeightEntry.WidthRequest = 50;
 
			this.screenHeightEntry.CanFocus = true;
 
			this.screenHeightEntry.Name = "screenHeightEntry";
 
			this.screenHeightEntry.IsEditable = true;
 
			this.screenHeightEntry.InvisibleChar = '●';
 
			this.hbox1.Add (this.screenHeightEntry);
 
			global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.screenHeightEntry]));
 
			w4.Position = 2;
 
			this.vbox2.Add (this.hbox1);
 
			global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox1]));
 
			w5.Position = 0;
 
			w5.Expand = false;
 
			w5.Fill = false;
 
			// Container child vbox2.Gtk.Box+BoxChild
 
			this.hbox2 = new global::Gtk.HBox ();
 
			this.hbox2.Name = "hbox2";
 
			this.hbox2.Spacing = 20;
 
			this.hbox2.BorderWidth = ((uint)(10));
 
			// Container child hbox2.Gtk.Box+BoxChild
 
			this.label2 = new global::Gtk.Label ();
 
			this.label2.Name = "label2";
 
			this.label2.LabelProp = "Game Pixel Width in Screen Pixels";
 
			this.hbox2.Add (this.label2);
 
			global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.label2]));
 
			w6.Position = 0;
 
			w6.Expand = false;
 
			w6.Fill = false;
 
			// Container child hbox2.Gtk.Box+BoxChild
 
			this.gamePixelWidthEntry = new global::Gtk.Entry ();
 
			this.gamePixelWidthEntry.WidthRequest = 50;
 
			this.gamePixelWidthEntry.CanFocus = true;
 
			this.gamePixelWidthEntry.Name = "gamePixelWidthEntry";
 
			this.gamePixelWidthEntry.IsEditable = true;
 
			this.gamePixelWidthEntry.InvisibleChar = '●';
 
			this.hbox2.Add (this.gamePixelWidthEntry);
 
			global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.gamePixelWidthEntry]));
 
			w7.Position = 1;
 
			w7.Expand = false;
 
			w7.Fill = false;
 
			this.vbox2.Add (this.hbox2);
 
			global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox2]));
 
			w8.Position = 1;
 
			w8.Expand = false;
 
			w8.Fill = false;
 
			w1.Add (this.vbox2);
 
			global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(w1 [this.vbox2]));
 
			w9.Position = 0;
 
			// Internal child DesertPaintLab.ScreenCheckDialog.ActionArea
 
			global::Gtk.HButtonBox w10 = this.ActionArea;
 
			w10.Name = "dialog1_ActionArea";
 
			w10.Spacing = 10;
 
			w10.BorderWidth = ((uint)(5));
 
			w10.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
 
			// 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 w11 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w10 [this.buttonOk]));
 
			w11.Expand = false;
 
			w11.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 378;
 
			this.DefaultHeight = 245;
 
			this.Show ();
 
		}
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class ScreenCheckDialog
 
	{
 
		private global::Gtk.VBox vbox2;
 
		
 
		private global::Gtk.HBox hbox1;
 
		
 
		private global::Gtk.Label label1;
 
		
 
		private global::Gtk.Entry screenWidthEntry;
 
		
 
		private global::Gtk.Entry screenHeightEntry;
 
		
 
		private global::Gtk.HBox hbox2;
 
		
 
		private global::Gtk.Label label2;
 
		
 
		private global::Gtk.Entry gamePixelWidthEntry;
 
		
 
		private global::Gtk.Button buttonOk;
 

	
 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.ScreenCheckDialog
 
			this.Name = "DesertPaintLab.ScreenCheckDialog";
 
			this.Title = "Screen Check";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.Modal = true;
 
			this.BorderWidth = ((uint)(9));
 
			// Internal child DesertPaintLab.ScreenCheckDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.vbox2 = new global::Gtk.VBox ();
 
			this.vbox2.Name = "vbox2";
 
			this.vbox2.Spacing = 20;
 
			this.vbox2.BorderWidth = ((uint)(20));
 
			// Container child vbox2.Gtk.Box+BoxChild
 
			this.hbox1 = new global::Gtk.HBox ();
 
			this.hbox1.Name = "hbox1";
 
			this.hbox1.Spacing = 20;
 
			this.hbox1.BorderWidth = ((uint)(10));
 
			// Container child hbox1.Gtk.Box+BoxChild
 
			this.label1 = new global::Gtk.Label ();
 
			this.label1.Name = "label1";
 
			this.label1.LabelProp = "Screen Resolution";
 
			this.hbox1.Add (this.label1);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.label1]));
 
			w2.Position = 0;
 
			w2.Expand = false;
 
			w2.Fill = false;
 
			// Container child hbox1.Gtk.Box+BoxChild
 
			this.screenWidthEntry = new global::Gtk.Entry ();
 
			this.screenWidthEntry.WidthRequest = 50;
 
			this.screenWidthEntry.CanFocus = true;
 
			this.screenWidthEntry.Name = "screenWidthEntry";
 
			this.screenWidthEntry.IsEditable = true;
 
			this.screenWidthEntry.InvisibleChar = '●';
 
			this.hbox1.Add (this.screenWidthEntry);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.screenWidthEntry]));
 
			w3.Position = 1;
 
			// Container child hbox1.Gtk.Box+BoxChild
 
			this.screenHeightEntry = new global::Gtk.Entry ();
 
			this.screenHeightEntry.WidthRequest = 50;
 
			this.screenHeightEntry.CanFocus = true;
 
			this.screenHeightEntry.Name = "screenHeightEntry";
 
			this.screenHeightEntry.IsEditable = true;
 
			this.screenHeightEntry.InvisibleChar = '●';
 
			this.hbox1.Add (this.screenHeightEntry);
 
			global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.screenHeightEntry]));
 
			w4.Position = 2;
 
			this.vbox2.Add (this.hbox1);
 
			global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox1]));
 
			w5.Position = 0;
 
			w5.Expand = false;
 
			w5.Fill = false;
 
			// Container child vbox2.Gtk.Box+BoxChild
 
			this.hbox2 = new global::Gtk.HBox ();
 
			this.hbox2.Name = "hbox2";
 
			this.hbox2.Spacing = 20;
 
			this.hbox2.BorderWidth = ((uint)(10));
 
			// Container child hbox2.Gtk.Box+BoxChild
 
			this.label2 = new global::Gtk.Label ();
 
			this.label2.Name = "label2";
 
			this.label2.LabelProp = "Game Pixel Width in Screen Pixels";
 
			this.hbox2.Add (this.label2);
 
			global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.label2]));
 
			w6.Position = 0;
 
			w6.Expand = false;
 
			w6.Fill = false;
 
			// Container child hbox2.Gtk.Box+BoxChild
 
			this.gamePixelWidthEntry = new global::Gtk.Entry ();
 
			this.gamePixelWidthEntry.WidthRequest = 50;
 
			this.gamePixelWidthEntry.CanFocus = true;
 
			this.gamePixelWidthEntry.Name = "gamePixelWidthEntry";
 
			this.gamePixelWidthEntry.IsEditable = true;
 
			this.gamePixelWidthEntry.InvisibleChar = '●';
 
			this.hbox2.Add (this.gamePixelWidthEntry);
 
			global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.gamePixelWidthEntry]));
 
			w7.Position = 1;
 
			w7.Expand = false;
 
			w7.Fill = false;
 
			this.vbox2.Add (this.hbox2);
 
			global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox2]));
 
			w8.Position = 1;
 
			w8.Expand = false;
 
			w8.Fill = false;
 
			w1.Add (this.vbox2);
 
			global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(w1 [this.vbox2]));
 
			w9.Position = 0;
 
			// Internal child DesertPaintLab.ScreenCheckDialog.ActionArea
 
			global::Gtk.HButtonBox w10 = this.ActionArea;
 
			w10.Name = "dialog1_ActionArea";
 
			w10.Spacing = 10;
 
			w10.BorderWidth = ((uint)(5));
 
			w10.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
 
			// 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 w11 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w10 [this.buttonOk]));
 
			w11.Expand = false;
 
			w11.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 378;
 
			this.DefaultHeight = 245;
 
			this.Show ();
 
		}
 
	}
 
}
gtk-gui/DesertPaintLab.SelectProfileDialog.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class SelectProfileDialog
 
	{
 
		private global::Gtk.Label label3;
 
		
 
		private global::Gtk.TreeView profileListView;
 
		
 
		private global::Gtk.Button buttonCancel;
 
		
 
		private global::Gtk.Button button56;
 
		
 
		private global::Gtk.Button buttonOk;
 

 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.SelectProfileDialog
 
			this.Name = "DesertPaintLab.SelectProfileDialog";
 
			this.Title = "Open Profile";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.Modal = true;
 
			this.BorderWidth = ((uint)(5));
 
			// Internal child DesertPaintLab.SelectProfileDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			w1.Spacing = 10;
 
			w1.BorderWidth = ((uint)(2));
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.label3 = new global::Gtk.Label ();
 
			this.label3.Name = "label3";
 
			this.label3.LabelProp = "Select the profile you would like to open:";
 
			w1.Add (this.label3);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label3]));
 
			w2.Position = 0;
 
			w2.Expand = false;
 
			w2.Fill = false;
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.profileListView = new global::Gtk.TreeView ();
 
			this.profileListView.CanFocus = true;
 
			this.profileListView.Name = "profileListView";
 
			this.profileListView.EnableSearch = false;
 
			w1.Add (this.profileListView);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(w1 [this.profileListView]));
 
			w3.Position = 1;
 
			// Internal child DesertPaintLab.SelectProfileDialog.ActionArea
 
			global::Gtk.HButtonBox w4 = this.ActionArea;
 
			w4.Name = "dialog1_ActionArea";
 
			w4.Spacing = 10;
 
			w4.BorderWidth = ((uint)(5));
 
			w4.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 w5 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonCancel]));
 
			w5.Expand = false;
 
			w5.Fill = false;
 
			// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
 
			this.button56 = new global::Gtk.Button ();
 
			this.button56.CanFocus = true;
 
			this.button56.Name = "button56";
 
			this.button56.UseUnderline = true;
 
			this.button56.Label = "New Profile";
 
			this.AddActionWidget (this.button56, -3);
 
			global::Gtk.ButtonBox.ButtonBoxChild w6 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.button56]));
 
			w6.Position = 1;
 
			w6.Expand = false;
 
			w6.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 w7 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonOk]));
 
			w7.Position = 2;
 
			w7.Expand = false;
 
			w7.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 400;
 
			this.DefaultHeight = 288;
 
			this.Show ();
 
			this.profileListView.CursorChanged += new global::System.EventHandler (this.OnCursorChanged);
 
		}
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 
namespace DesertPaintLab
 
{
 
	public partial class SelectProfileDialog
 
	{
 
		private global::Gtk.Label label3;
 
		
 
		private global::Gtk.TreeView profileListView;
 
		
 
		private global::Gtk.Button buttonCancel;
 
		
 
		private global::Gtk.Button button56;
 
		
 
		private global::Gtk.Button buttonOk;
 

	
 
		protected virtual void Build ()
 
		{
 
			global::Stetic.Gui.Initialize (this);
 
			// Widget DesertPaintLab.SelectProfileDialog
 
			this.Name = "DesertPaintLab.SelectProfileDialog";
 
			this.Title = "Open Profile";
 
			this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
			this.Modal = true;
 
			this.BorderWidth = ((uint)(5));
 
			// Internal child DesertPaintLab.SelectProfileDialog.VBox
 
			global::Gtk.VBox w1 = this.VBox;
 
			w1.Name = "dialog1_VBox";
 
			w1.Spacing = 10;
 
			w1.BorderWidth = ((uint)(2));
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.label3 = new global::Gtk.Label ();
 
			this.label3.Name = "label3";
 
			this.label3.LabelProp = "Select the profile you would like to open:";
 
			w1.Add (this.label3);
 
			global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label3]));
 
			w2.Position = 0;
 
			w2.Expand = false;
 
			w2.Fill = false;
 
			// Container child dialog1_VBox.Gtk.Box+BoxChild
 
			this.profileListView = new global::Gtk.TreeView ();
 
			this.profileListView.CanFocus = true;
 
			this.profileListView.Name = "profileListView";
 
			this.profileListView.EnableSearch = false;
 
			w1.Add (this.profileListView);
 
			global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(w1 [this.profileListView]));
 
			w3.Position = 1;
 
			// Internal child DesertPaintLab.SelectProfileDialog.ActionArea
 
			global::Gtk.HButtonBox w4 = this.ActionArea;
 
			w4.Name = "dialog1_ActionArea";
 
			w4.Spacing = 10;
 
			w4.BorderWidth = ((uint)(5));
 
			w4.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 w5 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonCancel]));
 
			w5.Expand = false;
 
			w5.Fill = false;
 
			// Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
 
			this.button56 = new global::Gtk.Button ();
 
			this.button56.CanFocus = true;
 
			this.button56.Name = "button56";
 
			this.button56.UseUnderline = true;
 
			this.button56.Label = "New Profile";
 
			this.AddActionWidget (this.button56, -3);
 
			global::Gtk.ButtonBox.ButtonBoxChild w6 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.button56]));
 
			w6.Position = 1;
 
			w6.Expand = false;
 
			w6.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 w7 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w4 [this.buttonOk]));
 
			w7.Position = 2;
 
			w7.Expand = false;
 
			w7.Fill = false;
 
			if ((this.Child != null)) {
 
				this.Child.ShowAll ();
 
			}
 
			this.DefaultWidth = 400;
 
			this.DefaultHeight = 288;
 
			this.Show ();
 
			this.profileListView.CursorChanged += new global::System.EventHandler (this.OnCursorChanged);
 
		}
 
	}
 
}
gtk-gui/MainWindow.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 

 
public partial class MainWindow
 
{
 
	private global::Gtk.UIManager UIManager;
 
	
 
	private global::Gtk.Action FileAction;
 
	
 
	private global::Gtk.Action HelpAction;
 
	
 
	private global::Gtk.Action AboutAction;
 
	
 
	private global::Gtk.Action NewProfileAction;
 
	
 
	private global::Gtk.Action OpenProfileAction;
 
	
 
	private global::Gtk.Action ExitAction;
 
	
 
	private global::Gtk.Action ExportForPracticalPaintAction;
 
	
 
	private global::Gtk.Action WindowAction;
 
	
 
	private global::Gtk.Action RunSimulatorAction;
 
	
 
	private global::Gtk.VBox vbox1;
 
	
 
	private global::Gtk.MenuBar menubar1;
 
	
 
	private global::Gtk.HBox hbox1;
 
	
 
	private global::Gtk.Frame frame2;
 
	
 
	private global::Gtk.Alignment GtkAlignment;
 
	
 
	private global::Gtk.VBox vbox3;
 
	
 
	private global::Gtk.HBox hbox6;
 
	
 
	private global::Gtk.Label label4;
 
	
 
	private global::Gtk.ComboBox ingredient1ComboBox;
 
	
 
	private global::Gtk.HBox hbox7;
 
	
 
	private global::Gtk.Label label5;
 
	
 
	private global::Gtk.ComboBox ingredient2ComboBox;
 
	
 
	private global::Gtk.HBox hbox8;
 
	
 
	private global::Gtk.Label label6;
 
	
 
	private global::Gtk.ComboBox ingredient3ComboBox;
 
	
 
	private global::Gtk.Label GtkLabel2;
 
	
 
	private global::Gtk.Frame frame3;
 
	
 
	private global::Gtk.Alignment GtkAlignment1;
 
	
 
	private global::Gtk.VBox vbox4;
 
	
 
	private global::DesertPaintLab.PaintSwatch unmodifiedSwatch;
 
	
 
	private global::Gtk.Button captureButton;
 
	
 
	private global::Gtk.Label GtkLabel25;
 
	
 
	private global::Gtk.Frame frame4;
 
	
 
	private global::Gtk.Alignment GtkAlignment2;
 
	
 
	private global::Gtk.VBox vbox5;
 
	
 
	private global::DesertPaintLab.PaintSwatch reactionSwatch;
 
	
 
	private global::Gtk.Button saveButton;
 
	
 
	private global::Gtk.Label GtkLabel26;
 
	
 
	private global::Gtk.Statusbar statusBar;
 

 
	protected virtual void Build ()
 
	{
 
		global::Stetic.Gui.Initialize (this);
 
		// Widget MainWindow
 
		this.UIManager = new global::Gtk.UIManager ();
 
		global::Gtk.ActionGroup w1 = new global::Gtk.ActionGroup ("Default");
 
		this.FileAction = new global::Gtk.Action ("FileAction", "_File", null, null);
 
		this.FileAction.ShortLabel = "_File";
 
		w1.Add (this.FileAction, "<Alt>f");
 
		this.HelpAction = new global::Gtk.Action ("HelpAction", "_Help", null, null);
 
		this.HelpAction.ShortLabel = "_Help";
 
		w1.Add (this.HelpAction, "<Alt>a");
 
		this.AboutAction = new global::Gtk.Action ("AboutAction", "_About...", null, null);
 
		this.AboutAction.ShortLabel = "_About...";
 
		w1.Add (this.AboutAction, "<Alt>a");
 
		this.NewProfileAction = new global::Gtk.Action ("NewProfileAction", "_New Profile...", null, null);
 
		this.NewProfileAction.ShortLabel = "_New Profile...";
 
		w1.Add (this.NewProfileAction, "<Alt>n");
 
		this.OpenProfileAction = new global::Gtk.Action ("OpenProfileAction", "_Open Profile...", null, null);
 
		this.OpenProfileAction.ShortLabel = "_Open Profile...";
 
		w1.Add (this.OpenProfileAction, "<Alt>o");
 
		this.ExitAction = new global::Gtk.Action ("ExitAction", "E_xit", null, null);
 
		this.ExitAction.ShortLabel = "E_xit";
 
		w1.Add (this.ExitAction, "<Alt>x");
 
		this.ExportForPracticalPaintAction = new global::Gtk.Action ("ExportForPracticalPaintAction", "Export for _PracticalPaint...", null, null);
 
		this.ExportForPracticalPaintAction.ShortLabel = "Export for _PracticalPaint...";
 
		w1.Add (this.ExportForPracticalPaintAction, null);
 
		this.WindowAction = new global::Gtk.Action ("WindowAction", "_Window", null, null);
 
		this.WindowAction.ShortLabel = "_Window";
 
		w1.Add (this.WindowAction, null);
 
		this.RunSimulatorAction = new global::Gtk.Action ("RunSimulatorAction", "_Run Simulator", null, null);
 
		this.RunSimulatorAction.ShortLabel = "_Run Simulator";
 
		w1.Add (this.RunSimulatorAction, null);
 
		this.UIManager.InsertActionGroup (w1, 0);
 
		this.AddAccelGroup (this.UIManager.AccelGroup);
 
		this.Name = "MainWindow";
 
		this.Title = "Desert Paint Lab";
 
		this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
		// Container child MainWindow.Gtk.Container+ContainerChild
 
		this.vbox1 = new global::Gtk.VBox ();
 
		this.vbox1.Name = "vbox1";
 
		// Container child vbox1.Gtk.Box+BoxChild
 
		this.UIManager.AddUiFromString (@"<ui><menubar name='menubar1'><menu name='FileAction' action='FileAction'><menuitem name='NewProfileAction' action='NewProfileAction'/><menuitem name='OpenProfileAction' action='OpenProfileAction'/><menuitem name='ExportForPracticalPaintAction' action='ExportForPracticalPaintAction'/><separator/><menuitem name='ExitAction' action='ExitAction'/></menu><menu name='WindowAction' action='WindowAction'><menuitem name='RunSimulatorAction' action='RunSimulatorAction'/></menu><menu name='HelpAction' action='HelpAction'><menuitem name='AboutAction' action='AboutAction'/></menu></menubar></ui>");
 
		this.menubar1 = ((global::Gtk.MenuBar)(this.UIManager.GetWidget ("/menubar1")));
 
		this.menubar1.Name = "menubar1";
 
		this.vbox1.Add (this.menubar1);
 
		global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.menubar1]));
 
		w2.Position = 0;
 
		w2.Expand = false;
 
		w2.Fill = false;
 
		// Container child vbox1.Gtk.Box+BoxChild
 
		this.hbox1 = new global::Gtk.HBox ();
 
		this.hbox1.Name = "hbox1";
 
		this.hbox1.Spacing = 6;
 
		this.hbox1.BorderWidth = ((uint)(4));
 
		// Container child hbox1.Gtk.Box+BoxChild
 
		this.frame2 = new global::Gtk.Frame ();
 
		this.frame2.Name = "frame2";
 
		this.frame2.BorderWidth = ((uint)(4));
 
		// Container child frame2.Gtk.Container+ContainerChild
 
		this.GtkAlignment = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
 
		this.GtkAlignment.Name = "GtkAlignment";
 
		this.GtkAlignment.LeftPadding = ((uint)(6));
 
		this.GtkAlignment.RightPadding = ((uint)(6));
 
		// Container child GtkAlignment.Gtk.Container+ContainerChild
 
		this.vbox3 = new global::Gtk.VBox ();
 
		this.vbox3.Name = "vbox3";
 
		this.vbox3.Homogeneous = true;
 
		this.vbox3.Spacing = 6;
 
		// Container child vbox3.Gtk.Box+BoxChild
 
		this.hbox6 = new global::Gtk.HBox ();
 
		this.hbox6.Name = "hbox6";
 
		this.hbox6.Spacing = 6;
 
		// Container child hbox6.Gtk.Box+BoxChild
 
		this.label4 = new global::Gtk.Label ();
 
		this.label4.Name = "label4";
 
		this.label4.LabelProp = "Ingredient 1:";
 
		this.hbox6.Add (this.label4);
 
		global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox6 [this.label4]));
 
		w3.Position = 0;
 
		w3.Expand = false;
 
		w3.Fill = false;
 
		// Container child hbox6.Gtk.Box+BoxChild
 
		this.ingredient1ComboBox = global::Gtk.ComboBox.NewText ();
 
		this.ingredient1ComboBox.Name = "ingredient1ComboBox";
 
		this.hbox6.Add (this.ingredient1ComboBox);
 
		global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox6 [this.ingredient1ComboBox]));
 
		w4.Position = 1;
 
		this.vbox3.Add (this.hbox6);
 
		global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox6]));
 
		w5.Position = 0;
 
		w5.Expand = false;
 
		w5.Fill = false;
 
		// Container child vbox3.Gtk.Box+BoxChild
 
		this.hbox7 = new global::Gtk.HBox ();
 
		this.hbox7.Name = "hbox7";
 
		this.hbox7.Spacing = 6;
 
		// Container child hbox7.Gtk.Box+BoxChild
 
		this.label5 = new global::Gtk.Label ();
 
		this.label5.Name = "label5";
 
		this.label5.LabelProp = "Ingredient 2:";
 
		this.hbox7.Add (this.label5);
 
		global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox7 [this.label5]));
 
		w6.Position = 0;
 
		w6.Expand = false;
 
		w6.Fill = false;
 
		// Container child hbox7.Gtk.Box+BoxChild
 
		this.ingredient2ComboBox = global::Gtk.ComboBox.NewText ();
 
		this.ingredient2ComboBox.Name = "ingredient2ComboBox";
 
		this.hbox7.Add (this.ingredient2ComboBox);
 
		global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox7 [this.ingredient2ComboBox]));
 
		w7.Position = 1;
 
		this.vbox3.Add (this.hbox7);
 
		global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox7]));
 
		w8.Position = 1;
 
		w8.Expand = false;
 
		w8.Fill = false;
 
		// Container child vbox3.Gtk.Box+BoxChild
 
		this.hbox8 = new global::Gtk.HBox ();
 
		this.hbox8.Name = "hbox8";
 
		this.hbox8.Spacing = 6;
 
		// Container child hbox8.Gtk.Box+BoxChild
 
		this.label6 = new global::Gtk.Label ();
 
		this.label6.Name = "label6";
 
		this.label6.LabelProp = "Ingredient 3:";
 
		this.hbox8.Add (this.label6);
 
		global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.hbox8 [this.label6]));
 
		w9.Position = 0;
 
		w9.Expand = false;
 
		w9.Fill = false;
 
		// Container child hbox8.Gtk.Box+BoxChild
 
		this.ingredient3ComboBox = global::Gtk.ComboBox.NewText ();
 
		this.ingredient3ComboBox.Name = "ingredient3ComboBox";
 
		this.hbox8.Add (this.ingredient3ComboBox);
 
		global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.hbox8 [this.ingredient3ComboBox]));
 
		w10.Position = 1;
 
		this.vbox3.Add (this.hbox8);
 
		global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox8]));
 
		w11.Position = 2;
 
		w11.Expand = false;
 
		w11.Fill = false;
 
		this.GtkAlignment.Add (this.vbox3);
 
		this.frame2.Add (this.GtkAlignment);
 
		this.GtkLabel2 = new global::Gtk.Label ();
 
		this.GtkLabel2.Name = "GtkLabel2";
 
		this.GtkLabel2.LabelProp = "<b>Select Ingredients</b>";
 
		this.GtkLabel2.UseMarkup = true;
 
		this.frame2.LabelWidget = this.GtkLabel2;
 
		this.hbox1.Add (this.frame2);
 
		global::Gtk.Box.BoxChild w14 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.frame2]));
 
		w14.Position = 0;
 
		// Container child hbox1.Gtk.Box+BoxChild
 
		this.frame3 = new global::Gtk.Frame ();
 
		this.frame3.Name = "frame3";
 
		this.frame3.BorderWidth = ((uint)(4));
 
		// Container child frame3.Gtk.Container+ContainerChild
 
		this.GtkAlignment1 = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
 
		this.GtkAlignment1.Name = "GtkAlignment1";
 
		this.GtkAlignment1.LeftPadding = ((uint)(5));
 
		this.GtkAlignment1.TopPadding = ((uint)(5));
 
		this.GtkAlignment1.RightPadding = ((uint)(5));
 
		this.GtkAlignment1.BottomPadding = ((uint)(6));
 
		// Container child GtkAlignment1.Gtk.Container+ContainerChild
 
		this.vbox4 = new global::Gtk.VBox ();
 
		this.vbox4.WidthRequest = 120;
 
		this.vbox4.Name = "vbox4";
 
		this.vbox4.Spacing = 6;
 
		// Container child vbox4.Gtk.Box+BoxChild
 
		this.unmodifiedSwatch = new global::DesertPaintLab.PaintSwatch ();
 
		this.unmodifiedSwatch.Events = ((global::Gdk.EventMask)(256));
 
		this.unmodifiedSwatch.Name = "unmodifiedSwatch";
 
		this.vbox4.Add (this.unmodifiedSwatch);
 
		global::Gtk.Box.BoxChild w15 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.unmodifiedSwatch]));
 
		w15.Position = 0;
 
		// Container child vbox4.Gtk.Box+BoxChild
 
		this.captureButton = new global::Gtk.Button ();
 
		this.captureButton.WidthRequest = 100;
 
		this.captureButton.CanFocus = true;
 
		this.captureButton.Name = "captureButton";
 
		this.captureButton.UseUnderline = true;
 
		this.captureButton.Label = "Capture";
 
		this.vbox4.Add (this.captureButton);
 
		global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.captureButton]));
 
		w16.Position = 1;
 
		w16.Expand = false;
 
		w16.Fill = false;
 
		this.GtkAlignment1.Add (this.vbox4);
 
		this.frame3.Add (this.GtkAlignment1);
 
		this.GtkLabel25 = new global::Gtk.Label ();
 
		this.GtkLabel25.Name = "GtkLabel25";
 
		this.GtkLabel25.LabelProp = "<b>Unmodified</b>";
 
		this.GtkLabel25.UseMarkup = true;
 
		this.frame3.LabelWidget = this.GtkLabel25;
 
		this.hbox1.Add (this.frame3);
 
		global::Gtk.Box.BoxChild w19 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.frame3]));
 
		w19.Position = 1;
 
		w19.Expand = false;
 
		w19.Fill = false;
 
		// Container child hbox1.Gtk.Box+BoxChild
 
		this.frame4 = new global::Gtk.Frame ();
 
		this.frame4.Name = "frame4";
 
		this.frame4.BorderWidth = ((uint)(4));
 
		// Container child frame4.Gtk.Container+ContainerChild
 
		this.GtkAlignment2 = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
 
		this.GtkAlignment2.WidthRequest = 130;
 
		this.GtkAlignment2.Name = "GtkAlignment2";
 
		this.GtkAlignment2.LeftPadding = ((uint)(5));
 
		this.GtkAlignment2.TopPadding = ((uint)(5));
 
		this.GtkAlignment2.RightPadding = ((uint)(5));
 
		this.GtkAlignment2.BottomPadding = ((uint)(6));
 
		// Container child GtkAlignment2.Gtk.Container+ContainerChild
 
		this.vbox5 = new global::Gtk.VBox ();
 
		this.vbox5.WidthRequest = 120;
 
		this.vbox5.Name = "vbox5";
 
		this.vbox5.Spacing = 6;
 
		// Container child vbox5.Gtk.Box+BoxChild
 
		this.reactionSwatch = new global::DesertPaintLab.PaintSwatch ();
 
		this.reactionSwatch.Events = ((global::Gdk.EventMask)(256));
 
		this.reactionSwatch.Name = "reactionSwatch";
 
		this.vbox5.Add (this.reactionSwatch);
 
		global::Gtk.Box.BoxChild w20 = ((global::Gtk.Box.BoxChild)(this.vbox5 [this.reactionSwatch]));
 
		w20.Position = 0;
 
		// Container child vbox5.Gtk.Box+BoxChild
 
		this.saveButton = new global::Gtk.Button ();
 
		this.saveButton.WidthRequest = 100;
 
		this.saveButton.CanFocus = true;
 
		this.saveButton.Name = "saveButton";
 
		this.saveButton.UseUnderline = true;
 
		this.saveButton.Label = "Record";
 
		this.vbox5.Add (this.saveButton);
 
		global::Gtk.Box.BoxChild w21 = ((global::Gtk.Box.BoxChild)(this.vbox5 [this.saveButton]));
 
		w21.Position = 1;
 
		w21.Expand = false;
 
		w21.Fill = false;
 
		this.GtkAlignment2.Add (this.vbox5);
 
		this.frame4.Add (this.GtkAlignment2);
 
		this.GtkLabel26 = new global::Gtk.Label ();
 
		this.GtkLabel26.Name = "GtkLabel26";
 
		this.GtkLabel26.LabelProp = "<b>Reaction</b>";
 
		this.GtkLabel26.UseMarkup = true;
 
		this.frame4.LabelWidget = this.GtkLabel26;
 
		this.hbox1.Add (this.frame4);
 
		global::Gtk.Box.BoxChild w24 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.frame4]));
 
		w24.Position = 2;
 
		w24.Expand = false;
 
		w24.Fill = false;
 
		this.vbox1.Add (this.hbox1);
 
		global::Gtk.Box.BoxChild w25 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox1]));
 
		w25.Position = 1;
 
		// Container child vbox1.Gtk.Box+BoxChild
 
		this.statusBar = new global::Gtk.Statusbar ();
 
		this.statusBar.Name = "statusBar";
 
		this.statusBar.Spacing = 6;
 
		this.vbox1.Add (this.statusBar);
 
		global::Gtk.Box.BoxChild w26 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.statusBar]));
 
		w26.Position = 2;
 
		w26.Expand = false;
 
		w26.Fill = false;
 
		this.Add (this.vbox1);
 
		if ((this.Child != null)) {
 
			this.Child.ShowAll ();
 
		}
 
		this.DefaultWidth = 629;
 
		this.DefaultHeight = 265;
 
		this.Show ();
 
		this.DeleteEvent += new global::Gtk.DeleteEventHandler (this.OnDeleteEvent);
 
		this.AboutAction.Activated += new global::System.EventHandler (this.OnAbout);
 
		this.NewProfileAction.Activated += new global::System.EventHandler (this.OnNewProfile);
 
		this.OpenProfileAction.Activated += new global::System.EventHandler (this.OnOpenProfile);
 
		this.ExitAction.Activated += new global::System.EventHandler (this.OnMenuExit);
 
		this.ExportForPracticalPaintAction.Activated += new global::System.EventHandler (this.OnExport);
 
		this.RunSimulatorAction.Activated += new global::System.EventHandler (this.RunSimulator);
 
		this.ingredient1ComboBox.Changed += new global::System.EventHandler (this.OnChangedIngredient1);
 
		this.ingredient2ComboBox.Changed += new global::System.EventHandler (this.OnChangedIngredient2);
 
		this.ingredient3ComboBox.Changed += new global::System.EventHandler (this.OnChangedIngredient3);
 
		this.captureButton.Clicked += new global::System.EventHandler (this.OnCaptureButton);
 
		this.saveButton.Clicked += new global::System.EventHandler (this.OnSaveButton);
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 

	
 
public partial class MainWindow
 
{
 
	private global::Gtk.UIManager UIManager;
 
	
 
	private global::Gtk.Action FileAction;
 
	
 
	private global::Gtk.Action HelpAction;
 
	
 
	private global::Gtk.Action AboutAction;
 
	
 
	private global::Gtk.Action NewProfileAction;
 
	
 
	private global::Gtk.Action OpenProfileAction;
 
	
 
	private global::Gtk.Action ExitAction;
 
	
 
	private global::Gtk.Action ExportForPracticalPaintAction;
 
	
 
	private global::Gtk.Action WindowAction;
 
	
 
	private global::Gtk.Action RunSimulatorAction;
 
	
 
	private global::Gtk.Action DebugAction;
 
	
 
	private global::Gtk.Action ScreenshotAction;
 
	
 
	private global::Gtk.VBox vbox1;
 
	
 
	private global::Gtk.MenuBar menubar1;
 
	
 
	private global::Gtk.HBox hbox1;
 
	
 
	private global::Gtk.Frame frame2;
 
	
 
	private global::Gtk.Alignment GtkAlignment;
 
	
 
	private global::Gtk.VBox vbox3;
 
	
 
	private global::Gtk.HBox hbox6;
 
	
 
	private global::Gtk.Label label4;
 
	
 
	private global::Gtk.ComboBox ingredient1ComboBox;
 
	
 
	private global::Gtk.HBox hbox7;
 
	
 
	private global::Gtk.Label label5;
 
	
 
	private global::Gtk.ComboBox ingredient2ComboBox;
 
	
 
	private global::Gtk.HBox hbox8;
 
	
 
	private global::Gtk.Label label6;
 
	
 
	private global::Gtk.ComboBox ingredient3ComboBox;
 
	
 
	private global::Gtk.Label GtkLabel2;
 
	
 
	private global::Gtk.Frame frame3;
 
	
 
	private global::Gtk.Alignment GtkAlignment1;
 
	
 
	private global::Gtk.VBox vbox4;
 
	
 
	private global::DesertPaintLab.PaintSwatch unmodifiedSwatch;
 
	
 
	private global::Gtk.Button captureButton;
 
	
 
	private global::Gtk.Label GtkLabel25;
 
	
 
	private global::Gtk.Frame frame4;
 
	
 
	private global::Gtk.Alignment GtkAlignment2;
 
	
 
	private global::Gtk.VBox vbox5;
 
	
 
	private global::DesertPaintLab.PaintSwatch reactionSwatch;
 
	
 
	private global::Gtk.Button saveButton;
 
	
 
	private global::Gtk.Label GtkLabel26;
 
	
 
	private global::Gtk.Statusbar statusBar;
 

	
 
	protected virtual void Build ()
 
	{
 
		global::Stetic.Gui.Initialize (this);
 
		// Widget MainWindow
 
		this.UIManager = new global::Gtk.UIManager ();
 
		global::Gtk.ActionGroup w1 = new global::Gtk.ActionGroup ("Default");
 
		this.FileAction = new global::Gtk.Action ("FileAction", "_File", null, null);
 
		this.FileAction.ShortLabel = "_File";
 
		w1.Add (this.FileAction, "<Alt>f");
 
		this.HelpAction = new global::Gtk.Action ("HelpAction", "_Help", null, null);
 
		this.HelpAction.ShortLabel = "_Help";
 
		w1.Add (this.HelpAction, "<Alt>a");
 
		this.AboutAction = new global::Gtk.Action ("AboutAction", "_About...", null, null);
 
		this.AboutAction.ShortLabel = "_About...";
 
		w1.Add (this.AboutAction, "<Alt>a");
 
		this.NewProfileAction = new global::Gtk.Action ("NewProfileAction", "_New Profile...", null, null);
 
		this.NewProfileAction.ShortLabel = "_New Profile...";
 
		w1.Add (this.NewProfileAction, "<Alt>n");
 
		this.OpenProfileAction = new global::Gtk.Action ("OpenProfileAction", "_Open Profile...", null, null);
 
		this.OpenProfileAction.ShortLabel = "_Open Profile...";
 
		w1.Add (this.OpenProfileAction, "<Alt>o");
 
		this.ExitAction = new global::Gtk.Action ("ExitAction", "E_xit", null, null);
 
		this.ExitAction.ShortLabel = "E_xit";
 
		w1.Add (this.ExitAction, "<Alt>x");
 
		this.ExportForPracticalPaintAction = new global::Gtk.Action ("ExportForPracticalPaintAction", "Export for _PracticalPaint...", null, null);
 
		this.ExportForPracticalPaintAction.ShortLabel = "Export for _PracticalPaint...";
 
		w1.Add (this.ExportForPracticalPaintAction, null);
 
		this.WindowAction = new global::Gtk.Action ("WindowAction", "_Window", null, null);
 
		this.WindowAction.ShortLabel = "_Window";
 
		w1.Add (this.WindowAction, null);
 
		this.RunSimulatorAction = new global::Gtk.Action ("RunSimulatorAction", "_Run Simulator", null, null);
 
		this.RunSimulatorAction.ShortLabel = "_Run Simulator";
 
		w1.Add (this.RunSimulatorAction, null);
 
		this.DebugAction = new global::Gtk.Action ("DebugAction", "Debug", null, null);
 
		this.DebugAction.ShortLabel = "Debug";
 
		w1.Add (this.DebugAction, null);
 
		this.ScreenshotAction = new global::Gtk.Action ("ScreenshotAction", "Screenshot", null, null);
 
		this.ScreenshotAction.ShortLabel = "Screenshot";
 
		w1.Add (this.ScreenshotAction, null);
 
		this.UIManager.InsertActionGroup (w1, 0);
 
		this.AddAccelGroup (this.UIManager.AccelGroup);
 
		this.Name = "MainWindow";
 
		this.Title = "Desert Paint Lab";
 
		this.WindowPosition = ((global::Gtk.WindowPosition)(4));
 
		// Container child MainWindow.Gtk.Container+ContainerChild
 
		this.vbox1 = new global::Gtk.VBox ();
 
		this.vbox1.Name = "vbox1";
 
		// Container child vbox1.Gtk.Box+BoxChild
 
		this.UIManager.AddUiFromString ("<ui><menubar name='menubar1'><menu name='FileAction' action='FileAction'><menuitem name='NewProfileAction' action='NewProfileAction'/><menuitem name='OpenProfileAction' action='OpenProfileAction'/><menuitem name='ExportForPracticalPaintAction' action='ExportForPracticalPaintAction'/><separator/><menuitem name='ExitAction' action='ExitAction'/></menu><menu name='WindowAction' action='WindowAction'><menuitem name='RunSimulatorAction' action='RunSimulatorAction'/></menu><menu name='HelpAction' action='HelpAction'><menuitem name='AboutAction' action='AboutAction'/></menu><menu name='DebugAction' action='DebugAction'><menuitem name='ScreenshotAction' action='ScreenshotAction'/></menu></menubar></ui>");
 
		this.menubar1 = ((global::Gtk.MenuBar)(this.UIManager.GetWidget ("/menubar1")));
 
		this.menubar1.Name = "menubar1";
 
		this.vbox1.Add (this.menubar1);
 
		global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.menubar1]));
 
		w2.Position = 0;
 
		w2.Expand = false;
 
		w2.Fill = false;
 
		// Container child vbox1.Gtk.Box+BoxChild
 
		this.hbox1 = new global::Gtk.HBox ();
 
		this.hbox1.Name = "hbox1";
 
		this.hbox1.Spacing = 6;
 
		this.hbox1.BorderWidth = ((uint)(4));
 
		// Container child hbox1.Gtk.Box+BoxChild
 
		this.frame2 = new global::Gtk.Frame ();
 
		this.frame2.Name = "frame2";
 
		this.frame2.BorderWidth = ((uint)(4));
 
		// Container child frame2.Gtk.Container+ContainerChild
 
		this.GtkAlignment = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
 
		this.GtkAlignment.Name = "GtkAlignment";
 
		this.GtkAlignment.LeftPadding = ((uint)(6));
 
		this.GtkAlignment.RightPadding = ((uint)(6));
 
		// Container child GtkAlignment.Gtk.Container+ContainerChild
 
		this.vbox3 = new global::Gtk.VBox ();
 
		this.vbox3.Name = "vbox3";
 
		this.vbox3.Homogeneous = true;
 
		this.vbox3.Spacing = 6;
 
		// Container child vbox3.Gtk.Box+BoxChild
 
		this.hbox6 = new global::Gtk.HBox ();
 
		this.hbox6.Name = "hbox6";
 
		this.hbox6.Spacing = 6;
 
		// Container child hbox6.Gtk.Box+BoxChild
 
		this.label4 = new global::Gtk.Label ();
 
		this.label4.Name = "label4";
 
		this.label4.LabelProp = "Ingredient 1:";
 
		this.hbox6.Add (this.label4);
 
		global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox6 [this.label4]));
 
		w3.Position = 0;
 
		w3.Expand = false;
 
		w3.Fill = false;
 
		// Container child hbox6.Gtk.Box+BoxChild
 
		this.ingredient1ComboBox = global::Gtk.ComboBox.NewText ();
 
		this.ingredient1ComboBox.Name = "ingredient1ComboBox";
 
		this.hbox6.Add (this.ingredient1ComboBox);
 
		global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox6 [this.ingredient1ComboBox]));
 
		w4.Position = 1;
 
		this.vbox3.Add (this.hbox6);
 
		global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox6]));
 
		w5.Position = 0;
 
		w5.Expand = false;
 
		w5.Fill = false;
 
		// Container child vbox3.Gtk.Box+BoxChild
 
		this.hbox7 = new global::Gtk.HBox ();
 
		this.hbox7.Name = "hbox7";
 
		this.hbox7.Spacing = 6;
 
		// Container child hbox7.Gtk.Box+BoxChild
 
		this.label5 = new global::Gtk.Label ();
 
		this.label5.Name = "label5";
 
		this.label5.LabelProp = "Ingredient 2:";
 
		this.hbox7.Add (this.label5);
 
		global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox7 [this.label5]));
 
		w6.Position = 0;
 
		w6.Expand = false;
 
		w6.Fill = false;
 
		// Container child hbox7.Gtk.Box+BoxChild
 
		this.ingredient2ComboBox = global::Gtk.ComboBox.NewText ();
 
		this.ingredient2ComboBox.Name = "ingredient2ComboBox";
 
		this.hbox7.Add (this.ingredient2ComboBox);
 
		global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox7 [this.ingredient2ComboBox]));
 
		w7.Position = 1;
 
		this.vbox3.Add (this.hbox7);
 
		global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox7]));
 
		w8.Position = 1;
 
		w8.Expand = false;
 
		w8.Fill = false;
 
		// Container child vbox3.Gtk.Box+BoxChild
 
		this.hbox8 = new global::Gtk.HBox ();
 
		this.hbox8.Name = "hbox8";
 
		this.hbox8.Spacing = 6;
 
		// Container child hbox8.Gtk.Box+BoxChild
 
		this.label6 = new global::Gtk.Label ();
 
		this.label6.Name = "label6";
 
		this.label6.LabelProp = "Ingredient 3:";
 
		this.hbox8.Add (this.label6);
 
		global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.hbox8 [this.label6]));
 
		w9.Position = 0;
 
		w9.Expand = false;
 
		w9.Fill = false;
 
		// Container child hbox8.Gtk.Box+BoxChild
 
		this.ingredient3ComboBox = global::Gtk.ComboBox.NewText ();
 
		this.ingredient3ComboBox.Name = "ingredient3ComboBox";
 
		this.hbox8.Add (this.ingredient3ComboBox);
 
		global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.hbox8 [this.ingredient3ComboBox]));
 
		w10.Position = 1;
 
		this.vbox3.Add (this.hbox8);
 
		global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox8]));
 
		w11.Position = 2;
 
		w11.Expand = false;
 
		w11.Fill = false;
 
		this.GtkAlignment.Add (this.vbox3);
 
		this.frame2.Add (this.GtkAlignment);
 
		this.GtkLabel2 = new global::Gtk.Label ();
 
		this.GtkLabel2.Name = "GtkLabel2";
 
		this.GtkLabel2.LabelProp = "<b>Select Ingredients</b>";
 
		this.GtkLabel2.UseMarkup = true;
 
		this.frame2.LabelWidget = this.GtkLabel2;
 
		this.hbox1.Add (this.frame2);
 
		global::Gtk.Box.BoxChild w14 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.frame2]));
 
		w14.Position = 0;
 
		// Container child hbox1.Gtk.Box+BoxChild
 
		this.frame3 = new global::Gtk.Frame ();
 
		this.frame3.Name = "frame3";
 
		this.frame3.BorderWidth = ((uint)(4));
 
		// Container child frame3.Gtk.Container+ContainerChild
 
		this.GtkAlignment1 = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
 
		this.GtkAlignment1.Name = "GtkAlignment1";
 
		this.GtkAlignment1.LeftPadding = ((uint)(5));
 
		this.GtkAlignment1.TopPadding = ((uint)(5));
 
		this.GtkAlignment1.RightPadding = ((uint)(5));
 
		this.GtkAlignment1.BottomPadding = ((uint)(6));
 
		// Container child GtkAlignment1.Gtk.Container+ContainerChild
 
		this.vbox4 = new global::Gtk.VBox ();
 
		this.vbox4.WidthRequest = 120;
 
		this.vbox4.Name = "vbox4";
 
		this.vbox4.Spacing = 6;
 
		// Container child vbox4.Gtk.Box+BoxChild
 
		this.unmodifiedSwatch = new global::DesertPaintLab.PaintSwatch ();
 
		this.unmodifiedSwatch.Events = ((global::Gdk.EventMask)(256));
 
		this.unmodifiedSwatch.Name = "unmodifiedSwatch";
 
		this.vbox4.Add (this.unmodifiedSwatch);
 
		global::Gtk.Box.BoxChild w15 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.unmodifiedSwatch]));
 
		w15.Position = 0;
 
		// Container child vbox4.Gtk.Box+BoxChild
 
		this.captureButton = new global::Gtk.Button ();
 
		this.captureButton.WidthRequest = 100;
 
		this.captureButton.CanFocus = true;
 
		this.captureButton.Name = "captureButton";
 
		this.captureButton.UseUnderline = true;
 
		this.captureButton.Label = "Capture";
 
		this.vbox4.Add (this.captureButton);
 
		global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.captureButton]));
 
		w16.Position = 1;
 
		w16.Expand = false;
 
		w16.Fill = false;
 
		this.GtkAlignment1.Add (this.vbox4);
 
		this.frame3.Add (this.GtkAlignment1);
 
		this.GtkLabel25 = new global::Gtk.Label ();
 
		this.GtkLabel25.Name = "GtkLabel25";
 
		this.GtkLabel25.LabelProp = "<b>Unmodified</b>";
 
		this.GtkLabel25.UseMarkup = true;
 
		this.frame3.LabelWidget = this.GtkLabel25;
 
		this.hbox1.Add (this.frame3);
 
		global::Gtk.Box.BoxChild w19 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.frame3]));
 
		w19.Position = 1;
 
		w19.Expand = false;
 
		w19.Fill = false;
 
		// Container child hbox1.Gtk.Box+BoxChild
 
		this.frame4 = new global::Gtk.Frame ();
 
		this.frame4.Name = "frame4";
 
		this.frame4.BorderWidth = ((uint)(4));
 
		// Container child frame4.Gtk.Container+ContainerChild
 
		this.GtkAlignment2 = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
 
		this.GtkAlignment2.WidthRequest = 130;
 
		this.GtkAlignment2.Name = "GtkAlignment2";
 
		this.GtkAlignment2.LeftPadding = ((uint)(5));
 
		this.GtkAlignment2.TopPadding = ((uint)(5));
 
		this.GtkAlignment2.RightPadding = ((uint)(5));
 
		this.GtkAlignment2.BottomPadding = ((uint)(6));
 
		// Container child GtkAlignment2.Gtk.Container+ContainerChild
 
		this.vbox5 = new global::Gtk.VBox ();
 
		this.vbox5.WidthRequest = 120;
 
		this.vbox5.Name = "vbox5";
 
		this.vbox5.Spacing = 6;
 
		// Container child vbox5.Gtk.Box+BoxChild
 
		this.reactionSwatch = new global::DesertPaintLab.PaintSwatch ();
 
		this.reactionSwatch.Events = ((global::Gdk.EventMask)(256));
 
		this.reactionSwatch.Name = "reactionSwatch";
 
		this.vbox5.Add (this.reactionSwatch);
 
		global::Gtk.Box.BoxChild w20 = ((global::Gtk.Box.BoxChild)(this.vbox5 [this.reactionSwatch]));
 
		w20.Position = 0;
 
		// Container child vbox5.Gtk.Box+BoxChild
 
		this.saveButton = new global::Gtk.Button ();
 
		this.saveButton.WidthRequest = 100;
 
		this.saveButton.CanFocus = true;
 
		this.saveButton.Name = "saveButton";
 
		this.saveButton.UseUnderline = true;
 
		this.saveButton.Label = "Record";
 
		this.vbox5.Add (this.saveButton);
 
		global::Gtk.Box.BoxChild w21 = ((global::Gtk.Box.BoxChild)(this.vbox5 [this.saveButton]));
 
		w21.Position = 1;
 
		w21.Expand = false;
 
		w21.Fill = false;
 
		this.GtkAlignment2.Add (this.vbox5);
 
		this.frame4.Add (this.GtkAlignment2);
 
		this.GtkLabel26 = new global::Gtk.Label ();
 
		this.GtkLabel26.Name = "GtkLabel26";
 
		this.GtkLabel26.LabelProp = "<b>Reaction</b>";
 
		this.GtkLabel26.UseMarkup = true;
 
		this.frame4.LabelWidget = this.GtkLabel26;
 
		this.hbox1.Add (this.frame4);
 
		global::Gtk.Box.BoxChild w24 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.frame4]));
 
		w24.Position = 2;
 
		w24.Expand = false;
 
		w24.Fill = false;
 
		this.vbox1.Add (this.hbox1);
 
		global::Gtk.Box.BoxChild w25 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox1]));
 
		w25.Position = 1;
 
		// Container child vbox1.Gtk.Box+BoxChild
 
		this.statusBar = new global::Gtk.Statusbar ();
 
		this.statusBar.Name = "statusBar";
 
		this.statusBar.Spacing = 6;
 
		this.vbox1.Add (this.statusBar);
 
		global::Gtk.Box.BoxChild w26 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.statusBar]));
 
		w26.Position = 2;
 
		w26.Expand = false;
 
		w26.Fill = false;
 
		this.Add (this.vbox1);
 
		if ((this.Child != null)) {
 
			this.Child.ShowAll ();
 
		}
 
		this.DefaultWidth = 629;
 
		this.DefaultHeight = 265;
 
		this.Show ();
 
		this.DeleteEvent += new global::Gtk.DeleteEventHandler (this.OnDeleteEvent);
 
		this.AboutAction.Activated += new global::System.EventHandler (this.OnAbout);
 
		this.NewProfileAction.Activated += new global::System.EventHandler (this.OnNewProfile);
 
		this.OpenProfileAction.Activated += new global::System.EventHandler (this.OnOpenProfile);
 
		this.ExitAction.Activated += new global::System.EventHandler (this.OnMenuExit);
 
		this.ExportForPracticalPaintAction.Activated += new global::System.EventHandler (this.OnExport);
 
		this.RunSimulatorAction.Activated += new global::System.EventHandler (this.RunSimulator);
 
		this.ScreenshotAction.Activated += new global::System.EventHandler (this.OnDebugScreenshot);
 
		this.ingredient1ComboBox.Changed += new global::System.EventHandler (this.OnChangedIngredient1);
 
		this.ingredient2ComboBox.Changed += new global::System.EventHandler (this.OnChangedIngredient2);
 
		this.ingredient3ComboBox.Changed += new global::System.EventHandler (this.OnChangedIngredient3);
 
		this.captureButton.Clicked += new global::System.EventHandler (this.OnCaptureButton);
 
		this.saveButton.Clicked += new global::System.EventHandler (this.OnSaveButton);
 
	}
 
}
gtk-gui/generated.cs
Show inline comments
 

 
// This file has been generated by the GUI designer. Do not modify.
 
namespace Stetic
 
{
 
	internal class Gui
 
	{
 
		private static bool initialized;
 

 
		internal static void Initialize (Gtk.Widget iconRenderer)
 
		{
 
			if ((Stetic.Gui.initialized == false)) {
 
				Stetic.Gui.initialized = true;
 
			}
 
		}
 
	}
 

 
	internal class BinContainer
 
	{
 
		private Gtk.Widget child;
 
		
 
		private Gtk.UIManager uimanager;
 

 
		public static BinContainer Attach (Gtk.Bin bin)
 
		{
 
			BinContainer bc = new BinContainer ();
 
			bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
 
			bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
 
			bin.Added += new Gtk.AddedHandler (bc.OnAdded);
 
			return bc;
 
		}
 

 
		private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
 
		{
 
			if ((this.child != null)) {
 
				args.Requisition = this.child.SizeRequest ();
 
			}
 
		}
 

 
		private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
 
		{
 
			if ((this.child != null)) {
 
				this.child.Allocation = args.Allocation;
 
			}
 
		}
 

 
		private void OnAdded (object sender, Gtk.AddedArgs args)
 
		{
 
			this.child = args.Widget;
 
		}
 

 
		public void SetUiManager (Gtk.UIManager uim)
 
		{
 
			this.uimanager = uim;
 
			this.child.Realized += new System.EventHandler (this.OnRealized);
 
		}
 

 
		private void OnRealized (object sender, System.EventArgs args)
 
		{
 
			if ((this.uimanager != null)) {
 
				Gtk.Widget w;
 
				w = this.child.Toplevel;
 
				if (((w != null)
 
				    && typeof(Gtk.Window).IsInstanceOfType (w))) {
 
					((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
 
					this.uimanager = null;
 
				}
 
			}
 
		}
 
	}
 

 
	internal class IconLoader
 
	{
 
		public static Gdk.Pixbuf LoadIcon (Gtk.Widget widget, string name, Gtk.IconSize size)
 
		{
 
			Gdk.Pixbuf res = widget.RenderIcon (name, size, null);
 
			if ((res != null)) {
 
				return res;
 
			} else {
 
				int sz;
 
				int sy;
 
				global::Gtk.Icon.SizeLookup (size, out sz, out sy);
 
				try {
 
					return Gtk.IconTheme.Default.LoadIcon (name, sz, 0);
 
				} catch (System.Exception) {
 
					if ((name != "gtk-missing-image")) {
 
						return Stetic.IconLoader.LoadIcon (widget, "gtk-missing-image", size);
 
					} else {
 
						Gdk.Pixmap pmap = new Gdk.Pixmap (Gdk.Screen.Default.RootWindow, sz, sz);
 
						Gdk.GC gc = new Gdk.GC (pmap);
 
						gc.RgbFgColor = new Gdk.Color (255, 255, 255);
 
						pmap.DrawRectangle (gc, true, 0, 0, sz, sz);
 
						gc.RgbFgColor = new Gdk.Color (0, 0, 0);
 
						pmap.DrawRectangle (gc, false, 0, 0, (sz - 1), (sz - 1));
 
						gc.SetLineAttributes (3, Gdk.LineStyle.Solid, Gdk.CapStyle.Round, Gdk.JoinStyle.Round);
 
						gc.RgbFgColor = new Gdk.Color (255, 0, 0);
 
						pmap.DrawLine (gc, (sz / 4), (sz / 4), ((sz - 1)
 
						- (sz / 4)), ((sz - 1)
 
						- (sz / 4)));
 
						pmap.DrawLine (gc, ((sz - 1)
 
						- (sz / 4)), (sz / 4), (sz / 4), ((sz - 1)
 
						- (sz / 4)));
 
						return Gdk.Pixbuf.FromDrawable (pmap, pmap.Colormap, 0, 0, 0, 0, sz, sz);
 
					}
 
				}
 
			}
 
		}
 
	}
 

 
	internal class ActionGroups
 
	{
 
		public static Gtk.ActionGroup GetActionGroup (System.Type type)
 
		{
 
			return Stetic.ActionGroups.GetActionGroup (type.FullName);
 
		}
 

 
		public static Gtk.ActionGroup GetActionGroup (string name)
 
		{
 
			return null;
 
		}
 
	}
 
}
 

	
 
// This file has been generated by the GUI designer. Do not modify.
 
namespace Stetic
 
{
 
	internal class Gui
 
	{
 
		private static bool initialized;
 

	
 
		internal static void Initialize (Gtk.Widget iconRenderer)
 
		{
 
			if ((Stetic.Gui.initialized == false)) {
 
				Stetic.Gui.initialized = true;
 
			}
 
		}
 
	}
 

	
 
	internal class BinContainer
 
	{
 
		private Gtk.Widget child;
 
		
 
		private Gtk.UIManager uimanager;
 

	
 
		public static BinContainer Attach (Gtk.Bin bin)
 
		{
 
			BinContainer bc = new BinContainer ();
 
			bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
 
			bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
 
			bin.Added += new Gtk.AddedHandler (bc.OnAdded);
 
			return bc;
 
		}
 

	
 
		private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
 
		{
 
			if ((this.child != null)) {
 
				args.Requisition = this.child.SizeRequest ();
 
			}
 
		}
 

	
 
		private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
 
		{
 
			if ((this.child != null)) {
 
				this.child.Allocation = args.Allocation;
 
			}
 
		}
 

	
 
		private void OnAdded (object sender, Gtk.AddedArgs args)
 
		{
 
			this.child = args.Widget;
 
		}
 

	
 
		public void SetUiManager (Gtk.UIManager uim)
 
		{
 
			this.uimanager = uim;
 
			this.child.Realized += new System.EventHandler (this.OnRealized);
 
		}
 

	
 
		private void OnRealized (object sender, System.EventArgs args)
 
		{
 
			if ((this.uimanager != null)) {
 
				Gtk.Widget w;
 
				w = this.child.Toplevel;
 
				if (((w != null)
 
				    && typeof(Gtk.Window).IsInstanceOfType (w))) {
 
					((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
 
					this.uimanager = null;
 
				}
 
			}
 
		}
 
	}
 

	
 
	internal class IconLoader
 
	{
 
		public static Gdk.Pixbuf LoadIcon (Gtk.Widget widget, string name, Gtk.IconSize size)
 
		{
 
			Gdk.Pixbuf res = widget.RenderIcon (name, size, null);
 
			if ((res != null)) {
 
				return res;
 
			} else {
 
				int sz;
 
				int sy;
 
				global::Gtk.Icon.SizeLookup (size, out sz, out sy);
 
				try {
 
					return Gtk.IconTheme.Default.LoadIcon (name, sz, 0);
 
				} catch (System.Exception) {
 
					if ((name != "gtk-missing-image")) {
 
						return Stetic.IconLoader.LoadIcon (widget, "gtk-missing-image", size);
 
					} else {
 
						Gdk.Pixmap pmap = new Gdk.Pixmap (Gdk.Screen.Default.RootWindow, sz, sz);
 
						Gdk.GC gc = new Gdk.GC (pmap);
 
						gc.RgbFgColor = new Gdk.Color (255, 255, 255);
 
						pmap.DrawRectangle (gc, true, 0, 0, sz, sz);
 
						gc.RgbFgColor = new Gdk.Color (0, 0, 0);
 
						pmap.DrawRectangle (gc, false, 0, 0, (sz - 1), (sz - 1));
 
						gc.SetLineAttributes (3, Gdk.LineStyle.Solid, Gdk.CapStyle.Round, Gdk.JoinStyle.Round);
 
						gc.RgbFgColor = new Gdk.Color (255, 0, 0);
 
						pmap.DrawLine (gc, (sz / 4), (sz / 4), ((sz - 1)
 
						- (sz / 4)), ((sz - 1)
 
						- (sz / 4)));
 
						pmap.DrawLine (gc, ((sz - 1)
 
						- (sz / 4)), (sz / 4), (sz / 4), ((sz - 1)
 
						- (sz / 4)));
 
						return Gdk.Pixbuf.FromDrawable (pmap, pmap.Colormap, 0, 0, 0, 0, sz, sz);
 
					}
 
				}
 
			}
 
		}
 
	}
 

	
 
	internal class ActionGroups
 
	{
 
		public static Gtk.ActionGroup GetActionGroup (System.Type type)
 
		{
 
			return Stetic.ActionGroups.GetActionGroup (type.FullName);
 
		}
 

	
 
		public static Gtk.ActionGroup GetActionGroup (string name)
 
		{
 
			return null;
 
		}
 
	}
 
}
gtk-gui/gui.stetic
Show inline comments
...
 
@@ -64,12 +64,23 @@
 
      <action id="RunSimulatorAction">
 
        <property name="Type">Action</property>
 
        <property name="Label" translatable="yes">_Run Simulator</property>
 
        <property name="ShortLabel" translatable="yes">_Run Simulator</property>
 
        <signal name="Activated" handler="RunSimulator" />
 
      </action>
 
      <action id="DebugAction">
 
        <property name="Type">Action</property>
 
        <property name="Label" translatable="yes">Debug</property>
 
        <property name="ShortLabel" translatable="yes">Debug</property>
 
      </action>
 
      <action id="ScreenshotAction">
 
        <property name="Type">Action</property>
 
        <property name="Label" translatable="yes">Screenshot</property>
 
        <property name="ShortLabel" translatable="yes">Screenshot</property>
 
        <signal name="Activated" handler="OnDebugScreenshot" />
 
      </action>
 
    </action-group>
 
    <property name="MemberName" />
 
    <property name="Title" translatable="yes">Desert Paint Lab</property>
 
    <property name="WindowPosition">CenterOnParent</property>
 
    <signal name="DeleteEvent" handler="OnDeleteEvent" />
 
    <child>
...
 
@@ -89,12 +100,15 @@
 
              <node type="Menu" action="WindowAction">
 
                <node type="Menuitem" action="RunSimulatorAction" />
 
              </node>
 
              <node type="Menu" action="HelpAction">
 
                <node type="Menuitem" action="AboutAction" />
 
              </node>
 
              <node type="Menu" action="DebugAction">
 
                <node type="Menuitem" action="ScreenshotAction" />
 
              </node>
 
            </node>
 
          </widget>
 
          <packing>
 
            <property name="Position">0</property>
 
            <property name="AutoSize">True</property>
 
            <property name="Expand">False</property>
0 comments (0 inline, 0 general)