diff --git a/Build/Configurations/Includes/Boom_misc.cfg b/Build/Configurations/Includes/Boom_misc.cfg
index f870b6fcd491574c825d0708c3c23acecaa0f339..2b4c305309503fbdf9e16443f283b3fa90e0e1e4 100644
--- a/Build/Configurations/Includes/Boom_misc.cfg
+++ b/Build/Configurations/Includes/Boom_misc.cfg
@@ -32,6 +32,30 @@ thingflagstranslation
 	64 = "!coop";
 }
 
+// How thing flags should be compared (for the stuck thing error check)
+thingflagscompare
+{
+    skills {
+        1;
+        2;
+        4;
+    }
+
+    gamemodes {
+        16 {
+            invert = true;
+        }
+
+        32 {
+            invert = true;
+        }
+
+        64 {
+            invert = true;
+        }
+    }
+}
+
 
 /*
 TEXTURES AND FLAT SOURCES
diff --git a/Build/Configurations/Includes/Doom_misc.cfg b/Build/Configurations/Includes/Doom_misc.cfg
index 1fd5e6d2766d726458d65bc9ea45ec86255dfdfb..2ff859cc285cdb2474d21f0ab74833ab53c12896 100644
--- a/Build/Configurations/Includes/Doom_misc.cfg
+++ b/Build/Configurations/Includes/Doom_misc.cfg
@@ -45,6 +45,23 @@ defaultthingflags
 }
 
 
+// How thing flags should be compared (for the stuck thing error check)
+thingflagscompare
+{
+	skills {
+		1;
+		2;
+		4;
+	}
+
+	gamemodes {
+		16 {
+			comparemethod = "equal";
+		}
+	}
+}
+
+
 // Mask for the thing flags which indicates the options
 // that make the same thing appear in the same modes
 thingflagsmasks
diff --git a/Build/Configurations/Includes/Hexen_misc.cfg b/Build/Configurations/Includes/Hexen_misc.cfg
index a65be8f9fa00d031654652a335898da6f179af41..e6124b42b0cdd872ae67ab2242b457dccef9a4f6 100644
--- a/Build/Configurations/Includes/Hexen_misc.cfg
+++ b/Build/Configurations/Includes/Hexen_misc.cfg
@@ -43,6 +43,27 @@ defaultthingflags
 	1024;
 }
 
+// How thing flags should be compared (for the stuck thing error check)
+thingflagscompare
+{
+	skills {
+		1;
+		2;
+		4;
+	}
+
+	classes {
+		32;
+		64;
+		128;
+	}
+
+	gamemodes {
+		256;
+		512;
+		1024;
+	}
+}
 
 // Mask for the thing flags which indicates the options
 // that make the same thing appear in the same modes
diff --git a/Build/Configurations/Includes/UDMF_misc.cfg b/Build/Configurations/Includes/UDMF_misc.cfg
index 9a67ed1c53f3aa2d84835c879188bba81ab313bc..8bbb0d4b87fd53f1a607e93a13da1331e0dca238 100644
--- a/Build/Configurations/Includes/UDMF_misc.cfg
+++ b/Build/Configurations/Includes/UDMF_misc.cfg
@@ -36,6 +36,31 @@ defaultthingflags
 }
 
 
+// How thing flags should be compared (for the stuck thing error check)
+thingflagscompare
+{
+	skills {
+		skill1;
+		skill2;
+		skill3;
+		skill4;
+		skill5;
+	}
+
+	gamemodes {
+		single;
+		dm;
+		coop;
+	}
+
+	classes {
+		class1;
+		class2;
+		class3;
+	}
+}
+
+
 linedefflags
 {
 	blocking = "Impassable";
diff --git a/Build/Configurations/Includes/ZDoom_common.cfg b/Build/Configurations/Includes/ZDoom_common.cfg
index 5e0a0a047b3c90de55dc9242f04af18041349b42..8eef67fca523bbf2038bcd9ceac1be703d319384 100644
--- a/Build/Configurations/Includes/ZDoom_common.cfg
+++ b/Build/Configurations/Includes/ZDoom_common.cfg
@@ -357,6 +357,14 @@ mapformat_udmf
 		include("UDMF_misc.cfg", "thingflags");
 		include("ZDoom_misc.cfg", "thingflags_udmf");
 	}
+	
+
+        // How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	        include("UDMF_misc.cfg", "thingflagscompare");
+	        include("ZDoom_misc.cfg", "thingflagscompare_udmf");
+        }
 
 	// Things flags masks
 	include("Hexen_misc.cfg", "thingflagsmasks");
@@ -401,6 +409,12 @@ game_doom
 	{
 		include("Doom_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	    include("Doom_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
@@ -440,6 +454,12 @@ game_heretic
 	{
 		include("Doom_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	        include("Hexen_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
@@ -481,6 +501,12 @@ game_hexen
 		include("Hexen_misc.cfg", "thingsfilters");
 	}
 
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	        include("Hexen_misc.cfg", "thingflagscompare");
+        }
+
 	// Default texture sets
 	// (these are not required, but useful for new users)
 	texturesets
@@ -520,6 +546,12 @@ game_strife
 	{
 		include("Strife_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	    include("Doom_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
@@ -558,6 +590,12 @@ game_chex
 	{
 		include("Doom_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	    include("Doom_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
@@ -596,6 +634,12 @@ game_chex3
 	{
 		include("Doom_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	    include("Doom_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
@@ -634,6 +678,12 @@ game_harmony
 	{
 		include("Doom_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	    include("Doom_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
@@ -672,6 +722,12 @@ game_action2
 	{
 		include("Doom_misc.cfg", "thingsfilters");
 	}
+	
+	// How to compare thing flags (for the stuck things error checker)
+        thingflagscompare
+        {
+	    include("Doom_misc.cfg", "thingflagscompare");
+        }
 
 	// Default texture sets
 	// (these are not required, but useful for new users)
diff --git a/Build/Configurations/Includes/ZDoom_misc.cfg b/Build/Configurations/Includes/ZDoom_misc.cfg
index b8bd01e31e9a6ba68b97bd405f1562ef6ee59bb2..0c2b0bd0b6d8ce7053b0be006188bd821d3f4d99 100644
--- a/Build/Configurations/Includes/ZDoom_misc.cfg
+++ b/Build/Configurations/Includes/ZDoom_misc.cfg
@@ -125,6 +125,23 @@ defaultthingflags_udmf
 	class8;
 }
 
+// How thing flags should be compared (for the stuck thing error check)
+thingflagscompare_udmf
+{
+	skills {
+		skill6;
+		skill7;
+		skill8;
+	}
+
+	classes {
+		class4;
+		class5;
+		class6;
+		class7;
+		class8;
+	}
+}
 
 // Default sector brightness levels
 sectorbrightness
diff --git a/Build/Scripting/ZDoom_DECORATE.cfg b/Build/Scripting/ZDoom_DECORATE.cfg
index ce8c14588c744c6714fed6fb87401f021b2b0303..cdbc406361c890be98e190b625608c56ff64d1d1 100644
--- a/Build/Scripting/ZDoom_DECORATE.cfg
+++ b/Build/Scripting/ZDoom_DECORATE.cfg
@@ -160,6 +160,7 @@ keywords
   A_SetShootable = "A_SetShootable";
   A_SetSolid = "A_SetSolid";
   A_SetSpecial = "A_SetSpecial(int special, int arg0, int arg1, int arg2, int arg3, int arg4)";
+  A_SetTics = "A_SetTics(int tics)";
   A_SetTranslucent = "A_SetTranslucent(float alpha, int mode)";
   A_SetUserVar = "A_SetUserVar(string name, int value)";
   A_TransferPointer = "A_TransferPointer(pointer source, pointer recipient, pointer sourcefield, pointer recipientfield[, int flags])";
diff --git a/Source/Core/Builder.csproj b/Source/Core/Builder.csproj
index bcd94842490d9cb3a19bfb22dc67571582f74feb..29f2a4e5a9b458e0742f583472d44e83757afae7 100644
--- a/Source/Core/Builder.csproj
+++ b/Source/Core/Builder.csproj
@@ -657,6 +657,7 @@
     <Compile Include="Config\AllTexturesSet.cs" />
     <Compile Include="Config\FlagTranslation.cs" />
     <Compile Include="Config\PasteOptions.cs" />
+    <Compile Include="Config\ThingsFlagsCompare.cs" />
     <Compile Include="Controls\ButtonsNumericTextboxDesigner.cs" />
     <Compile Include="Controls\Docker.cs" />
     <Compile Include="Controls\DockersControl.cs">
diff --git a/Source/Core/Builder.sln b/Source/Core/Builder.sln
index 70716be92af5024b736e7dc399e83bcdb9f3cabb..69e66fa1a83a1b672d4dc842f4dd4f8bad8cb86d 100644
--- a/Source/Core/Builder.sln
+++ b/Source/Core/Builder.sln
@@ -7,10 +7,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BuilderModes", "..\Plugins\
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GZDoomEditing", "..\Plugins\GZDoomEditing\GZDoomEditing.csproj", "{760A9BC7-CB73-4C36-858B-994C14996FCD}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UDMFControls", "..\Plugins\UMDFControls\UDMFControls.csproj", "{2D11C828-295C-463A-8545-CA1AD6D51518}"
-EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ColorPicker", "..\Plugins\ColorPicker\ColorPicker.csproj", "{A4761900-0EA3-4FE4-A919-847FD5080EFC}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UDMFControls", "..\Plugins\UMDFControls\UDMFControls.csproj", "{2D11C828-295C-463A-8545-CA1AD6D51518}"
+EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TagExplorer", "..\Plugins\TagExplorer\TagExplorer.csproj", "{BE7917F3-E6FE-4D5B-8FA9-B8E7668AC731}"
 EndProject
 Global
@@ -53,16 +53,6 @@ Global
 		{760A9BC7-CB73-4C36-858B-994C14996FCD}.Release|Mixed Platforms.Build.0 = Release|x86
 		{760A9BC7-CB73-4C36-858B-994C14996FCD}.Release|x86.ActiveCfg = Release|x86
 		{760A9BC7-CB73-4C36-858B-994C14996FCD}.Release|x86.Build.0 = Release|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|Any CPU.ActiveCfg = Debug|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|Mixed Platforms.Build.0 = Debug|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|x86.ActiveCfg = Debug|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|x86.Build.0 = Debug|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|Any CPU.ActiveCfg = Release|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|Mixed Platforms.ActiveCfg = Release|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|Mixed Platforms.Build.0 = Release|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|x86.ActiveCfg = Release|x86
-		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|x86.Build.0 = Release|x86
 		{A4761900-0EA3-4FE4-A919-847FD5080EFC}.Debug|Any CPU.ActiveCfg = Debug|x86
 		{A4761900-0EA3-4FE4-A919-847FD5080EFC}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
 		{A4761900-0EA3-4FE4-A919-847FD5080EFC}.Debug|Mixed Platforms.Build.0 = Debug|x86
@@ -73,6 +63,16 @@ Global
 		{A4761900-0EA3-4FE4-A919-847FD5080EFC}.Release|Mixed Platforms.Build.0 = Release|x86
 		{A4761900-0EA3-4FE4-A919-847FD5080EFC}.Release|x86.ActiveCfg = Release|x86
 		{A4761900-0EA3-4FE4-A919-847FD5080EFC}.Release|x86.Build.0 = Release|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|Any CPU.ActiveCfg = Debug|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|Mixed Platforms.Build.0 = Debug|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|x86.ActiveCfg = Debug|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Debug|x86.Build.0 = Debug|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|Any CPU.ActiveCfg = Release|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|Mixed Platforms.ActiveCfg = Release|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|Mixed Platforms.Build.0 = Release|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|x86.ActiveCfg = Release|x86
+		{2D11C828-295C-463A-8545-CA1AD6D51518}.Release|x86.Build.0 = Release|x86
 		{BE7917F3-E6FE-4D5B-8FA9-B8E7668AC731}.Debug|Any CPU.ActiveCfg = Debug|x86
 		{BE7917F3-E6FE-4D5B-8FA9-B8E7668AC731}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
 		{BE7917F3-E6FE-4D5B-8FA9-B8E7668AC731}.Debug|Mixed Platforms.Build.0 = Debug|x86
diff --git a/Source/Core/Config/GameConfiguration.cs b/Source/Core/Config/GameConfiguration.cs
index 17d6996fa1f0f5217b120430b7df8d00b19f60ea..dfffd9a13cd6bdfc89a398b260545aedfcea5fa8 100644
--- a/Source/Core/Config/GameConfiguration.cs
+++ b/Source/Core/Config/GameConfiguration.cs
@@ -103,6 +103,7 @@ namespace CodeImp.DoomBuilder.Config
 		private List<ThingCategory> thingcategories;
 		private Dictionary<int, ThingTypeInfo> things;
 		private List<FlagTranslation> thingflagstranslation;
+		private List<ThingFlagsCompare> thingflagscompare;
 		
 		// Linedefs
 		private Dictionary<string, string> linedefflags;
@@ -196,6 +197,7 @@ namespace CodeImp.DoomBuilder.Config
 		public ICollection<string> DefaultThingFlags { get { return defaultthingflags; } }
 		public IDictionary<string, string> ThingFlags { get { return thingflags; } }
 		public List<FlagTranslation> ThingFlagsTranslation { get { return thingflagstranslation; } }
+		public List<ThingFlagsCompare> ThingFlagsCompare { get { return thingflagscompare; } }
 		
 		// Linedefs
 		public IDictionary<string, string> LinedefFlags { get { return linedefflags; } }
@@ -263,6 +265,7 @@ namespace CodeImp.DoomBuilder.Config
 			this.thingflagstranslation = new List<FlagTranslation>();
 			this.linedefflagstranslation = new List<FlagTranslation>();
 			this.thingfilters = new List<ThingsFilter>();
+			this.thingflagscompare = new List<ThingFlagsCompare>();
 			this.brightnesslevels = new StepsList();
 			this.makedoorflags = new Dictionary<string, bool>();
 			
@@ -371,6 +374,7 @@ namespace CodeImp.DoomBuilder.Config
 		{
 			foreach(ThingCategory tc in thingcategories) tc.Dispose();
 			foreach(LinedefActionCategory ac in actioncategories) ac.Dispose();
+			foreach (ThingFlagsCompare tfc in thingflagscompare) tfc.Dispose();
 		}
 		
 		#endregion
@@ -712,6 +716,18 @@ namespace CodeImp.DoomBuilder.Config
 			dic = cfg.ReadSetting("thingflagstranslation", new Hashtable());
 			foreach(DictionaryEntry de in dic)
 				thingflagstranslation.Add(new FlagTranslation(de));
+				
+			// Get thing compare flag info (for the stuck thing error checker
+	  	        dic = cfg.ReadSetting("thingflagscompare", new Hashtable());
+	  	        foreach (DictionaryEntry de in dic)
+	  	        {
+	  	                IDictionary gdic = cfg.ReadSetting("thingflagscompare." + de.Key, new Hashtable());
+
+	  	                foreach (DictionaryEntry gde in gdic)
+	  	                {
+	  	                      thingflagscompare.Add(new ThingFlagsCompare(cfg, de.Key.ToString(), gde.Key.ToString()));
+	  	                }
+	  	        }
 
 			// Sort the translation flags, because they must be compared highest first!
 			thingflagstranslation.Sort();
diff --git a/Source/Core/Config/ThingsFlagsCompare.cs b/Source/Core/Config/ThingsFlagsCompare.cs
new file mode 100644
index 0000000000000000000000000000000000000000..544688642b6841dbf9d2cf98890b050493f0a76a
--- /dev/null
+++ b/Source/Core/Config/ThingsFlagsCompare.cs
@@ -0,0 +1,142 @@
+
+#region ================== Copyright (c) 2007 Pascal vd Heiden
+
+/*
+ * Copyright (c) 2007 Pascal vd Heiden, www.codeimp.com
+ * This program is released under GNU General Public License
+ * 
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ * 
+ */
+
+#endregion
+
+#region ================== Namespaces
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Text;
+using CodeImp.DoomBuilder.IO;
+using CodeImp.DoomBuilder.Data;
+using System.IO;
+using System.Diagnostics;
+using System.Windows.Forms;
+using CodeImp.DoomBuilder.Rendering;
+using CodeImp.DoomBuilder.Map;
+
+#endregion
+
+namespace CodeImp.DoomBuilder.Config
+{
+	public class ThingFlagsCompare
+	{
+		public enum CompareMethod
+		{
+			Equal,
+			And
+		};
+
+		#region ================== Constants
+
+		#endregion
+
+		#region ================== Variables
+
+		private string flag;
+		private CompareMethod comparemethod;
+		private bool invert;
+		private string group;
+
+		// Disposing
+		private bool isdisposed = false;
+
+		#endregion
+
+		#region ================== Properties
+
+		public string Flag { get { return flag; } }
+		public string Group { get { return group; } }
+		public bool IsDisposed { get { return isdisposed; } }
+
+		#endregion
+
+		#region ================== Constructor / Disposer
+
+		// Constructor
+		public ThingFlagsCompare(Configuration cfg, string group, string flag)
+		{
+			string cfgpath = "thingflagscompare." + group + "." + flag;
+			this.flag = flag;
+			this.group = group;
+
+			string cm = cfg.ReadSetting(cfgpath + ".comparemethod", "and");
+
+			switch (cm)
+			{
+				default:
+					General.ErrorLogger.Add(ErrorType.Warning, "Unrecognized value \"" + cm + "\" for comparemethod in " + cfgpath + " in game configuration " + cfg.ReadSetting("game", "<unnamed game>") + ". Defaulting to \"and\".");
+					goto case "and";
+				case "and":
+					comparemethod = CompareMethod.And;
+					break;
+				case "equal":
+					comparemethod = CompareMethod.Equal;
+					break;
+			}
+
+			invert = cfg.ReadSetting(cfgpath + ".invert", false);
+			
+			// We have no destructor
+			GC.SuppressFinalize(this);
+		}
+
+		// Disposer
+		internal void Dispose()
+		{
+			// Not already disposed?
+			if (!isdisposed)
+			{
+				// Done
+				isdisposed = true;
+			}
+		}
+
+		#endregion
+
+		#region ================== Methods
+
+		// Compares the flag of the two things.
+		// Returns:
+		// -1 if the flag does not overlap
+		//	0 if the flag should be ignored
+		//	1 if the flag overlaps
+		public int Compare(Thing t1, Thing t2)
+		{
+			bool t1flag;
+			bool t2flag;
+
+			// Check if the flags exist
+			if (!t1.Flags.ContainsKey(flag) || !t2.Flags.ContainsKey(flag))
+				return 0;
+
+			// tag flag inversion into account
+			t1flag = invert ? !t1.Flags[flag] : t1.Flags[flag];
+			t2flag = invert ? !t2.Flags[flag] : t2.Flags[flag];
+
+			if (comparemethod == CompareMethod.And && (t1flag && t2flag))
+				return 1;
+			else if (comparemethod == CompareMethod.Equal && (t1flag == t2flag))
+				return 1;
+	
+			return 0;
+		}
+
+		#endregion
+	}
+}
+
diff --git a/Source/Core/GZBuilder/GZGeneral.cs b/Source/Core/GZBuilder/GZGeneral.cs
index 81a99188987434f029314cb8e0a738c6b60ceeb8..ecb79dc7a602bef8b044ded5ba163d6dd05d201c 100644
--- a/Source/Core/GZBuilder/GZGeneral.cs
+++ b/Source/Core/GZBuilder/GZGeneral.cs
@@ -33,7 +33,7 @@ namespace CodeImp.DoomBuilder.GZBuilder
 
         //version
         public const float Version = 1.12f;
-        public const char Revision = 'e';
+        public const char Revision = 'f';
 
         //debug console
 #if DEBUG
diff --git a/Source/Core/Windows/ConfigForm.Designer.cs b/Source/Core/Windows/ConfigForm.Designer.cs
index 9fba8f4b61156e50cd8596d922939def3fe1d84b..b8bc3dd0e0081d6d54918ecfef239506e95061f8 100644
--- a/Source/Core/Windows/ConfigForm.Designer.cs
+++ b/Source/Core/Windows/ConfigForm.Designer.cs
@@ -28,672 +28,671 @@ namespace CodeImp.DoomBuilder.Windows
 		/// </summary>
 		private void InitializeComponent()
 		{
-			this.components = new System.ComponentModel.Container();
-			System.Windows.Forms.Label label5;
-			System.Windows.Forms.Label label6;
-			System.Windows.Forms.Label label3;
-			System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigForm));
-			System.Windows.Forms.Label label2;
-			System.Windows.Forms.Label label7;
-			System.Windows.Forms.Label label9;
-			System.Windows.Forms.Label label1;
-			System.Windows.Forms.Label label8;
-			System.Windows.Forms.Label label4;
-			System.Windows.Forms.Label label10;
-			this.labelparameters = new System.Windows.Forms.Label();
-			this.cancel = new System.Windows.Forms.Button();
-			this.apply = new System.Windows.Forms.Button();
-			this.tabs = new System.Windows.Forms.TabControl();
-			this.tabresources = new System.Windows.Forms.TabPage();
-			this.configdata = new CodeImp.DoomBuilder.Controls.ResourceListEditor();
-			this.tabnodebuilder = new System.Windows.Forms.TabPage();
-			this.nodebuildertest = new System.Windows.Forms.ComboBox();
-			this.nodebuildersave = new System.Windows.Forms.ComboBox();
-			this.tabtesting = new System.Windows.Forms.TabPage();
-			this.shortpaths = new System.Windows.Forms.CheckBox();
-			this.customparameters = new System.Windows.Forms.CheckBox();
-			this.skill = new CodeImp.DoomBuilder.Controls.ActionSelectorControl();
-			this.browsetestprogram = new System.Windows.Forms.Button();
-			this.noresultlabel = new System.Windows.Forms.Label();
-			this.testresult = new System.Windows.Forms.TextBox();
-			this.labelresult = new System.Windows.Forms.Label();
-			this.testparameters = new System.Windows.Forms.TextBox();
-			this.testapplication = new System.Windows.Forms.TextBox();
-			this.tabtextures = new System.Windows.Forms.TabPage();
-			this.listtextures = new System.Windows.Forms.ListView();
-			this.smallimages = new System.Windows.Forms.ImageList(this.components);
-			this.restoretexturesets = new System.Windows.Forms.Button();
-			this.edittextureset = new System.Windows.Forms.Button();
-			this.pastetexturesets = new System.Windows.Forms.Button();
-			this.copytexturesets = new System.Windows.Forms.Button();
-			this.removetextureset = new System.Windows.Forms.Button();
-			this.addtextureset = new System.Windows.Forms.Button();
-			this.tabmodes = new System.Windows.Forms.TabPage();
-			this.startmode = new System.Windows.Forms.ComboBox();
-			this.label11 = new System.Windows.Forms.Label();
-			this.listmodes = new System.Windows.Forms.ListView();
-			this.colmodename = new System.Windows.Forms.ColumnHeader();
-			this.colmodeplugin = new System.Windows.Forms.ColumnHeader();
-			this.listconfigs = new System.Windows.Forms.ListView();
-			this.columnname = new System.Windows.Forms.ColumnHeader();
-			this.testprogramdialog = new System.Windows.Forms.OpenFileDialog();
-			label5 = new System.Windows.Forms.Label();
-			label6 = new System.Windows.Forms.Label();
-			label3 = new System.Windows.Forms.Label();
-			label2 = new System.Windows.Forms.Label();
-			label7 = new System.Windows.Forms.Label();
-			label9 = new System.Windows.Forms.Label();
-			label1 = new System.Windows.Forms.Label();
-			label8 = new System.Windows.Forms.Label();
-			label4 = new System.Windows.Forms.Label();
-			label10 = new System.Windows.Forms.Label();
-			this.tabs.SuspendLayout();
-			this.tabresources.SuspendLayout();
-			this.tabnodebuilder.SuspendLayout();
-			this.tabtesting.SuspendLayout();
-			this.tabtextures.SuspendLayout();
-			this.tabmodes.SuspendLayout();
-			this.SuspendLayout();
-			// 
-			// label5
-			// 
-			label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-			label5.AutoSize = true;
-			label5.Location = new System.Drawing.Point(12, 276);
-			label5.Name = "label5";
-			label5.Size = new System.Drawing.Size(312, 14);
-			label5.TabIndex = 19;
-			label5.Text = "Drag items to change order (lower items override higher items).";
-			// 
-			// label6
-			// 
-			label6.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			label6.AutoEllipsis = true;
-			label6.Location = new System.Drawing.Point(12, 15);
-			label6.Name = "label6";
-			label6.Size = new System.Drawing.Size(452, 37);
-			label6.TabIndex = 21;
-			label6.Text = "These are the resources that will be loaded when this configuration is chosen for" +
-				" editing. Usually you add your IWAD (like doom.wad or doom2.wad) here.";
-			// 
-			// label3
-			// 
-			label3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			label3.AutoEllipsis = true;
-			label3.Location = new System.Drawing.Point(12, 15);
-			label3.Name = "label3";
-			label3.Size = new System.Drawing.Size(443, 54);
-			label3.TabIndex = 22;
-			label3.Text = resources.GetString("label3.Text");
-			// 
-			// label2
-			// 
-			label2.AutoSize = true;
-			label2.Location = new System.Drawing.Point(12, 86);
-			label2.Name = "label2";
-			label2.Size = new System.Drawing.Size(149, 14);
-			label2.TabIndex = 24;
-			label2.Text = "Configuration for saving map:";
-			// 
-			// label7
-			// 
-			label7.AutoSize = true;
-			label7.Location = new System.Drawing.Point(35, 125);
-			label7.Name = "label7";
-			label7.Size = new System.Drawing.Size(126, 14);
-			label7.TabIndex = 26;
-			label7.Text = "Configuration for testing:";
-			// 
-			// label9
-			// 
-			label9.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			label9.AutoEllipsis = true;
-			label9.Location = new System.Drawing.Point(12, 15);
-			label9.Name = "label9";
-			label9.Size = new System.Drawing.Size(452, 54);
-			label9.TabIndex = 23;
-			label9.Text = "Here you can specify the program settings to use for launching a game engine when" +
-				" testing the map. Press F1 for help with custom parameters.";
-			// 
-			// label1
-			// 
-			label1.AutoSize = true;
-			label1.Location = new System.Drawing.Point(15, 62);
-			label1.Name = "label1";
-			label1.Size = new System.Drawing.Size(63, 14);
-			label1.TabIndex = 24;
-			label1.Text = "Application:";
-			// 
-			// label8
-			// 
-			label8.AutoSize = true;
-			label8.Location = new System.Drawing.Point(21, 97);
-			label8.Name = "label8";
-			label8.Size = new System.Drawing.Size(57, 14);
-			label8.TabIndex = 34;
-			label8.Text = "Skill Level:";
-			// 
-			// label4
-			// 
-			label4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			label4.AutoEllipsis = true;
-			label4.Location = new System.Drawing.Point(12, 15);
-			label4.Name = "label4";
-			label4.Size = new System.Drawing.Size(458, 46);
-			label4.TabIndex = 24;
-			label4.Text = "Texture Sets are a way to group textures and flats into categories, so that you c" +
-				"an easily find a texture for the specific style or purpose you need by selecting" +
-				" one of the categories.";
-			// 
-			// label10
-			// 
-			label10.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			label10.AutoEllipsis = true;
-			label10.Location = new System.Drawing.Point(12, 15);
-			label10.Name = "label10";
-			label10.Size = new System.Drawing.Size(445, 58);
-			label10.TabIndex = 25;
-			label10.Text = resources.GetString("label10.Text");
-			// 
-			// labelparameters
-			// 
-			this.labelparameters.AutoSize = true;
-			this.labelparameters.Location = new System.Drawing.Point(15, 159);
-			this.labelparameters.Name = "labelparameters";
-			this.labelparameters.Size = new System.Drawing.Size(65, 14);
-			this.labelparameters.TabIndex = 27;
-			this.labelparameters.Text = "Parameters:";
-			this.labelparameters.Visible = false;
-			// 
-			// cancel
-			// 
-			this.cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-			this.cancel.Location = new System.Drawing.Point(617, 381);
-			this.cancel.Name = "cancel";
-			this.cancel.Size = new System.Drawing.Size(112, 25);
-			this.cancel.TabIndex = 3;
-			this.cancel.Text = "Cancel";
-			this.cancel.UseVisualStyleBackColor = true;
-			this.cancel.Click += new System.EventHandler(this.cancel_Click);
-			// 
-			// apply
-			// 
-			this.apply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.apply.Location = new System.Drawing.Point(499, 381);
-			this.apply.Name = "apply";
-			this.apply.Size = new System.Drawing.Size(112, 25);
-			this.apply.TabIndex = 2;
-			this.apply.Text = "OK";
-			this.apply.UseVisualStyleBackColor = true;
-			this.apply.Click += new System.EventHandler(this.apply_Click);
-			// 
-			// tabs
-			// 
-			this.tabs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.tabs.Controls.Add(this.tabresources);
-			this.tabs.Controls.Add(this.tabnodebuilder);
-			this.tabs.Controls.Add(this.tabtesting);
-			this.tabs.Controls.Add(this.tabtextures);
-			this.tabs.Controls.Add(this.tabmodes);
-			this.tabs.Enabled = false;
-			this.tabs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabs.ItemSize = new System.Drawing.Size(100, 19);
-			this.tabs.Location = new System.Drawing.Point(248, 12);
-			this.tabs.Name = "tabs";
-			this.tabs.Padding = new System.Drawing.Point(20, 3);
-			this.tabs.SelectedIndex = 0;
-			this.tabs.Size = new System.Drawing.Size(481, 358);
-			this.tabs.TabIndex = 1;
-			// 
-			// tabresources
-			// 
-			this.tabresources.Controls.Add(label6);
-			this.tabresources.Controls.Add(this.configdata);
-			this.tabresources.Controls.Add(label5);
-			this.tabresources.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabresources.Location = new System.Drawing.Point(4, 23);
-			this.tabresources.Name = "tabresources";
-			this.tabresources.Padding = new System.Windows.Forms.Padding(6);
-			this.tabresources.Size = new System.Drawing.Size(473, 331);
-			this.tabresources.TabIndex = 0;
-			this.tabresources.Text = "Resources";
-			this.tabresources.UseVisualStyleBackColor = true;
-			// 
-			// configdata
-			// 
-			this.configdata.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.configdata.DialogOffset = new System.Drawing.Point(-120, 10);
-			this.configdata.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.configdata.Location = new System.Drawing.Point(15, 55);
-			this.configdata.Name = "configdata";
-			this.configdata.Size = new System.Drawing.Size(440, 208);
-			this.configdata.TabIndex = 0;
-			this.configdata.OnContentChanged += new CodeImp.DoomBuilder.Controls.ResourceListEditor.ContentChanged(this.resourcelocations_OnContentChanged);
-			// 
-			// tabnodebuilder
-			// 
-			this.tabnodebuilder.Controls.Add(label7);
-			this.tabnodebuilder.Controls.Add(this.nodebuildertest);
-			this.tabnodebuilder.Controls.Add(label2);
-			this.tabnodebuilder.Controls.Add(this.nodebuildersave);
-			this.tabnodebuilder.Controls.Add(label3);
-			this.tabnodebuilder.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabnodebuilder.Location = new System.Drawing.Point(4, 23);
-			this.tabnodebuilder.Name = "tabnodebuilder";
-			this.tabnodebuilder.Padding = new System.Windows.Forms.Padding(6);
-			this.tabnodebuilder.Size = new System.Drawing.Size(473, 331);
-			this.tabnodebuilder.TabIndex = 1;
-			this.tabnodebuilder.Text = "Nodebuilder";
-			this.tabnodebuilder.UseVisualStyleBackColor = true;
-			// 
-			// nodebuildertest
-			// 
-			this.nodebuildertest.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.nodebuildertest.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.nodebuildertest.FormattingEnabled = true;
-			this.nodebuildertest.Location = new System.Drawing.Point(167, 122);
-			this.nodebuildertest.Name = "nodebuildertest";
-			this.nodebuildertest.Size = new System.Drawing.Size(288, 22);
-			this.nodebuildertest.Sorted = true;
-			this.nodebuildertest.TabIndex = 1;
-			this.nodebuildertest.SelectedIndexChanged += new System.EventHandler(this.nodebuildertest_SelectedIndexChanged);
-			// 
-			// nodebuildersave
-			// 
-			this.nodebuildersave.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.nodebuildersave.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.nodebuildersave.FormattingEnabled = true;
-			this.nodebuildersave.Location = new System.Drawing.Point(167, 83);
-			this.nodebuildersave.Name = "nodebuildersave";
-			this.nodebuildersave.Size = new System.Drawing.Size(288, 22);
-			this.nodebuildersave.Sorted = true;
-			this.nodebuildersave.TabIndex = 0;
-			this.nodebuildersave.SelectedIndexChanged += new System.EventHandler(this.nodebuildersave_SelectedIndexChanged);
-			// 
-			// tabtesting
-			// 
-			this.tabtesting.Controls.Add(this.shortpaths);
-			this.tabtesting.Controls.Add(this.customparameters);
-			this.tabtesting.Controls.Add(this.skill);
-			this.tabtesting.Controls.Add(label8);
-			this.tabtesting.Controls.Add(this.browsetestprogram);
-			this.tabtesting.Controls.Add(this.noresultlabel);
-			this.tabtesting.Controls.Add(this.testresult);
-			this.tabtesting.Controls.Add(this.labelresult);
-			this.tabtesting.Controls.Add(this.testparameters);
-			this.tabtesting.Controls.Add(this.labelparameters);
-			this.tabtesting.Controls.Add(this.testapplication);
-			this.tabtesting.Controls.Add(label1);
-			this.tabtesting.Controls.Add(label9);
-			this.tabtesting.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabtesting.Location = new System.Drawing.Point(4, 23);
-			this.tabtesting.Name = "tabtesting";
-			this.tabtesting.Padding = new System.Windows.Forms.Padding(6);
-			this.tabtesting.Size = new System.Drawing.Size(473, 331);
-			this.tabtesting.TabIndex = 2;
-			this.tabtesting.Text = "Testing";
-			this.tabtesting.UseVisualStyleBackColor = true;
-			// 
-			// shortpaths
-			// 
-			this.shortpaths.AutoSize = true;
-			this.shortpaths.Location = new System.Drawing.Point(87, 203);
-			this.shortpaths.Name = "shortpaths";
-			this.shortpaths.Size = new System.Drawing.Size(276, 18);
-			this.shortpaths.TabIndex = 5;
-			this.shortpaths.Text = "Use short paths and file names (MSDOS 8.3 format)";
-			this.shortpaths.UseVisualStyleBackColor = true;
-			this.shortpaths.Visible = false;
-			this.shortpaths.CheckedChanged += new System.EventHandler(this.shortpaths_CheckedChanged);
-			// 
-			// customparameters
-			// 
-			this.customparameters.AutoSize = true;
-			this.customparameters.Location = new System.Drawing.Point(86, 132);
-			this.customparameters.Name = "customparameters";
-			this.customparameters.Size = new System.Drawing.Size(134, 18);
-			this.customparameters.TabIndex = 3;
-			this.customparameters.Text = "Customize parameters";
-			this.customparameters.UseVisualStyleBackColor = true;
-			this.customparameters.CheckedChanged += new System.EventHandler(this.customparameters_CheckedChanged);
-			// 
-			// skill
-			// 
-			this.skill.BackColor = System.Drawing.Color.Transparent;
-			this.skill.Cursor = System.Windows.Forms.Cursors.Default;
-			this.skill.Empty = false;
-			this.skill.GeneralizedCategories = null;
-			this.skill.Location = new System.Drawing.Point(87, 94);
-			this.skill.Name = "skill";
-			this.skill.Size = new System.Drawing.Size(329, 21);
-			this.skill.TabIndex = 2;
-			this.skill.Value = 402;
-			this.skill.ValueChanges += new System.EventHandler(this.skill_ValueChanges);
-			// 
-			// browsetestprogram
-			// 
-			this.browsetestprogram.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-			this.browsetestprogram.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.browsetestprogram.Image = global::CodeImp.DoomBuilder.Properties.Resources.Folder;
-			this.browsetestprogram.Location = new System.Drawing.Point(422, 58);
-			this.browsetestprogram.Name = "browsetestprogram";
-			this.browsetestprogram.Padding = new System.Windows.Forms.Padding(0, 0, 1, 3);
-			this.browsetestprogram.Size = new System.Drawing.Size(30, 23);
-			this.browsetestprogram.TabIndex = 1;
-			this.browsetestprogram.Text = " ";
-			this.browsetestprogram.UseVisualStyleBackColor = true;
-			this.browsetestprogram.Click += new System.EventHandler(this.browsetestprogram_Click);
-			// 
-			// noresultlabel
-			// 
-			this.noresultlabel.Location = new System.Drawing.Point(84, 236);
-			this.noresultlabel.Name = "noresultlabel";
-			this.noresultlabel.Size = new System.Drawing.Size(272, 43);
-			this.noresultlabel.TabIndex = 32;
-			this.noresultlabel.Text = "An example result cannot be displayed, because it requires a map to be loaded.";
-			this.noresultlabel.Visible = false;
-			// 
-			// testresult
-			// 
-			this.testresult.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.testresult.BackColor = System.Drawing.SystemColors.Control;
-			this.testresult.Location = new System.Drawing.Point(86, 233);
-			this.testresult.Multiline = true;
-			this.testresult.Name = "testresult";
-			this.testresult.ReadOnly = true;
-			this.testresult.Size = new System.Drawing.Size(366, 79);
-			this.testresult.TabIndex = 6;
-			this.testresult.Visible = false;
-			// 
-			// labelresult
-			// 
-			this.labelresult.AutoSize = true;
-			this.labelresult.Location = new System.Drawing.Point(38, 236);
-			this.labelresult.Name = "labelresult";
-			this.labelresult.Size = new System.Drawing.Size(40, 14);
-			this.labelresult.TabIndex = 30;
-			this.labelresult.Text = "Result:";
-			this.labelresult.Visible = false;
-			// 
-			// testparameters
-			// 
-			this.testparameters.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.testparameters.Location = new System.Drawing.Point(86, 156);
-			this.testparameters.Multiline = true;
-			this.testparameters.Name = "testparameters";
-			this.testparameters.Size = new System.Drawing.Size(366, 41);
-			this.testparameters.TabIndex = 4;
-			this.testparameters.Visible = false;
-			this.testparameters.TextChanged += new System.EventHandler(this.testparameters_TextChanged);
-			// 
-			// testapplication
-			// 
-			this.testapplication.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.testapplication.Location = new System.Drawing.Point(86, 59);
-			this.testapplication.Name = "testapplication";
-			this.testapplication.ReadOnly = true;
-			this.testapplication.Size = new System.Drawing.Size(330, 20);
-			this.testapplication.TabIndex = 0;
-			this.testapplication.TextChanged += new System.EventHandler(this.testapplication_TextChanged);
-			// 
-			// tabtextures
-			// 
-			this.tabtextures.Controls.Add(this.listtextures);
-			this.tabtextures.Controls.Add(this.restoretexturesets);
-			this.tabtextures.Controls.Add(this.edittextureset);
-			this.tabtextures.Controls.Add(this.pastetexturesets);
-			this.tabtextures.Controls.Add(this.copytexturesets);
-			this.tabtextures.Controls.Add(this.removetextureset);
-			this.tabtextures.Controls.Add(this.addtextureset);
-			this.tabtextures.Controls.Add(label4);
-			this.tabtextures.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabtextures.Location = new System.Drawing.Point(4, 23);
-			this.tabtextures.Name = "tabtextures";
-			this.tabtextures.Size = new System.Drawing.Size(473, 331);
-			this.tabtextures.TabIndex = 3;
-			this.tabtextures.Text = "Textures";
-			this.tabtextures.UseVisualStyleBackColor = true;
-			// 
-			// listtextures
-			// 
-			this.listtextures.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.listtextures.FullRowSelect = true;
-			this.listtextures.HideSelection = false;
-			this.listtextures.Location = new System.Drawing.Point(15, 64);
-			this.listtextures.Name = "listtextures";
-			this.listtextures.ShowGroups = false;
-			this.listtextures.Size = new System.Drawing.Size(442, 175);
-			this.listtextures.SmallImageList = this.smallimages;
-			this.listtextures.Sorting = System.Windows.Forms.SortOrder.Ascending;
-			this.listtextures.TabIndex = 0;
-			this.listtextures.UseCompatibleStateImageBehavior = false;
-			this.listtextures.View = System.Windows.Forms.View.List;
-			this.listtextures.SelectedIndexChanged += new System.EventHandler(this.listtextures_SelectedIndexChanged);
-			this.listtextures.DoubleClick += new System.EventHandler(this.listtextures_DoubleClick);
-			// 
-			// smallimages
-			// 
-			this.smallimages.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("smallimages.ImageStream")));
-			this.smallimages.TransparentColor = System.Drawing.Color.Transparent;
-			this.smallimages.Images.SetKeyName(0, "KnownTextureSet.ico");
-			// 
-			// restoretexturesets
-			// 
-			this.restoretexturesets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-			this.restoretexturesets.Location = new System.Drawing.Point(15, 283);
-			this.restoretexturesets.Name = "restoretexturesets";
-			this.restoretexturesets.Size = new System.Drawing.Size(140, 24);
-			this.restoretexturesets.TabIndex = 6;
-			this.restoretexturesets.Text = "Add Default Sets";
-			this.restoretexturesets.UseVisualStyleBackColor = true;
-			this.restoretexturesets.Click += new System.EventHandler(this.restoretexturesets_Click);
-			// 
-			// edittextureset
-			// 
-			this.edittextureset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-			this.edittextureset.Enabled = false;
-			this.edittextureset.Location = new System.Drawing.Point(88, 245);
-			this.edittextureset.Name = "edittextureset";
-			this.edittextureset.Size = new System.Drawing.Size(67, 24);
-			this.edittextureset.TabIndex = 2;
-			this.edittextureset.Text = "Edit...";
-			this.edittextureset.UseVisualStyleBackColor = true;
-			this.edittextureset.Click += new System.EventHandler(this.edittextureset_Click);
-			// 
-			// pastetexturesets
-			// 
-			this.pastetexturesets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.pastetexturesets.Enabled = false;
-			this.pastetexturesets.Location = new System.Drawing.Point(399, 245);
-			this.pastetexturesets.Name = "pastetexturesets";
-			this.pastetexturesets.Size = new System.Drawing.Size(58, 24);
-			this.pastetexturesets.TabIndex = 5;
-			this.pastetexturesets.Text = "Paste";
-			this.pastetexturesets.UseVisualStyleBackColor = true;
-			this.pastetexturesets.Click += new System.EventHandler(this.pastetexturesets_Click);
-			// 
-			// copytexturesets
-			// 
-			this.copytexturesets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.copytexturesets.Enabled = false;
-			this.copytexturesets.Location = new System.Drawing.Point(335, 245);
-			this.copytexturesets.Name = "copytexturesets";
-			this.copytexturesets.Size = new System.Drawing.Size(58, 24);
-			this.copytexturesets.TabIndex = 4;
-			this.copytexturesets.Text = "Copy";
-			this.copytexturesets.UseVisualStyleBackColor = true;
-			this.copytexturesets.Click += new System.EventHandler(this.copytexturesets_Click);
-			// 
-			// removetextureset
-			// 
-			this.removetextureset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-			this.removetextureset.Enabled = false;
-			this.removetextureset.Location = new System.Drawing.Point(161, 245);
-			this.removetextureset.Name = "removetextureset";
-			this.removetextureset.Size = new System.Drawing.Size(68, 24);
-			this.removetextureset.TabIndex = 3;
-			this.removetextureset.Text = "Remove";
-			this.removetextureset.UseVisualStyleBackColor = true;
-			this.removetextureset.Click += new System.EventHandler(this.removetextureset_Click);
-			// 
-			// addtextureset
-			// 
-			this.addtextureset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-			this.addtextureset.Location = new System.Drawing.Point(15, 245);
-			this.addtextureset.Name = "addtextureset";
-			this.addtextureset.Size = new System.Drawing.Size(67, 24);
-			this.addtextureset.TabIndex = 1;
-			this.addtextureset.Text = "Add...";
-			this.addtextureset.UseVisualStyleBackColor = true;
-			this.addtextureset.Click += new System.EventHandler(this.addtextureset_Click);
-			// 
-			// tabmodes
-			// 
-			this.tabmodes.Controls.Add(this.startmode);
-			this.tabmodes.Controls.Add(this.label11);
-			this.tabmodes.Controls.Add(this.listmodes);
-			this.tabmodes.Controls.Add(label10);
-			this.tabmodes.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabmodes.Location = new System.Drawing.Point(4, 23);
-			this.tabmodes.Name = "tabmodes";
-			this.tabmodes.Size = new System.Drawing.Size(473, 331);
-			this.tabmodes.TabIndex = 4;
-			this.tabmodes.Text = "Modes";
-			this.tabmodes.UseVisualStyleBackColor = true;
-			// 
-			// startmode
-			// 
-			this.startmode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.startmode.FormattingEnabled = true;
-			this.startmode.Location = new System.Drawing.Point(239, 288);
-			this.startmode.Name = "startmode";
-			this.startmode.Size = new System.Drawing.Size(218, 22);
-			this.startmode.TabIndex = 27;
-			this.startmode.SelectedIndexChanged += new System.EventHandler(this.startmode_SelectedIndexChanged);
-			// 
-			// label11
-			// 
-			this.label11.AutoSize = true;
-			this.label11.Location = new System.Drawing.Point(12, 291);
-			this.label11.Name = "label11";
-			this.label11.Size = new System.Drawing.Size(199, 14);
-			this.label11.TabIndex = 26;
-			this.label11.Text = "When opening a map, start in this mode:";
-			// 
-			// listmodes
-			// 
-			this.listmodes.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.listmodes.CheckBoxes = true;
-			this.listmodes.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.Label label5;
+            System.Windows.Forms.Label label6;
+            System.Windows.Forms.Label label3;
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigForm));
+            System.Windows.Forms.Label label2;
+            System.Windows.Forms.Label label7;
+            System.Windows.Forms.Label label9;
+            System.Windows.Forms.Label label1;
+            System.Windows.Forms.Label label8;
+            System.Windows.Forms.Label label4;
+            System.Windows.Forms.Label label10;
+            this.labelparameters = new System.Windows.Forms.Label();
+            this.cancel = new System.Windows.Forms.Button();
+            this.apply = new System.Windows.Forms.Button();
+            this.tabs = new System.Windows.Forms.TabControl();
+            this.tabresources = new System.Windows.Forms.TabPage();
+            this.configdata = new CodeImp.DoomBuilder.Controls.ResourceListEditor();
+            this.tabnodebuilder = new System.Windows.Forms.TabPage();
+            this.nodebuildertest = new System.Windows.Forms.ComboBox();
+            this.nodebuildersave = new System.Windows.Forms.ComboBox();
+            this.tabtesting = new System.Windows.Forms.TabPage();
+            this.shortpaths = new System.Windows.Forms.CheckBox();
+            this.customparameters = new System.Windows.Forms.CheckBox();
+            this.skill = new CodeImp.DoomBuilder.Controls.ActionSelectorControl();
+            this.browsetestprogram = new System.Windows.Forms.Button();
+            this.noresultlabel = new System.Windows.Forms.Label();
+            this.testresult = new System.Windows.Forms.TextBox();
+            this.labelresult = new System.Windows.Forms.Label();
+            this.testparameters = new System.Windows.Forms.TextBox();
+            this.testapplication = new System.Windows.Forms.TextBox();
+            this.tabtextures = new System.Windows.Forms.TabPage();
+            this.listtextures = new System.Windows.Forms.ListView();
+            this.smallimages = new System.Windows.Forms.ImageList(this.components);
+            this.restoretexturesets = new System.Windows.Forms.Button();
+            this.edittextureset = new System.Windows.Forms.Button();
+            this.pastetexturesets = new System.Windows.Forms.Button();
+            this.copytexturesets = new System.Windows.Forms.Button();
+            this.removetextureset = new System.Windows.Forms.Button();
+            this.addtextureset = new System.Windows.Forms.Button();
+            this.tabmodes = new System.Windows.Forms.TabPage();
+            this.startmode = new System.Windows.Forms.ComboBox();
+            this.label11 = new System.Windows.Forms.Label();
+            this.listmodes = new System.Windows.Forms.ListView();
+            this.colmodename = new System.Windows.Forms.ColumnHeader();
+            this.colmodeplugin = new System.Windows.Forms.ColumnHeader();
+            this.listconfigs = new System.Windows.Forms.ListView();
+            this.columnname = new System.Windows.Forms.ColumnHeader();
+            this.testprogramdialog = new System.Windows.Forms.OpenFileDialog();
+            label5 = new System.Windows.Forms.Label();
+            label6 = new System.Windows.Forms.Label();
+            label3 = new System.Windows.Forms.Label();
+            label2 = new System.Windows.Forms.Label();
+            label7 = new System.Windows.Forms.Label();
+            label9 = new System.Windows.Forms.Label();
+            label1 = new System.Windows.Forms.Label();
+            label8 = new System.Windows.Forms.Label();
+            label4 = new System.Windows.Forms.Label();
+            label10 = new System.Windows.Forms.Label();
+            this.tabs.SuspendLayout();
+            this.tabresources.SuspendLayout();
+            this.tabnodebuilder.SuspendLayout();
+            this.tabtesting.SuspendLayout();
+            this.tabtextures.SuspendLayout();
+            this.tabmodes.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // label5
+            // 
+            label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            label5.AutoSize = true;
+            label5.Location = new System.Drawing.Point(12, 276);
+            label5.Name = "label5";
+            label5.Size = new System.Drawing.Size(312, 14);
+            label5.TabIndex = 19;
+            label5.Text = "Drag items to change order (lower items override higher items).";
+            // 
+            // label6
+            // 
+            label6.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            label6.AutoEllipsis = true;
+            label6.Location = new System.Drawing.Point(12, 15);
+            label6.Name = "label6";
+            label6.Size = new System.Drawing.Size(452, 37);
+            label6.TabIndex = 21;
+            label6.Text = "These are the resources that will be loaded when this configuration is chosen for" +
+                " editing. Usually you add your IWAD (like doom.wad or doom2.wad) here.";
+            // 
+            // label3
+            // 
+            label3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            label3.AutoEllipsis = true;
+            label3.Location = new System.Drawing.Point(12, 15);
+            label3.Name = "label3";
+            label3.Size = new System.Drawing.Size(443, 54);
+            label3.TabIndex = 22;
+            label3.Text = resources.GetString("label3.Text");
+            // 
+            // label2
+            // 
+            label2.AutoSize = true;
+            label2.Location = new System.Drawing.Point(12, 86);
+            label2.Name = "label2";
+            label2.Size = new System.Drawing.Size(149, 14);
+            label2.TabIndex = 24;
+            label2.Text = "Configuration for saving map:";
+            // 
+            // label7
+            // 
+            label7.AutoSize = true;
+            label7.Location = new System.Drawing.Point(35, 125);
+            label7.Name = "label7";
+            label7.Size = new System.Drawing.Size(126, 14);
+            label7.TabIndex = 26;
+            label7.Text = "Configuration for testing:";
+            // 
+            // label9
+            // 
+            label9.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            label9.AutoEllipsis = true;
+            label9.Location = new System.Drawing.Point(12, 15);
+            label9.Name = "label9";
+            label9.Size = new System.Drawing.Size(452, 54);
+            label9.TabIndex = 23;
+            label9.Text = "Here you can specify the program settings to use for launching a game engine when" +
+                " testing the map. Press F1 for help with custom parameters.";
+            // 
+            // label1
+            // 
+            label1.AutoSize = true;
+            label1.Location = new System.Drawing.Point(15, 62);
+            label1.Name = "label1";
+            label1.Size = new System.Drawing.Size(63, 14);
+            label1.TabIndex = 24;
+            label1.Text = "Application:";
+            // 
+            // label8
+            // 
+            label8.AutoSize = true;
+            label8.Location = new System.Drawing.Point(21, 97);
+            label8.Name = "label8";
+            label8.Size = new System.Drawing.Size(57, 14);
+            label8.TabIndex = 34;
+            label8.Text = "Skill Level:";
+            // 
+            // label4
+            // 
+            label4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            label4.AutoEllipsis = true;
+            label4.Location = new System.Drawing.Point(12, 15);
+            label4.Name = "label4";
+            label4.Size = new System.Drawing.Size(458, 46);
+            label4.TabIndex = 24;
+            label4.Text = "Texture Sets are a way to group textures and flats into categories, so that you c" +
+                "an easily find a texture for the specific style or purpose you need by selecting" +
+                " one of the categories.";
+            // 
+            // label10
+            // 
+            label10.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            label10.AutoEllipsis = true;
+            label10.Location = new System.Drawing.Point(12, 15);
+            label10.Name = "label10";
+            label10.Size = new System.Drawing.Size(445, 58);
+            label10.TabIndex = 25;
+            label10.Text = resources.GetString("label10.Text");
+            // 
+            // labelparameters
+            // 
+            this.labelparameters.AutoSize = true;
+            this.labelparameters.Location = new System.Drawing.Point(15, 159);
+            this.labelparameters.Name = "labelparameters";
+            this.labelparameters.Size = new System.Drawing.Size(65, 14);
+            this.labelparameters.TabIndex = 27;
+            this.labelparameters.Text = "Parameters:";
+            this.labelparameters.Visible = false;
+            // 
+            // cancel
+            // 
+            this.cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.cancel.Location = new System.Drawing.Point(617, 381);
+            this.cancel.Name = "cancel";
+            this.cancel.Size = new System.Drawing.Size(112, 25);
+            this.cancel.TabIndex = 3;
+            this.cancel.Text = "Cancel";
+            this.cancel.UseVisualStyleBackColor = true;
+            this.cancel.Click += new System.EventHandler(this.cancel_Click);
+            // 
+            // apply
+            // 
+            this.apply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.apply.Location = new System.Drawing.Point(499, 381);
+            this.apply.Name = "apply";
+            this.apply.Size = new System.Drawing.Size(112, 25);
+            this.apply.TabIndex = 2;
+            this.apply.Text = "OK";
+            this.apply.UseVisualStyleBackColor = true;
+            this.apply.Click += new System.EventHandler(this.apply_Click);
+            // 
+            // tabs
+            // 
+            this.tabs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.tabs.Controls.Add(this.tabresources);
+            this.tabs.Controls.Add(this.tabnodebuilder);
+            this.tabs.Controls.Add(this.tabtesting);
+            this.tabs.Controls.Add(this.tabtextures);
+            this.tabs.Controls.Add(this.tabmodes);
+            this.tabs.Enabled = false;
+            this.tabs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabs.ItemSize = new System.Drawing.Size(100, 19);
+            this.tabs.Location = new System.Drawing.Point(248, 12);
+            this.tabs.Name = "tabs";
+            this.tabs.Padding = new System.Drawing.Point(20, 3);
+            this.tabs.SelectedIndex = 0;
+            this.tabs.Size = new System.Drawing.Size(481, 358);
+            this.tabs.TabIndex = 1;
+            // 
+            // tabresources
+            // 
+            this.tabresources.Controls.Add(label6);
+            this.tabresources.Controls.Add(this.configdata);
+            this.tabresources.Controls.Add(label5);
+            this.tabresources.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabresources.Location = new System.Drawing.Point(4, 23);
+            this.tabresources.Name = "tabresources";
+            this.tabresources.Padding = new System.Windows.Forms.Padding(6);
+            this.tabresources.Size = new System.Drawing.Size(473, 331);
+            this.tabresources.TabIndex = 0;
+            this.tabresources.Text = "Resources";
+            this.tabresources.UseVisualStyleBackColor = true;
+            // 
+            // configdata
+            // 
+            this.configdata.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.configdata.DialogOffset = new System.Drawing.Point(-120, 10);
+            this.configdata.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.configdata.Location = new System.Drawing.Point(15, 55);
+            this.configdata.Name = "configdata";
+            this.configdata.Size = new System.Drawing.Size(440, 208);
+            this.configdata.TabIndex = 0;
+            this.configdata.OnContentChanged += new CodeImp.DoomBuilder.Controls.ResourceListEditor.ContentChanged(this.resourcelocations_OnContentChanged);
+            // 
+            // tabnodebuilder
+            // 
+            this.tabnodebuilder.Controls.Add(label7);
+            this.tabnodebuilder.Controls.Add(this.nodebuildertest);
+            this.tabnodebuilder.Controls.Add(label2);
+            this.tabnodebuilder.Controls.Add(this.nodebuildersave);
+            this.tabnodebuilder.Controls.Add(label3);
+            this.tabnodebuilder.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabnodebuilder.Location = new System.Drawing.Point(4, 23);
+            this.tabnodebuilder.Name = "tabnodebuilder";
+            this.tabnodebuilder.Padding = new System.Windows.Forms.Padding(6);
+            this.tabnodebuilder.Size = new System.Drawing.Size(473, 331);
+            this.tabnodebuilder.TabIndex = 1;
+            this.tabnodebuilder.Text = "Nodebuilder";
+            this.tabnodebuilder.UseVisualStyleBackColor = true;
+            // 
+            // nodebuildertest
+            // 
+            this.nodebuildertest.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.nodebuildertest.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.nodebuildertest.FormattingEnabled = true;
+            this.nodebuildertest.Location = new System.Drawing.Point(167, 122);
+            this.nodebuildertest.Name = "nodebuildertest";
+            this.nodebuildertest.Size = new System.Drawing.Size(288, 22);
+            this.nodebuildertest.Sorted = true;
+            this.nodebuildertest.TabIndex = 1;
+            this.nodebuildertest.SelectedIndexChanged += new System.EventHandler(this.nodebuildertest_SelectedIndexChanged);
+            // 
+            // nodebuildersave
+            // 
+            this.nodebuildersave.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.nodebuildersave.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.nodebuildersave.FormattingEnabled = true;
+            this.nodebuildersave.Location = new System.Drawing.Point(167, 83);
+            this.nodebuildersave.Name = "nodebuildersave";
+            this.nodebuildersave.Size = new System.Drawing.Size(288, 22);
+            this.nodebuildersave.Sorted = true;
+            this.nodebuildersave.TabIndex = 0;
+            this.nodebuildersave.SelectedIndexChanged += new System.EventHandler(this.nodebuildersave_SelectedIndexChanged);
+            // 
+            // tabtesting
+            // 
+            this.tabtesting.Controls.Add(this.shortpaths);
+            this.tabtesting.Controls.Add(this.customparameters);
+            this.tabtesting.Controls.Add(this.skill);
+            this.tabtesting.Controls.Add(label8);
+            this.tabtesting.Controls.Add(this.browsetestprogram);
+            this.tabtesting.Controls.Add(this.noresultlabel);
+            this.tabtesting.Controls.Add(this.testresult);
+            this.tabtesting.Controls.Add(this.labelresult);
+            this.tabtesting.Controls.Add(this.testparameters);
+            this.tabtesting.Controls.Add(this.labelparameters);
+            this.tabtesting.Controls.Add(this.testapplication);
+            this.tabtesting.Controls.Add(label1);
+            this.tabtesting.Controls.Add(label9);
+            this.tabtesting.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabtesting.Location = new System.Drawing.Point(4, 23);
+            this.tabtesting.Name = "tabtesting";
+            this.tabtesting.Padding = new System.Windows.Forms.Padding(6);
+            this.tabtesting.Size = new System.Drawing.Size(473, 331);
+            this.tabtesting.TabIndex = 2;
+            this.tabtesting.Text = "Testing";
+            this.tabtesting.UseVisualStyleBackColor = true;
+            // 
+            // shortpaths
+            // 
+            this.shortpaths.AutoSize = true;
+            this.shortpaths.Location = new System.Drawing.Point(87, 203);
+            this.shortpaths.Name = "shortpaths";
+            this.shortpaths.Size = new System.Drawing.Size(276, 18);
+            this.shortpaths.TabIndex = 5;
+            this.shortpaths.Text = "Use short paths and file names (MSDOS 8.3 format)";
+            this.shortpaths.UseVisualStyleBackColor = true;
+            this.shortpaths.Visible = false;
+            this.shortpaths.CheckedChanged += new System.EventHandler(this.shortpaths_CheckedChanged);
+            // 
+            // customparameters
+            // 
+            this.customparameters.AutoSize = true;
+            this.customparameters.Location = new System.Drawing.Point(86, 132);
+            this.customparameters.Name = "customparameters";
+            this.customparameters.Size = new System.Drawing.Size(134, 18);
+            this.customparameters.TabIndex = 3;
+            this.customparameters.Text = "Customize parameters";
+            this.customparameters.UseVisualStyleBackColor = true;
+            this.customparameters.CheckedChanged += new System.EventHandler(this.customparameters_CheckedChanged);
+            // 
+            // skill
+            // 
+            this.skill.BackColor = System.Drawing.Color.Transparent;
+            this.skill.Cursor = System.Windows.Forms.Cursors.Default;
+            this.skill.Empty = false;
+            this.skill.GeneralizedCategories = null;
+            this.skill.Location = new System.Drawing.Point(87, 94);
+            this.skill.Name = "skill";
+            this.skill.Size = new System.Drawing.Size(329, 21);
+            this.skill.TabIndex = 2;
+            this.skill.Value = 402;
+            this.skill.ValueChanges += new System.EventHandler(this.skill_ValueChanges);
+            // 
+            // browsetestprogram
+            // 
+            this.browsetestprogram.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.browsetestprogram.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.browsetestprogram.Image = global::CodeImp.DoomBuilder.Properties.Resources.Folder;
+            this.browsetestprogram.Location = new System.Drawing.Point(422, 58);
+            this.browsetestprogram.Name = "browsetestprogram";
+            this.browsetestprogram.Padding = new System.Windows.Forms.Padding(0, 0, 1, 3);
+            this.browsetestprogram.Size = new System.Drawing.Size(30, 23);
+            this.browsetestprogram.TabIndex = 1;
+            this.browsetestprogram.Text = " ";
+            this.browsetestprogram.UseVisualStyleBackColor = true;
+            this.browsetestprogram.Click += new System.EventHandler(this.browsetestprogram_Click);
+            // 
+            // noresultlabel
+            // 
+            this.noresultlabel.Location = new System.Drawing.Point(84, 236);
+            this.noresultlabel.Name = "noresultlabel";
+            this.noresultlabel.Size = new System.Drawing.Size(272, 43);
+            this.noresultlabel.TabIndex = 32;
+            this.noresultlabel.Text = "An example result cannot be displayed, because it requires a map to be loaded.";
+            this.noresultlabel.Visible = false;
+            // 
+            // testresult
+            // 
+            this.testresult.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.testresult.BackColor = System.Drawing.SystemColors.Control;
+            this.testresult.Location = new System.Drawing.Point(86, 233);
+            this.testresult.Multiline = true;
+            this.testresult.Name = "testresult";
+            this.testresult.ReadOnly = true;
+            this.testresult.Size = new System.Drawing.Size(366, 79);
+            this.testresult.TabIndex = 6;
+            this.testresult.Visible = false;
+            // 
+            // labelresult
+            // 
+            this.labelresult.AutoSize = true;
+            this.labelresult.Location = new System.Drawing.Point(38, 236);
+            this.labelresult.Name = "labelresult";
+            this.labelresult.Size = new System.Drawing.Size(40, 14);
+            this.labelresult.TabIndex = 30;
+            this.labelresult.Text = "Result:";
+            this.labelresult.Visible = false;
+            // 
+            // testparameters
+            // 
+            this.testparameters.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.testparameters.Location = new System.Drawing.Point(86, 156);
+            this.testparameters.Multiline = true;
+            this.testparameters.Name = "testparameters";
+            this.testparameters.Size = new System.Drawing.Size(366, 41);
+            this.testparameters.TabIndex = 4;
+            this.testparameters.Visible = false;
+            this.testparameters.TextChanged += new System.EventHandler(this.testparameters_TextChanged);
+            // 
+            // testapplication
+            // 
+            this.testapplication.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.testapplication.Location = new System.Drawing.Point(86, 59);
+            this.testapplication.Name = "testapplication";
+            this.testapplication.ReadOnly = true;
+            this.testapplication.Size = new System.Drawing.Size(330, 20);
+            this.testapplication.TabIndex = 0;
+            this.testapplication.TextChanged += new System.EventHandler(this.testapplication_TextChanged);
+            // 
+            // tabtextures
+            // 
+            this.tabtextures.Controls.Add(this.listtextures);
+            this.tabtextures.Controls.Add(this.restoretexturesets);
+            this.tabtextures.Controls.Add(this.edittextureset);
+            this.tabtextures.Controls.Add(this.pastetexturesets);
+            this.tabtextures.Controls.Add(this.copytexturesets);
+            this.tabtextures.Controls.Add(this.removetextureset);
+            this.tabtextures.Controls.Add(this.addtextureset);
+            this.tabtextures.Controls.Add(label4);
+            this.tabtextures.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabtextures.Location = new System.Drawing.Point(4, 23);
+            this.tabtextures.Name = "tabtextures";
+            this.tabtextures.Size = new System.Drawing.Size(473, 331);
+            this.tabtextures.TabIndex = 3;
+            this.tabtextures.Text = "Textures";
+            this.tabtextures.UseVisualStyleBackColor = true;
+            // 
+            // listtextures
+            // 
+            this.listtextures.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.listtextures.FullRowSelect = true;
+            this.listtextures.HideSelection = false;
+            this.listtextures.Location = new System.Drawing.Point(15, 64);
+            this.listtextures.Name = "listtextures";
+            this.listtextures.ShowGroups = false;
+            this.listtextures.Size = new System.Drawing.Size(442, 175);
+            this.listtextures.SmallImageList = this.smallimages;
+            this.listtextures.Sorting = System.Windows.Forms.SortOrder.Ascending;
+            this.listtextures.TabIndex = 0;
+            this.listtextures.UseCompatibleStateImageBehavior = false;
+            this.listtextures.View = System.Windows.Forms.View.List;
+            this.listtextures.SelectedIndexChanged += new System.EventHandler(this.listtextures_SelectedIndexChanged);
+            this.listtextures.DoubleClick += new System.EventHandler(this.listtextures_DoubleClick);
+            // 
+            // smallimages
+            // 
+            this.smallimages.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("smallimages.ImageStream")));
+            this.smallimages.TransparentColor = System.Drawing.Color.Transparent;
+            this.smallimages.Images.SetKeyName(0, "KnownTextureSet.ico");
+            // 
+            // restoretexturesets
+            // 
+            this.restoretexturesets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.restoretexturesets.Location = new System.Drawing.Point(15, 283);
+            this.restoretexturesets.Name = "restoretexturesets";
+            this.restoretexturesets.Size = new System.Drawing.Size(140, 24);
+            this.restoretexturesets.TabIndex = 6;
+            this.restoretexturesets.Text = "Add Default Sets";
+            this.restoretexturesets.UseVisualStyleBackColor = true;
+            this.restoretexturesets.Click += new System.EventHandler(this.restoretexturesets_Click);
+            // 
+            // edittextureset
+            // 
+            this.edittextureset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.edittextureset.Enabled = false;
+            this.edittextureset.Location = new System.Drawing.Point(88, 245);
+            this.edittextureset.Name = "edittextureset";
+            this.edittextureset.Size = new System.Drawing.Size(67, 24);
+            this.edittextureset.TabIndex = 2;
+            this.edittextureset.Text = "Edit...";
+            this.edittextureset.UseVisualStyleBackColor = true;
+            this.edittextureset.Click += new System.EventHandler(this.edittextureset_Click);
+            // 
+            // pastetexturesets
+            // 
+            this.pastetexturesets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.pastetexturesets.Enabled = false;
+            this.pastetexturesets.Location = new System.Drawing.Point(399, 245);
+            this.pastetexturesets.Name = "pastetexturesets";
+            this.pastetexturesets.Size = new System.Drawing.Size(58, 24);
+            this.pastetexturesets.TabIndex = 5;
+            this.pastetexturesets.Text = "Paste";
+            this.pastetexturesets.UseVisualStyleBackColor = true;
+            this.pastetexturesets.Click += new System.EventHandler(this.pastetexturesets_Click);
+            // 
+            // copytexturesets
+            // 
+            this.copytexturesets.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.copytexturesets.Enabled = false;
+            this.copytexturesets.Location = new System.Drawing.Point(335, 245);
+            this.copytexturesets.Name = "copytexturesets";
+            this.copytexturesets.Size = new System.Drawing.Size(58, 24);
+            this.copytexturesets.TabIndex = 4;
+            this.copytexturesets.Text = "Copy";
+            this.copytexturesets.UseVisualStyleBackColor = true;
+            this.copytexturesets.Click += new System.EventHandler(this.copytexturesets_Click);
+            // 
+            // removetextureset
+            // 
+            this.removetextureset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.removetextureset.Enabled = false;
+            this.removetextureset.Location = new System.Drawing.Point(161, 245);
+            this.removetextureset.Name = "removetextureset";
+            this.removetextureset.Size = new System.Drawing.Size(68, 24);
+            this.removetextureset.TabIndex = 3;
+            this.removetextureset.Text = "Remove";
+            this.removetextureset.UseVisualStyleBackColor = true;
+            this.removetextureset.Click += new System.EventHandler(this.removetextureset_Click);
+            // 
+            // addtextureset
+            // 
+            this.addtextureset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.addtextureset.Location = new System.Drawing.Point(15, 245);
+            this.addtextureset.Name = "addtextureset";
+            this.addtextureset.Size = new System.Drawing.Size(67, 24);
+            this.addtextureset.TabIndex = 1;
+            this.addtextureset.Text = "Add...";
+            this.addtextureset.UseVisualStyleBackColor = true;
+            this.addtextureset.Click += new System.EventHandler(this.addtextureset_Click);
+            // 
+            // tabmodes
+            // 
+            this.tabmodes.Controls.Add(this.startmode);
+            this.tabmodes.Controls.Add(this.label11);
+            this.tabmodes.Controls.Add(this.listmodes);
+            this.tabmodes.Controls.Add(label10);
+            this.tabmodes.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabmodes.Location = new System.Drawing.Point(4, 23);
+            this.tabmodes.Name = "tabmodes";
+            this.tabmodes.Size = new System.Drawing.Size(473, 331);
+            this.tabmodes.TabIndex = 4;
+            this.tabmodes.Text = "Modes";
+            this.tabmodes.UseVisualStyleBackColor = true;
+            // 
+            // startmode
+            // 
+            this.startmode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.startmode.FormattingEnabled = true;
+            this.startmode.Location = new System.Drawing.Point(239, 288);
+            this.startmode.Name = "startmode";
+            this.startmode.Size = new System.Drawing.Size(218, 22);
+            this.startmode.TabIndex = 27;
+            this.startmode.SelectedIndexChanged += new System.EventHandler(this.startmode_SelectedIndexChanged);
+            // 
+            // label11
+            // 
+            this.label11.AutoSize = true;
+            this.label11.Location = new System.Drawing.Point(12, 291);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(199, 14);
+            this.label11.TabIndex = 26;
+            this.label11.Text = "When opening a map, start in this mode:";
+            // 
+            // listmodes
+            // 
+            this.listmodes.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.listmodes.CheckBoxes = true;
+            this.listmodes.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
             this.colmodename,
             this.colmodeplugin});
-			this.listmodes.FullRowSelect = true;
-			this.listmodes.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
-			this.listmodes.Location = new System.Drawing.Point(15, 70);
-			this.listmodes.MultiSelect = false;
-			this.listmodes.Name = "listmodes";
-			this.listmodes.ShowGroups = false;
-			this.listmodes.Size = new System.Drawing.Size(442, 202);
-			this.listmodes.Sorting = System.Windows.Forms.SortOrder.Ascending;
-			this.listmodes.TabIndex = 0;
-			this.listmodes.UseCompatibleStateImageBehavior = false;
-			this.listmodes.View = System.Windows.Forms.View.Details;
-			this.listmodes.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listmodes_ItemChecked);
-			// 
-			// colmodename
-			// 
-			this.colmodename.Text = "Editing Mode";
-			this.colmodename.Width = 179;
-			// 
-			// colmodeplugin
-			// 
-			this.colmodeplugin.Text = "Plugin";
-			this.colmodeplugin.Width = 221;
-			// 
-			// listconfigs
-			// 
-			this.listconfigs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)));
-			this.listconfigs.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+            this.listmodes.FullRowSelect = true;
+            this.listmodes.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
+            this.listmodes.Location = new System.Drawing.Point(15, 70);
+            this.listmodes.MultiSelect = false;
+            this.listmodes.Name = "listmodes";
+            this.listmodes.ShowGroups = false;
+            this.listmodes.Size = new System.Drawing.Size(442, 202);
+            this.listmodes.Sorting = System.Windows.Forms.SortOrder.Ascending;
+            this.listmodes.TabIndex = 0;
+            this.listmodes.UseCompatibleStateImageBehavior = false;
+            this.listmodes.View = System.Windows.Forms.View.Details;
+            this.listmodes.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listmodes_ItemChecked);
+            // 
+            // colmodename
+            // 
+            this.colmodename.Text = "Editing Mode";
+            this.colmodename.Width = 179;
+            // 
+            // colmodeplugin
+            // 
+            this.colmodeplugin.Text = "Plugin";
+            this.colmodeplugin.Width = 221;
+            // 
+            // listconfigs
+            // 
+            this.listconfigs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)));
+            this.listconfigs.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
             this.columnname});
-			this.listconfigs.FullRowSelect = true;
-			this.listconfigs.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
-			this.listconfigs.HideSelection = false;
-			this.listconfigs.Location = new System.Drawing.Point(12, 12);
-			this.listconfigs.MultiSelect = false;
-			this.listconfigs.Name = "listconfigs";
-			this.listconfigs.ShowGroups = false;
-			this.listconfigs.Size = new System.Drawing.Size(230, 358);
-			this.listconfigs.Sorting = System.Windows.Forms.SortOrder.Ascending;
-			this.listconfigs.TabIndex = 0;
-			this.listconfigs.UseCompatibleStateImageBehavior = false;
-			this.listconfigs.View = System.Windows.Forms.View.Details;
-			this.listconfigs.SelectedIndexChanged += new System.EventHandler(this.listconfigs_SelectedIndexChanged);
-			this.listconfigs.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listconfigs_MouseUp);
-			this.listconfigs.KeyUp += new System.Windows.Forms.KeyEventHandler(this.listconfigs_KeyUp);
-			// 
-			// columnname
-			// 
-			this.columnname.Text = "Configuration";
-			this.columnname.Width = 200;
-			// 
-			// testprogramdialog
-			// 
-			this.testprogramdialog.Filter = "Executable Files (*.exe)|*.exe|Batch Files (*.bat)|*.bat";
-			this.testprogramdialog.Title = "Browse Test Program";
-			// 
-			// ConfigForm
-			// 
-			this.AcceptButton = this.apply;
-			this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
-			this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
-			this.CancelButton = this.cancel;
-			this.ClientSize = new System.Drawing.Size(740, 416);
-			this.Controls.Add(this.listconfigs);
-			this.Controls.Add(this.tabs);
-			this.Controls.Add(this.cancel);
-			this.Controls.Add(this.apply);
-			this.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
-			this.MaximizeBox = false;
-			this.MinimizeBox = false;
-			this.Name = "ConfigForm";
-			this.Opacity = 0;
-			this.ShowIcon = false;
-			this.ShowInTaskbar = false;
-			this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
-			this.Text = "Game Configurations";
-			this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.ConfigForm_HelpRequested);
-			this.tabs.ResumeLayout(false);
-			this.tabresources.ResumeLayout(false);
-			this.tabresources.PerformLayout();
-			this.tabnodebuilder.ResumeLayout(false);
-			this.tabnodebuilder.PerformLayout();
-			this.tabtesting.ResumeLayout(false);
-			this.tabtesting.PerformLayout();
-			this.tabtextures.ResumeLayout(false);
-			this.tabmodes.ResumeLayout(false);
-			this.tabmodes.PerformLayout();
-			this.ResumeLayout(false);
+            this.listconfigs.FullRowSelect = true;
+            this.listconfigs.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
+            this.listconfigs.HideSelection = false;
+            this.listconfigs.Location = new System.Drawing.Point(12, 12);
+            this.listconfigs.MultiSelect = false;
+            this.listconfigs.Name = "listconfigs";
+            this.listconfigs.ShowGroups = false;
+            this.listconfigs.Size = new System.Drawing.Size(230, 358);
+            this.listconfigs.Sorting = System.Windows.Forms.SortOrder.Ascending;
+            this.listconfigs.TabIndex = 0;
+            this.listconfigs.UseCompatibleStateImageBehavior = false;
+            this.listconfigs.View = System.Windows.Forms.View.Details;
+            this.listconfigs.SelectedIndexChanged += new System.EventHandler(this.listconfigs_SelectedIndexChanged);
+            this.listconfigs.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listconfigs_MouseUp);
+            this.listconfigs.KeyUp += new System.Windows.Forms.KeyEventHandler(this.listconfigs_KeyUp);
+            // 
+            // columnname
+            // 
+            this.columnname.Text = "Configuration";
+            this.columnname.Width = 200;
+            // 
+            // testprogramdialog
+            // 
+            this.testprogramdialog.Filter = "Executable Files (*.exe)|*.exe|Batch Files (*.bat)|*.bat";
+            this.testprogramdialog.Title = "Browse Test Program";
+            // 
+            // ConfigForm
+            // 
+            this.AcceptButton = this.apply;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.CancelButton = this.cancel;
+            this.ClientSize = new System.Drawing.Size(740, 416);
+            this.Controls.Add(this.listconfigs);
+            this.Controls.Add(this.tabs);
+            this.Controls.Add(this.cancel);
+            this.Controls.Add(this.apply);
+            this.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "ConfigForm";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "Game Configurations";
+            this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.ConfigForm_HelpRequested);
+            this.tabs.ResumeLayout(false);
+            this.tabresources.ResumeLayout(false);
+            this.tabresources.PerformLayout();
+            this.tabnodebuilder.ResumeLayout(false);
+            this.tabnodebuilder.PerformLayout();
+            this.tabtesting.ResumeLayout(false);
+            this.tabtesting.PerformLayout();
+            this.tabtextures.ResumeLayout(false);
+            this.tabmodes.ResumeLayout(false);
+            this.tabmodes.PerformLayout();
+            this.ResumeLayout(false);
 
 		}
 
diff --git a/Source/Core/Windows/ConfigForm.resx b/Source/Core/Windows/ConfigForm.resx
index e3fb03b85b2ff06d436cdc05b69485a356f743a2..5c2b75d31b99d0626c5da1eaa4e87915b7014749 100644
--- a/Source/Core/Windows/ConfigForm.resx
+++ b/Source/Core/Windows/ConfigForm.resx
@@ -254,7 +254,7 @@
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAA4
-        CAAAAk1TRnQBSQFMAwEBAAEEAQABBAEAARMBAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
+        CAAAAk1TRnQBSQFMAwEBAAEMAQABDAEAARMBAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
         AUwDAAEQAwABAQEAAQgFAAHAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
         AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
         AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
diff --git a/Source/Core/Windows/MainForm.cs b/Source/Core/Windows/MainForm.cs
index 6178b38da3760420ffb8ac2afabc1ef08ea1747d..15a032f39aeb0c81b8cc406dc44835ef40dfc601 100644
--- a/Source/Core/Windows/MainForm.cs
+++ b/Source/Core/Windows/MainForm.cs
@@ -361,7 +361,7 @@ namespace CodeImp.DoomBuilder.Windows
 		// Generic event that invokes the tagged action
 		public void InvokeTaggedAction(object sender, EventArgs e)
 		{
-			string asmname;
+			//string asmname;
 			
 			this.Update();
 			
diff --git a/Source/Core/Windows/PreferencesForm.Designer.cs b/Source/Core/Windows/PreferencesForm.Designer.cs
index 0fd923a3718edbbc5f5562566e6f23c37741b816..c03dccff717515094669e8b3b2ce986e90302dcf 100644
--- a/Source/Core/Windows/PreferencesForm.Designer.cs
+++ b/Source/Core/Windows/PreferencesForm.Designer.cs
@@ -29,1396 +29,1407 @@ namespace CodeImp.DoomBuilder.Windows
 		/// </summary>
 		private void InitializeComponent()
 		{
-			this.components = new System.ComponentModel.Container();
-			System.Windows.Forms.Label label7;
-			System.Windows.Forms.Label label6;
-			System.Windows.Forms.Label label5;
-			System.Windows.Forms.GroupBox groupBox1;
-			System.Windows.Forms.Label label1;
-			System.Windows.Forms.Label label18;
-			System.Windows.Forms.Label label20;
-			System.Windows.Forms.Label label21;
-			this.cbSynchCameras = new System.Windows.Forms.CheckBox();
-			this.showtexturesizes = new System.Windows.Forms.CheckBox();
-			this.scriptontop = new System.Windows.Forms.CheckBox();
-			this.zoomfactor = new Dotnetrix.Controls.TrackBar();
-			this.zoomfactorlabel = new System.Windows.Forms.Label();
-			this.label19 = new System.Windows.Forms.Label();
-			this.autoscrollspeed = new Dotnetrix.Controls.TrackBar();
-			this.autoscrollspeedlabel = new System.Windows.Forms.Label();
-			this.label15 = new System.Windows.Forms.Label();
-			this.previewsize = new Dotnetrix.Controls.TrackBar();
-			this.previewsizelabel = new System.Windows.Forms.Label();
-			this.label12 = new System.Windows.Forms.Label();
-			this.label14 = new System.Windows.Forms.Label();
-			this.defaultviewmode = new System.Windows.Forms.ComboBox();
-			this.keyusedlabel = new System.Windows.Forms.Label();
-			this.colorsgroup1 = new System.Windows.Forms.GroupBox();
-			this.colorMD3 = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.label2 = new System.Windows.Forms.Label();
-			this.colorgrid64 = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.squarethings = new System.Windows.Forms.CheckBox();
-			this.colorgrid = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.doublesidedalphalabel = new System.Windows.Forms.Label();
-			this.colorindication = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorsoundlinedefs = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorspeciallinedefs = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.qualitydisplay = new System.Windows.Forms.CheckBox();
-			this.colorbackcolor = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorselection = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorvertices = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.doublesidedalpha = new Dotnetrix.Controls.TrackBar();
-			this.colorhighlight = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorlinedefs = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.cancel = new System.Windows.Forms.Button();
-			this.apply = new System.Windows.Forms.Button();
-			this.tabs = new System.Windows.Forms.TabControl();
-			this.tabinterface = new System.Windows.Forms.TabPage();
-			this.groupBox5 = new System.Windows.Forms.GroupBox();
-			this.toolbar_gzdoom = new System.Windows.Forms.CheckBox();
-			this.toolbar_file = new System.Windows.Forms.CheckBox();
-			this.toolbar_testing = new System.Windows.Forms.CheckBox();
-			this.toolbar_geometry = new System.Windows.Forms.CheckBox();
-			this.toolbar_viewmodes = new System.Windows.Forms.CheckBox();
-			this.toolbar_filter = new System.Windows.Forms.CheckBox();
-			this.toolbar_prefabs = new System.Windows.Forms.CheckBox();
-			this.toolbar_copy = new System.Windows.Forms.CheckBox();
-			this.toolbar_undo = new System.Windows.Forms.CheckBox();
-			this.toolbar_script = new System.Windows.Forms.CheckBox();
-			this.groupBox4 = new System.Windows.Forms.GroupBox();
-			this.collapsedockers = new System.Windows.Forms.CheckBox();
-			this.dockersposition = new System.Windows.Forms.ComboBox();
-			this.label17 = new System.Windows.Forms.Label();
-			this.groupBox2 = new System.Windows.Forms.GroupBox();
-			this.viewdistance = new Dotnetrix.Controls.TrackBar();
-			this.movespeed = new Dotnetrix.Controls.TrackBar();
-			this.mousespeed = new Dotnetrix.Controls.TrackBar();
-			this.fieldofview = new Dotnetrix.Controls.TrackBar();
-			this.viewdistancelabel = new System.Windows.Forms.Label();
-			this.label13 = new System.Windows.Forms.Label();
-			this.invertyaxis = new System.Windows.Forms.CheckBox();
-			this.movespeedlabel = new System.Windows.Forms.Label();
-			this.label11 = new System.Windows.Forms.Label();
-			this.mousespeedlabel = new System.Windows.Forms.Label();
-			this.label9 = new System.Windows.Forms.Label();
-			this.fieldofviewlabel = new System.Windows.Forms.Label();
-			this.label4 = new System.Windows.Forms.Label();
-			this.tabkeys = new System.Windows.Forms.TabPage();
-			this.listactions = new System.Windows.Forms.ListView();
-			this.columncontrolaction = new System.Windows.Forms.ColumnHeader();
-			this.columncontrolkey = new System.Windows.Forms.ColumnHeader();
-			this.actioncontrolpanel = new System.Windows.Forms.GroupBox();
-			this.keyusedlist = new System.Windows.Forms.ListBox();
-			this.disregardshiftlabel = new System.Windows.Forms.Label();
-			this.actioncontrol = new System.Windows.Forms.ComboBox();
-			this.actiontitle = new System.Windows.Forms.Label();
-			this.actioncontrolclear = new System.Windows.Forms.Button();
-			this.actionkey = new System.Windows.Forms.TextBox();
-			this.actiondescription = new System.Windows.Forms.Label();
-			this.tabcolors = new System.Windows.Forms.TabPage();
-			this.appearancegroup1 = new System.Windows.Forms.GroupBox();
-			this.labelDynLightIntensity = new System.Windows.Forms.Label();
-			this.tbDynLightIntensity = new Dotnetrix.Controls.TrackBar();
-			this.labelDynLightSize = new System.Windows.Forms.Label();
-			this.tbDynLightSize = new Dotnetrix.Controls.TrackBar();
-			this.labelDynLightCount = new System.Windows.Forms.Label();
-			this.tbDynLightCount = new Dotnetrix.Controls.TrackBar();
-			this.animatevisualselection = new System.Windows.Forms.CheckBox();
-			this.blackbrowsers = new System.Windows.Forms.CheckBox();
-			this.visualbilinear = new System.Windows.Forms.CheckBox();
-			this.classicbilinear = new System.Windows.Forms.CheckBox();
-			this.imagebrightnesslabel = new System.Windows.Forms.Label();
-			this.imagebrightness = new Dotnetrix.Controls.TrackBar();
-			this.colorsgroup3 = new System.Windows.Forms.GroupBox();
-			this.scripttabwidth = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
-			this.scriptautoindent = new System.Windows.Forms.CheckBox();
-			this.label10 = new System.Windows.Forms.Label();
-			this.panel1 = new System.Windows.Forms.Panel();
-			this.scriptfontlabel = new System.Windows.Forms.Label();
-			this.scriptfontsize = new System.Windows.Forms.ComboBox();
-			this.label8 = new System.Windows.Forms.Label();
-			this.scriptfontbold = new System.Windows.Forms.CheckBox();
-			this.scriptfontname = new System.Windows.Forms.ComboBox();
-			this.label3 = new System.Windows.Forms.Label();
-			this.colorconstants = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorliterals = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorscriptbackground = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorkeywords = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorlinenumbers = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorcomments = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.colorplaintext = new CodeImp.DoomBuilder.Controls.ColorControl();
-			this.tabpasting = new System.Windows.Forms.TabPage();
-			this.label16 = new System.Windows.Forms.Label();
-			this.pasteoptions = new CodeImp.DoomBuilder.Controls.PasteOptionsControl();
-			this.cbStretchModels = new System.Windows.Forms.CheckBox();
-			this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
-			label7 = new System.Windows.Forms.Label();
-			label6 = new System.Windows.Forms.Label();
-			label5 = new System.Windows.Forms.Label();
-			groupBox1 = new System.Windows.Forms.GroupBox();
-			label1 = new System.Windows.Forms.Label();
-			label18 = new System.Windows.Forms.Label();
-			label20 = new System.Windows.Forms.Label();
-			label21 = new System.Windows.Forms.Label();
-			groupBox1.SuspendLayout();
-			((System.ComponentModel.ISupportInitialize)(this.zoomfactor)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.autoscrollspeed)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.previewsize)).BeginInit();
-			this.colorsgroup1.SuspendLayout();
-			((System.ComponentModel.ISupportInitialize)(this.doublesidedalpha)).BeginInit();
-			this.tabs.SuspendLayout();
-			this.tabinterface.SuspendLayout();
-			this.groupBox5.SuspendLayout();
-			this.groupBox4.SuspendLayout();
-			this.groupBox2.SuspendLayout();
-			((System.ComponentModel.ISupportInitialize)(this.viewdistance)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.movespeed)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.mousespeed)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.fieldofview)).BeginInit();
-			this.tabkeys.SuspendLayout();
-			this.actioncontrolpanel.SuspendLayout();
-			this.tabcolors.SuspendLayout();
-			this.appearancegroup1.SuspendLayout();
-			((System.ComponentModel.ISupportInitialize)(this.tbDynLightIntensity)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.tbDynLightSize)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.tbDynLightCount)).BeginInit();
-			((System.ComponentModel.ISupportInitialize)(this.imagebrightness)).BeginInit();
-			this.colorsgroup3.SuspendLayout();
-			this.panel1.SuspendLayout();
-			this.tabpasting.SuspendLayout();
-			this.SuspendLayout();
-			// 
-			// label7
-			// 
-			label7.AutoSize = true;
-			label7.Location = new System.Drawing.Point(20, 172);
-			label7.Name = "label7";
-			label7.Size = new System.Drawing.Size(187, 14);
-			label7.TabIndex = 7;
-			label7.Text = "Or select a special input control here:";
-			// 
-			// label6
-			// 
-			label6.AutoSize = true;
-			label6.Location = new System.Drawing.Point(20, 30);
-			label6.Name = "label6";
-			label6.Size = new System.Drawing.Size(41, 14);
-			label6.TabIndex = 2;
-			label6.Text = "Action:";
-			// 
-			// label5
-			// 
-			label5.AutoSize = true;
-			label5.Location = new System.Drawing.Point(20, 122);
-			label5.Name = "label5";
-			label5.Size = new System.Drawing.Size(200, 14);
-			label5.TabIndex = 4;
-			label5.Text = "Press the desired key combination here:";
-			// 
-			// groupBox1
-			// 
-			groupBox1.Controls.Add(this.cbSynchCameras);
-			groupBox1.Controls.Add(this.showtexturesizes);
-			groupBox1.Controls.Add(this.scriptontop);
-			groupBox1.Controls.Add(this.zoomfactor);
-			groupBox1.Controls.Add(this.zoomfactorlabel);
-			groupBox1.Controls.Add(this.label19);
-			groupBox1.Controls.Add(this.autoscrollspeed);
-			groupBox1.Controls.Add(this.autoscrollspeedlabel);
-			groupBox1.Controls.Add(this.label15);
-			groupBox1.Controls.Add(this.previewsize);
-			groupBox1.Controls.Add(this.previewsizelabel);
-			groupBox1.Controls.Add(this.label12);
-			groupBox1.Controls.Add(this.label14);
-			groupBox1.Controls.Add(this.defaultviewmode);
-			groupBox1.Location = new System.Drawing.Point(8, 8);
-			groupBox1.Name = "groupBox1";
-			groupBox1.Size = new System.Drawing.Size(331, 313);
-			groupBox1.TabIndex = 0;
-			groupBox1.TabStop = false;
-			groupBox1.Text = " Options ";
-			// 
-			// cbSynchCameras
-			// 
-			this.cbSynchCameras.AutoSize = true;
-			this.cbSynchCameras.Location = new System.Drawing.Point(32, 282);
-			this.cbSynchCameras.Name = "cbSynchCameras";
-			this.cbSynchCameras.Size = new System.Drawing.Size(264, 18);
-			this.cbSynchCameras.TabIndex = 42;
-			this.cbSynchCameras.Text = "Sync camera position between 2D and 3D modes";
-			this.cbSynchCameras.UseVisualStyleBackColor = true;
-			// 
-			// showtexturesizes
-			// 
-			this.showtexturesizes.AutoSize = true;
-			this.showtexturesizes.Location = new System.Drawing.Point(32, 258);
-			this.showtexturesizes.Name = "showtexturesizes";
-			this.showtexturesizes.Size = new System.Drawing.Size(222, 18);
-			this.showtexturesizes.TabIndex = 41;
-			this.showtexturesizes.Text = "Show texture and flat sizes in browsers";
-			this.showtexturesizes.UseVisualStyleBackColor = true;
-			// 
-			// scriptontop
-			// 
-			this.scriptontop.AutoSize = true;
-			this.scriptontop.Location = new System.Drawing.Point(32, 234);
-			this.scriptontop.Name = "scriptontop";
-			this.scriptontop.Size = new System.Drawing.Size(237, 18);
-			this.scriptontop.TabIndex = 40;
-			this.scriptontop.Text = "Script Editor always on top of main window";
-			this.scriptontop.UseVisualStyleBackColor = true;
-			// 
-			// zoomfactor
-			// 
-			this.zoomfactor.LargeChange = 1;
-			this.zoomfactor.Location = new System.Drawing.Point(127, 181);
-			this.zoomfactor.Minimum = 1;
-			this.zoomfactor.Name = "zoomfactor";
-			this.zoomfactor.Size = new System.Drawing.Size(116, 45);
-			this.zoomfactor.TabIndex = 37;
-			this.zoomfactor.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.zoomfactor.Value = 3;
-			this.zoomfactor.ValueChanged += new System.EventHandler(this.zoomfactor_ValueChanged);
-			// 
-			// zoomfactorlabel
-			// 
-			this.zoomfactorlabel.AutoSize = true;
-			this.zoomfactorlabel.Location = new System.Drawing.Point(249, 193);
-			this.zoomfactorlabel.Name = "zoomfactorlabel";
-			this.zoomfactorlabel.Size = new System.Drawing.Size(29, 14);
-			this.zoomfactorlabel.TabIndex = 39;
-			this.zoomfactorlabel.Text = "30%";
-			// 
-			// label19
-			// 
-			this.label19.AutoSize = true;
-			this.label19.Location = new System.Drawing.Point(52, 193);
-			this.label19.Name = "label19";
-			this.label19.Size = new System.Drawing.Size(69, 14);
-			this.label19.TabIndex = 38;
-			this.label19.Text = "Zoom factor:";
-			// 
-			// autoscrollspeed
-			// 
-			this.autoscrollspeed.LargeChange = 1;
-			this.autoscrollspeed.Location = new System.Drawing.Point(127, 129);
-			this.autoscrollspeed.Maximum = 5;
-			this.autoscrollspeed.Name = "autoscrollspeed";
-			this.autoscrollspeed.Size = new System.Drawing.Size(116, 45);
-			this.autoscrollspeed.TabIndex = 2;
-			this.autoscrollspeed.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.autoscrollspeed.ValueChanged += new System.EventHandler(this.autoscrollspeed_ValueChanged);
-			// 
-			// autoscrollspeedlabel
-			// 
-			this.autoscrollspeedlabel.AutoSize = true;
-			this.autoscrollspeedlabel.Location = new System.Drawing.Point(249, 141);
-			this.autoscrollspeedlabel.Name = "autoscrollspeedlabel";
-			this.autoscrollspeedlabel.Size = new System.Drawing.Size(23, 14);
-			this.autoscrollspeedlabel.TabIndex = 36;
-			this.autoscrollspeedlabel.Text = "Off";
-			// 
-			// label15
-			// 
-			this.label15.AutoSize = true;
-			this.label15.Location = new System.Drawing.Point(29, 141);
-			this.label15.Name = "label15";
-			this.label15.Size = new System.Drawing.Size(92, 14);
-			this.label15.TabIndex = 35;
-			this.label15.Text = "Autoscroll speed:";
-			// 
-			// previewsize
-			// 
-			this.previewsize.LargeChange = 1;
-			this.previewsize.Location = new System.Drawing.Point(127, 75);
-			this.previewsize.Maximum = 5;
-			this.previewsize.Name = "previewsize";
-			this.previewsize.Size = new System.Drawing.Size(116, 45);
-			this.previewsize.TabIndex = 1;
-			this.previewsize.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.previewsize.Value = 5;
-			this.previewsize.ValueChanged += new System.EventHandler(this.previewsize_ValueChanged);
-			// 
-			// previewsizelabel
-			// 
-			this.previewsizelabel.AutoSize = true;
-			this.previewsizelabel.Location = new System.Drawing.Point(249, 87);
-			this.previewsizelabel.Name = "previewsizelabel";
-			this.previewsizelabel.Size = new System.Drawing.Size(55, 14);
-			this.previewsizelabel.TabIndex = 33;
-			this.previewsizelabel.Text = "128 x 128";
-			// 
-			// label12
-			// 
-			this.label12.AutoSize = true;
-			this.label12.Location = new System.Drawing.Point(17, 87);
-			this.label12.Name = "label12";
-			this.label12.Size = new System.Drawing.Size(104, 14);
-			this.label12.TabIndex = 32;
-			this.label12.Text = "Preview image size:";
-			// 
-			// label14
-			// 
-			this.label14.AutoSize = true;
-			this.label14.Location = new System.Drawing.Point(50, 35);
-			this.label14.Name = "label14";
-			this.label14.Size = new System.Drawing.Size(71, 14);
-			this.label14.TabIndex = 14;
-			this.label14.Text = "Default view:";
-			// 
-			// defaultviewmode
-			// 
-			this.defaultviewmode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.defaultviewmode.FormattingEnabled = true;
-			this.defaultviewmode.Items.AddRange(new object[] {
+            this.components = new System.ComponentModel.Container();
+            System.Windows.Forms.Label label7;
+            System.Windows.Forms.Label label6;
+            System.Windows.Forms.Label label5;
+            System.Windows.Forms.GroupBox groupBox1;
+            System.Windows.Forms.Label label1;
+            System.Windows.Forms.Label label18;
+            System.Windows.Forms.Label label20;
+            System.Windows.Forms.Label label21;
+            this.cbSynchCameras = new System.Windows.Forms.CheckBox();
+            this.showtexturesizes = new System.Windows.Forms.CheckBox();
+            this.scriptontop = new System.Windows.Forms.CheckBox();
+            this.zoomfactor = new Dotnetrix.Controls.TrackBar();
+            this.zoomfactorlabel = new System.Windows.Forms.Label();
+            this.label19 = new System.Windows.Forms.Label();
+            this.autoscrollspeed = new Dotnetrix.Controls.TrackBar();
+            this.autoscrollspeedlabel = new System.Windows.Forms.Label();
+            this.label15 = new System.Windows.Forms.Label();
+            this.previewsize = new Dotnetrix.Controls.TrackBar();
+            this.previewsizelabel = new System.Windows.Forms.Label();
+            this.label12 = new System.Windows.Forms.Label();
+            this.label14 = new System.Windows.Forms.Label();
+            this.defaultviewmode = new System.Windows.Forms.ComboBox();
+            this.keyusedlabel = new System.Windows.Forms.Label();
+            this.colorsgroup1 = new System.Windows.Forms.GroupBox();
+            this.cbStretchModels = new System.Windows.Forms.CheckBox();
+            this.colorMD3 = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.label2 = new System.Windows.Forms.Label();
+            this.colorgrid64 = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.squarethings = new System.Windows.Forms.CheckBox();
+            this.colorgrid = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.doublesidedalphalabel = new System.Windows.Forms.Label();
+            this.colorindication = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorsoundlinedefs = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorspeciallinedefs = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.qualitydisplay = new System.Windows.Forms.CheckBox();
+            this.colorbackcolor = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorselection = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorvertices = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.doublesidedalpha = new Dotnetrix.Controls.TrackBar();
+            this.colorhighlight = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorlinedefs = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.cancel = new System.Windows.Forms.Button();
+            this.apply = new System.Windows.Forms.Button();
+            this.tabs = new System.Windows.Forms.TabControl();
+            this.tabinterface = new System.Windows.Forms.TabPage();
+            this.groupBox5 = new System.Windows.Forms.GroupBox();
+            this.toolbar_gzdoom = new System.Windows.Forms.CheckBox();
+            this.toolbar_file = new System.Windows.Forms.CheckBox();
+            this.toolbar_testing = new System.Windows.Forms.CheckBox();
+            this.toolbar_geometry = new System.Windows.Forms.CheckBox();
+            this.toolbar_viewmodes = new System.Windows.Forms.CheckBox();
+            this.toolbar_filter = new System.Windows.Forms.CheckBox();
+            this.toolbar_prefabs = new System.Windows.Forms.CheckBox();
+            this.toolbar_copy = new System.Windows.Forms.CheckBox();
+            this.toolbar_undo = new System.Windows.Forms.CheckBox();
+            this.toolbar_script = new System.Windows.Forms.CheckBox();
+            this.groupBox4 = new System.Windows.Forms.GroupBox();
+            this.collapsedockers = new System.Windows.Forms.CheckBox();
+            this.dockersposition = new System.Windows.Forms.ComboBox();
+            this.label17 = new System.Windows.Forms.Label();
+            this.groupBox2 = new System.Windows.Forms.GroupBox();
+            this.viewdistance = new Dotnetrix.Controls.TrackBar();
+            this.movespeed = new Dotnetrix.Controls.TrackBar();
+            this.mousespeed = new Dotnetrix.Controls.TrackBar();
+            this.fieldofview = new Dotnetrix.Controls.TrackBar();
+            this.viewdistancelabel = new System.Windows.Forms.Label();
+            this.label13 = new System.Windows.Forms.Label();
+            this.invertyaxis = new System.Windows.Forms.CheckBox();
+            this.movespeedlabel = new System.Windows.Forms.Label();
+            this.label11 = new System.Windows.Forms.Label();
+            this.mousespeedlabel = new System.Windows.Forms.Label();
+            this.label9 = new System.Windows.Forms.Label();
+            this.fieldofviewlabel = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.tabkeys = new System.Windows.Forms.TabPage();
+            this.listactions = new System.Windows.Forms.ListView();
+            this.columncontrolaction = new System.Windows.Forms.ColumnHeader();
+            this.columncontrolkey = new System.Windows.Forms.ColumnHeader();
+            this.actioncontrolpanel = new System.Windows.Forms.GroupBox();
+            this.keyusedlist = new System.Windows.Forms.ListBox();
+            this.disregardshiftlabel = new System.Windows.Forms.Label();
+            this.actioncontrol = new System.Windows.Forms.ComboBox();
+            this.actiontitle = new System.Windows.Forms.Label();
+            this.actioncontrolclear = new System.Windows.Forms.Button();
+            this.actionkey = new System.Windows.Forms.TextBox();
+            this.actiondescription = new System.Windows.Forms.Label();
+            this.tabcolors = new System.Windows.Forms.TabPage();
+            this.appearancegroup1 = new System.Windows.Forms.GroupBox();
+            this.labelDynLightIntensity = new System.Windows.Forms.Label();
+            this.tbDynLightIntensity = new Dotnetrix.Controls.TrackBar();
+            this.labelDynLightSize = new System.Windows.Forms.Label();
+            this.tbDynLightSize = new Dotnetrix.Controls.TrackBar();
+            this.labelDynLightCount = new System.Windows.Forms.Label();
+            this.tbDynLightCount = new Dotnetrix.Controls.TrackBar();
+            this.animatevisualselection = new System.Windows.Forms.CheckBox();
+            this.blackbrowsers = new System.Windows.Forms.CheckBox();
+            this.visualbilinear = new System.Windows.Forms.CheckBox();
+            this.classicbilinear = new System.Windows.Forms.CheckBox();
+            this.imagebrightnesslabel = new System.Windows.Forms.Label();
+            this.imagebrightness = new Dotnetrix.Controls.TrackBar();
+            this.colorsgroup3 = new System.Windows.Forms.GroupBox();
+            this.scripttabwidth = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
+            this.scriptautoindent = new System.Windows.Forms.CheckBox();
+            this.label10 = new System.Windows.Forms.Label();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.scriptfontlabel = new System.Windows.Forms.Label();
+            this.scriptfontsize = new System.Windows.Forms.ComboBox();
+            this.label8 = new System.Windows.Forms.Label();
+            this.scriptfontbold = new System.Windows.Forms.CheckBox();
+            this.scriptfontname = new System.Windows.Forms.ComboBox();
+            this.label3 = new System.Windows.Forms.Label();
+            this.colorconstants = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorliterals = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorscriptbackground = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorkeywords = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorlinenumbers = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorcomments = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.colorplaintext = new CodeImp.DoomBuilder.Controls.ColorControl();
+            this.tabpasting = new System.Windows.Forms.TabPage();
+            this.label16 = new System.Windows.Forms.Label();
+            this.pasteoptions = new CodeImp.DoomBuilder.Controls.PasteOptionsControl();
+            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
+            label7 = new System.Windows.Forms.Label();
+            label6 = new System.Windows.Forms.Label();
+            label5 = new System.Windows.Forms.Label();
+            groupBox1 = new System.Windows.Forms.GroupBox();
+            label1 = new System.Windows.Forms.Label();
+            label18 = new System.Windows.Forms.Label();
+            label20 = new System.Windows.Forms.Label();
+            label21 = new System.Windows.Forms.Label();
+            groupBox1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.zoomfactor)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.autoscrollspeed)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.previewsize)).BeginInit();
+            this.colorsgroup1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.doublesidedalpha)).BeginInit();
+            this.tabs.SuspendLayout();
+            this.tabinterface.SuspendLayout();
+            this.groupBox5.SuspendLayout();
+            this.groupBox4.SuspendLayout();
+            this.groupBox2.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.viewdistance)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.movespeed)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.mousespeed)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.fieldofview)).BeginInit();
+            this.tabkeys.SuspendLayout();
+            this.actioncontrolpanel.SuspendLayout();
+            this.tabcolors.SuspendLayout();
+            this.appearancegroup1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbDynLightIntensity)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbDynLightSize)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbDynLightCount)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.imagebrightness)).BeginInit();
+            this.colorsgroup3.SuspendLayout();
+            this.panel1.SuspendLayout();
+            this.tabpasting.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // label7
+            // 
+            label7.AutoSize = true;
+            label7.Location = new System.Drawing.Point(20, 172);
+            label7.Name = "label7";
+            label7.Size = new System.Drawing.Size(187, 14);
+            label7.TabIndex = 7;
+            label7.Text = "Or select a special input control here:";
+            // 
+            // label6
+            // 
+            label6.AutoSize = true;
+            label6.Location = new System.Drawing.Point(20, 30);
+            label6.Name = "label6";
+            label6.Size = new System.Drawing.Size(41, 14);
+            label6.TabIndex = 2;
+            label6.Text = "Action:";
+            // 
+            // label5
+            // 
+            label5.AutoSize = true;
+            label5.Location = new System.Drawing.Point(20, 122);
+            label5.Name = "label5";
+            label5.Size = new System.Drawing.Size(200, 14);
+            label5.TabIndex = 4;
+            label5.Text = "Press the desired key combination here:";
+            // 
+            // groupBox1
+            // 
+            groupBox1.Controls.Add(this.cbSynchCameras);
+            groupBox1.Controls.Add(this.showtexturesizes);
+            groupBox1.Controls.Add(this.scriptontop);
+            groupBox1.Controls.Add(this.zoomfactor);
+            groupBox1.Controls.Add(this.zoomfactorlabel);
+            groupBox1.Controls.Add(this.label19);
+            groupBox1.Controls.Add(this.autoscrollspeed);
+            groupBox1.Controls.Add(this.autoscrollspeedlabel);
+            groupBox1.Controls.Add(this.label15);
+            groupBox1.Controls.Add(this.previewsize);
+            groupBox1.Controls.Add(this.previewsizelabel);
+            groupBox1.Controls.Add(this.label12);
+            groupBox1.Controls.Add(this.label14);
+            groupBox1.Controls.Add(this.defaultviewmode);
+            groupBox1.Location = new System.Drawing.Point(8, 8);
+            groupBox1.Name = "groupBox1";
+            groupBox1.Size = new System.Drawing.Size(331, 313);
+            groupBox1.TabIndex = 0;
+            groupBox1.TabStop = false;
+            groupBox1.Text = " Options ";
+            // 
+            // cbSynchCameras
+            // 
+            this.cbSynchCameras.AutoSize = true;
+            this.cbSynchCameras.Location = new System.Drawing.Point(32, 282);
+            this.cbSynchCameras.Name = "cbSynchCameras";
+            this.cbSynchCameras.Size = new System.Drawing.Size(264, 18);
+            this.cbSynchCameras.TabIndex = 42;
+            this.cbSynchCameras.Text = "Sync camera position between 2D and 3D modes";
+            this.cbSynchCameras.UseVisualStyleBackColor = true;
+            // 
+            // showtexturesizes
+            // 
+            this.showtexturesizes.AutoSize = true;
+            this.showtexturesizes.Location = new System.Drawing.Point(32, 258);
+            this.showtexturesizes.Name = "showtexturesizes";
+            this.showtexturesizes.Size = new System.Drawing.Size(222, 18);
+            this.showtexturesizes.TabIndex = 41;
+            this.showtexturesizes.Text = "Show texture and flat sizes in browsers";
+            this.showtexturesizes.UseVisualStyleBackColor = true;
+            // 
+            // scriptontop
+            // 
+            this.scriptontop.AutoSize = true;
+            this.scriptontop.Location = new System.Drawing.Point(32, 234);
+            this.scriptontop.Name = "scriptontop";
+            this.scriptontop.Size = new System.Drawing.Size(237, 18);
+            this.scriptontop.TabIndex = 40;
+            this.scriptontop.Text = "Script Editor always on top of main window";
+            this.scriptontop.UseVisualStyleBackColor = true;
+            // 
+            // zoomfactor
+            // 
+            this.zoomfactor.LargeChange = 1;
+            this.zoomfactor.Location = new System.Drawing.Point(127, 181);
+            this.zoomfactor.Minimum = 1;
+            this.zoomfactor.Name = "zoomfactor";
+            this.zoomfactor.Size = new System.Drawing.Size(116, 45);
+            this.zoomfactor.TabIndex = 37;
+            this.zoomfactor.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.zoomfactor.Value = 3;
+            this.zoomfactor.ValueChanged += new System.EventHandler(this.zoomfactor_ValueChanged);
+            // 
+            // zoomfactorlabel
+            // 
+            this.zoomfactorlabel.AutoSize = true;
+            this.zoomfactorlabel.Location = new System.Drawing.Point(249, 193);
+            this.zoomfactorlabel.Name = "zoomfactorlabel";
+            this.zoomfactorlabel.Size = new System.Drawing.Size(29, 14);
+            this.zoomfactorlabel.TabIndex = 39;
+            this.zoomfactorlabel.Text = "30%";
+            // 
+            // label19
+            // 
+            this.label19.AutoSize = true;
+            this.label19.Location = new System.Drawing.Point(52, 193);
+            this.label19.Name = "label19";
+            this.label19.Size = new System.Drawing.Size(69, 14);
+            this.label19.TabIndex = 38;
+            this.label19.Text = "Zoom factor:";
+            // 
+            // autoscrollspeed
+            // 
+            this.autoscrollspeed.LargeChange = 1;
+            this.autoscrollspeed.Location = new System.Drawing.Point(127, 129);
+            this.autoscrollspeed.Maximum = 5;
+            this.autoscrollspeed.Name = "autoscrollspeed";
+            this.autoscrollspeed.Size = new System.Drawing.Size(116, 45);
+            this.autoscrollspeed.TabIndex = 2;
+            this.autoscrollspeed.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.autoscrollspeed.ValueChanged += new System.EventHandler(this.autoscrollspeed_ValueChanged);
+            // 
+            // autoscrollspeedlabel
+            // 
+            this.autoscrollspeedlabel.AutoSize = true;
+            this.autoscrollspeedlabel.Location = new System.Drawing.Point(249, 141);
+            this.autoscrollspeedlabel.Name = "autoscrollspeedlabel";
+            this.autoscrollspeedlabel.Size = new System.Drawing.Size(23, 14);
+            this.autoscrollspeedlabel.TabIndex = 36;
+            this.autoscrollspeedlabel.Text = "Off";
+            // 
+            // label15
+            // 
+            this.label15.AutoSize = true;
+            this.label15.Location = new System.Drawing.Point(29, 141);
+            this.label15.Name = "label15";
+            this.label15.Size = new System.Drawing.Size(92, 14);
+            this.label15.TabIndex = 35;
+            this.label15.Text = "Autoscroll speed:";
+            // 
+            // previewsize
+            // 
+            this.previewsize.LargeChange = 1;
+            this.previewsize.Location = new System.Drawing.Point(127, 75);
+            this.previewsize.Maximum = 5;
+            this.previewsize.Name = "previewsize";
+            this.previewsize.Size = new System.Drawing.Size(116, 45);
+            this.previewsize.TabIndex = 1;
+            this.previewsize.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.previewsize.Value = 5;
+            this.previewsize.ValueChanged += new System.EventHandler(this.previewsize_ValueChanged);
+            // 
+            // previewsizelabel
+            // 
+            this.previewsizelabel.AutoSize = true;
+            this.previewsizelabel.Location = new System.Drawing.Point(249, 87);
+            this.previewsizelabel.Name = "previewsizelabel";
+            this.previewsizelabel.Size = new System.Drawing.Size(55, 14);
+            this.previewsizelabel.TabIndex = 33;
+            this.previewsizelabel.Text = "128 x 128";
+            // 
+            // label12
+            // 
+            this.label12.AutoSize = true;
+            this.label12.Location = new System.Drawing.Point(17, 87);
+            this.label12.Name = "label12";
+            this.label12.Size = new System.Drawing.Size(104, 14);
+            this.label12.TabIndex = 32;
+            this.label12.Text = "Preview image size:";
+            // 
+            // label14
+            // 
+            this.label14.AutoSize = true;
+            this.label14.Location = new System.Drawing.Point(50, 35);
+            this.label14.Name = "label14";
+            this.label14.Size = new System.Drawing.Size(71, 14);
+            this.label14.TabIndex = 14;
+            this.label14.Text = "Default view:";
+            // 
+            // defaultviewmode
+            // 
+            this.defaultviewmode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.defaultviewmode.FormattingEnabled = true;
+            this.defaultviewmode.Items.AddRange(new object[] {
             "Wireframe",
             "Brightness Levels",
             "Floor Textures",
             "Ceiling Textures"});
-			this.defaultviewmode.Location = new System.Drawing.Point(135, 32);
-			this.defaultviewmode.Name = "defaultviewmode";
-			this.defaultviewmode.Size = new System.Drawing.Size(145, 22);
-			this.defaultviewmode.TabIndex = 0;
-			// 
-			// label1
-			// 
-			label1.AutoSize = true;
-			label1.Location = new System.Drawing.Point(28, 30);
-			label1.Name = "label1";
-			label1.Size = new System.Drawing.Size(147, 14);
-			label1.TabIndex = 20;
-			label1.Text = "Texture and Flats brightness:";
-			label1.TextAlign = System.Drawing.ContentAlignment.TopRight;
-			// 
-			// label18
-			// 
-			label18.AutoSize = true;
-			label18.Location = new System.Drawing.Point(22, 78);
-			label18.Name = "label18";
-			label18.Size = new System.Drawing.Size(151, 14);
-			label18.TabIndex = 25;
-			label18.Text = "Max. dynamic lights to render:";
-			label18.TextAlign = System.Drawing.ContentAlignment.TopRight;
-			// 
-			// label20
-			// 
-			label20.AutoSize = true;
-			label20.Location = new System.Drawing.Point(76, 126);
-			label20.Name = "label20";
-			label20.Size = new System.Drawing.Size(96, 14);
-			label20.TabIndex = 28;
-			label20.Text = "Dynamic light size:";
-			label20.TextAlign = System.Drawing.ContentAlignment.TopRight;
-			// 
-			// label21
-			// 
-			label21.AutoSize = true;
-			label21.Location = new System.Drawing.Point(55, 174);
-			label21.Name = "label21";
-			label21.Size = new System.Drawing.Size(116, 14);
-			label21.TabIndex = 31;
-			label21.Text = "Dynamic light intensity:";
-			label21.TextAlign = System.Drawing.ContentAlignment.TopRight;
-			// 
-			// keyusedlabel
-			// 
-			this.keyusedlabel.AutoSize = true;
-			this.keyusedlabel.Location = new System.Drawing.Point(20, 287);
-			this.keyusedlabel.Name = "keyusedlabel";
-			this.keyusedlabel.Size = new System.Drawing.Size(222, 14);
-			this.keyusedlabel.TabIndex = 10;
-			this.keyusedlabel.Text = "Key combination also used by these actions:";
-			this.keyusedlabel.Visible = false;
-			// 
-			// colorsgroup1
-			// 
-			this.colorsgroup1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)));
-			this.colorsgroup1.Controls.Add(this.cbStretchModels);
-			this.colorsgroup1.Controls.Add(this.colorMD3);
-			this.colorsgroup1.Controls.Add(this.label2);
-			this.colorsgroup1.Controls.Add(this.colorgrid64);
-			this.colorsgroup1.Controls.Add(this.squarethings);
-			this.colorsgroup1.Controls.Add(this.colorgrid);
-			this.colorsgroup1.Controls.Add(this.doublesidedalphalabel);
-			this.colorsgroup1.Controls.Add(this.colorindication);
-			this.colorsgroup1.Controls.Add(this.colorsoundlinedefs);
-			this.colorsgroup1.Controls.Add(this.colorspeciallinedefs);
-			this.colorsgroup1.Controls.Add(this.qualitydisplay);
-			this.colorsgroup1.Controls.Add(this.colorbackcolor);
-			this.colorsgroup1.Controls.Add(this.colorselection);
-			this.colorsgroup1.Controls.Add(this.colorvertices);
-			this.colorsgroup1.Controls.Add(this.doublesidedalpha);
-			this.colorsgroup1.Controls.Add(this.colorhighlight);
-			this.colorsgroup1.Controls.Add(this.colorlinedefs);
-			this.colorsgroup1.Location = new System.Drawing.Point(8, 8);
-			this.colorsgroup1.Name = "colorsgroup1";
-			this.colorsgroup1.Size = new System.Drawing.Size(203, 493);
-			this.colorsgroup1.TabIndex = 0;
-			this.colorsgroup1.TabStop = false;
-			this.colorsgroup1.Text = " Display ";
-			this.colorsgroup1.Visible = false;
-			// 
-			// colorMD3
-			// 
-			this.colorMD3.BackColor = System.Drawing.Color.Transparent;
-			this.colorMD3.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorMD3.Label = "Model wireframe:";
-			this.colorMD3.Location = new System.Drawing.Point(15, 297);
-			this.colorMD3.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorMD3.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorMD3.Name = "colorMD3";
-			this.colorMD3.Size = new System.Drawing.Size(168, 23);
-			this.colorMD3.TabIndex = 17;
-			// 
-			// label2
-			// 
-			this.label2.AutoSize = true;
-			this.label2.Location = new System.Drawing.Point(18, 333);
-			this.label2.Name = "label2";
-			this.label2.Size = new System.Drawing.Size(147, 14);
-			this.label2.TabIndex = 14;
-			this.label2.Text = "Passable lines transparency:";
-			this.label2.TextAlign = System.Drawing.ContentAlignment.TopRight;
-			// 
-			// colorgrid64
-			// 
-			this.colorgrid64.BackColor = System.Drawing.Color.Transparent;
-			this.colorgrid64.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorgrid64.Label = "64 Block grid:";
-			this.colorgrid64.Location = new System.Drawing.Point(15, 270);
-			this.colorgrid64.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorgrid64.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorgrid64.Name = "colorgrid64";
-			this.colorgrid64.Size = new System.Drawing.Size(168, 23);
-			this.colorgrid64.TabIndex = 9;
-			// 
-			// squarethings
-			// 
-			this.squarethings.AutoSize = true;
-			this.squarethings.Location = new System.Drawing.Point(21, 438);
-			this.squarethings.Name = "squarethings";
-			this.squarethings.Size = new System.Drawing.Size(93, 18);
-			this.squarethings.TabIndex = 8;
-			this.squarethings.Text = "Square things";
-			this.squarethings.UseVisualStyleBackColor = true;
-			// 
-			// colorgrid
-			// 
-			this.colorgrid.BackColor = System.Drawing.Color.Transparent;
-			this.colorgrid.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorgrid.Label = "Custom grid:";
-			this.colorgrid.Location = new System.Drawing.Point(15, 243);
-			this.colorgrid.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorgrid.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorgrid.Name = "colorgrid";
-			this.colorgrid.Size = new System.Drawing.Size(168, 23);
-			this.colorgrid.TabIndex = 8;
-			// 
-			// doublesidedalphalabel
-			// 
-			this.doublesidedalphalabel.AutoSize = true;
-			this.doublesidedalphalabel.Location = new System.Drawing.Point(148, 365);
-			this.doublesidedalphalabel.Name = "doublesidedalphalabel";
-			this.doublesidedalphalabel.Size = new System.Drawing.Size(23, 14);
-			this.doublesidedalphalabel.TabIndex = 16;
-			this.doublesidedalphalabel.Text = "0%";
-			// 
-			// colorindication
-			// 
-			this.colorindication.BackColor = System.Drawing.Color.Transparent;
-			this.colorindication.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorindication.Label = "Indications:";
-			this.colorindication.Location = new System.Drawing.Point(15, 216);
-			this.colorindication.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorindication.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorindication.Name = "colorindication";
-			this.colorindication.Size = new System.Drawing.Size(168, 23);
-			this.colorindication.TabIndex = 7;
-			// 
-			// colorsoundlinedefs
-			// 
-			this.colorsoundlinedefs.BackColor = System.Drawing.Color.Transparent;
-			this.colorsoundlinedefs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorsoundlinedefs.Label = "Sound lines:";
-			this.colorsoundlinedefs.Location = new System.Drawing.Point(15, 135);
-			this.colorsoundlinedefs.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorsoundlinedefs.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorsoundlinedefs.Name = "colorsoundlinedefs";
-			this.colorsoundlinedefs.Size = new System.Drawing.Size(168, 23);
-			this.colorsoundlinedefs.TabIndex = 4;
-			// 
-			// colorspeciallinedefs
-			// 
-			this.colorspeciallinedefs.BackColor = System.Drawing.Color.Transparent;
-			this.colorspeciallinedefs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorspeciallinedefs.Label = "Action lines:";
-			this.colorspeciallinedefs.Location = new System.Drawing.Point(15, 108);
-			this.colorspeciallinedefs.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorspeciallinedefs.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorspeciallinedefs.Name = "colorspeciallinedefs";
-			this.colorspeciallinedefs.Size = new System.Drawing.Size(168, 23);
-			this.colorspeciallinedefs.TabIndex = 3;
-			// 
-			// qualitydisplay
-			// 
-			this.qualitydisplay.AutoSize = true;
-			this.qualitydisplay.Location = new System.Drawing.Point(21, 413);
-			this.qualitydisplay.Name = "qualitydisplay";
-			this.qualitydisplay.Size = new System.Drawing.Size(130, 18);
-			this.qualitydisplay.TabIndex = 7;
-			this.qualitydisplay.Text = "High quality rendering";
-			this.qualitydisplay.UseVisualStyleBackColor = true;
-			// 
-			// colorbackcolor
-			// 
-			this.colorbackcolor.BackColor = System.Drawing.Color.Transparent;
-			this.colorbackcolor.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorbackcolor.Label = "Background:";
-			this.colorbackcolor.Location = new System.Drawing.Point(15, 27);
-			this.colorbackcolor.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorbackcolor.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorbackcolor.Name = "colorbackcolor";
-			this.colorbackcolor.Size = new System.Drawing.Size(168, 23);
-			this.colorbackcolor.TabIndex = 0;
-			// 
-			// colorselection
-			// 
-			this.colorselection.BackColor = System.Drawing.Color.Transparent;
-			this.colorselection.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorselection.Label = "Selection:";
-			this.colorselection.Location = new System.Drawing.Point(15, 189);
-			this.colorselection.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorselection.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorselection.Name = "colorselection";
-			this.colorselection.Size = new System.Drawing.Size(168, 23);
-			this.colorselection.TabIndex = 6;
-			// 
-			// colorvertices
-			// 
-			this.colorvertices.BackColor = System.Drawing.Color.Transparent;
-			this.colorvertices.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorvertices.Label = "Vertices:";
-			this.colorvertices.Location = new System.Drawing.Point(15, 54);
-			this.colorvertices.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorvertices.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorvertices.Name = "colorvertices";
-			this.colorvertices.Size = new System.Drawing.Size(168, 23);
-			this.colorvertices.TabIndex = 1;
-			// 
-			// doublesidedalpha
-			// 
-			this.doublesidedalpha.LargeChange = 3;
-			this.doublesidedalpha.Location = new System.Drawing.Point(11, 352);
-			this.doublesidedalpha.Name = "doublesidedalpha";
-			this.doublesidedalpha.Size = new System.Drawing.Size(130, 45);
-			this.doublesidedalpha.TabIndex = 2;
-			this.doublesidedalpha.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.doublesidedalpha.ValueChanged += new System.EventHandler(this.doublesidedalpha_ValueChanged);
-			// 
-			// colorhighlight
-			// 
-			this.colorhighlight.BackColor = System.Drawing.Color.Transparent;
-			this.colorhighlight.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorhighlight.Label = "Highlight:";
-			this.colorhighlight.Location = new System.Drawing.Point(15, 162);
-			this.colorhighlight.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorhighlight.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorhighlight.Name = "colorhighlight";
-			this.colorhighlight.Size = new System.Drawing.Size(168, 23);
-			this.colorhighlight.TabIndex = 5;
-			// 
-			// colorlinedefs
-			// 
-			this.colorlinedefs.BackColor = System.Drawing.Color.Transparent;
-			this.colorlinedefs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorlinedefs.Label = "Common lines:";
-			this.colorlinedefs.Location = new System.Drawing.Point(15, 81);
-			this.colorlinedefs.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorlinedefs.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorlinedefs.Name = "colorlinedefs";
-			this.colorlinedefs.Size = new System.Drawing.Size(168, 23);
-			this.colorlinedefs.TabIndex = 2;
-			// 
-			// cancel
-			// 
-			this.cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-			this.cancel.Location = new System.Drawing.Point(589, 558);
-			this.cancel.Name = "cancel";
-			this.cancel.Size = new System.Drawing.Size(112, 25);
-			this.cancel.TabIndex = 2;
-			this.cancel.Text = "Cancel";
-			this.cancel.UseVisualStyleBackColor = true;
-			this.cancel.Click += new System.EventHandler(this.cancel_Click);
-			// 
-			// apply
-			// 
-			this.apply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-			this.apply.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-			this.apply.Location = new System.Drawing.Point(471, 558);
-			this.apply.Name = "apply";
-			this.apply.Size = new System.Drawing.Size(112, 25);
-			this.apply.TabIndex = 1;
-			this.apply.Text = "OK";
-			this.apply.UseVisualStyleBackColor = true;
-			this.apply.Click += new System.EventHandler(this.apply_Click);
-			// 
-			// tabs
-			// 
-			this.tabs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.tabs.Controls.Add(this.tabinterface);
-			this.tabs.Controls.Add(this.tabkeys);
-			this.tabs.Controls.Add(this.tabcolors);
-			this.tabs.Controls.Add(this.tabpasting);
-			this.tabs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabs.ItemSize = new System.Drawing.Size(110, 19);
-			this.tabs.Location = new System.Drawing.Point(11, 13);
-			this.tabs.Name = "tabs";
-			this.tabs.Padding = new System.Drawing.Point(20, 3);
-			this.tabs.SelectedIndex = 0;
-			this.tabs.Size = new System.Drawing.Size(690, 536);
-			this.tabs.TabIndex = 0;
-			this.tabs.SelectedIndexChanged += new System.EventHandler(this.tabs_SelectedIndexChanged);
-			// 
-			// tabinterface
-			// 
-			this.tabinterface.Controls.Add(this.groupBox5);
-			this.tabinterface.Controls.Add(this.groupBox4);
-			this.tabinterface.Controls.Add(this.groupBox2);
-			this.tabinterface.Controls.Add(groupBox1);
-			this.tabinterface.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabinterface.Location = new System.Drawing.Point(4, 23);
-			this.tabinterface.Name = "tabinterface";
-			this.tabinterface.Padding = new System.Windows.Forms.Padding(5);
-			this.tabinterface.Size = new System.Drawing.Size(682, 509);
-			this.tabinterface.TabIndex = 0;
-			this.tabinterface.Text = "Interface";
-			this.tabinterface.UseVisualStyleBackColor = true;
-			// 
-			// groupBox5
-			// 
-			this.groupBox5.Controls.Add(this.toolbar_gzdoom);
-			this.groupBox5.Controls.Add(this.toolbar_file);
-			this.groupBox5.Controls.Add(this.toolbar_testing);
-			this.groupBox5.Controls.Add(this.toolbar_geometry);
-			this.groupBox5.Controls.Add(this.toolbar_viewmodes);
-			this.groupBox5.Controls.Add(this.toolbar_filter);
-			this.groupBox5.Controls.Add(this.toolbar_prefabs);
-			this.groupBox5.Controls.Add(this.toolbar_copy);
-			this.groupBox5.Controls.Add(this.toolbar_undo);
-			this.groupBox5.Controls.Add(this.toolbar_script);
-			this.groupBox5.Location = new System.Drawing.Point(8, 327);
-			this.groupBox5.Name = "groupBox5";
-			this.groupBox5.Size = new System.Drawing.Size(331, 173);
-			this.groupBox5.TabIndex = 4;
-			this.groupBox5.TabStop = false;
-			this.groupBox5.Text = " Toolbar Buttons ";
-			// 
-			// toolbar_gzdoom
-			// 
-			this.toolbar_gzdoom.AutoSize = true;
-			this.toolbar_gzdoom.Location = new System.Drawing.Point(188, 137);
-			this.toolbar_gzdoom.Name = "toolbar_gzdoom";
-			this.toolbar_gzdoom.Size = new System.Drawing.Size(104, 18);
-			this.toolbar_gzdoom.TabIndex = 50;
-			this.toolbar_gzdoom.Text = "GZDoom toolbar";
-			this.toolbar_gzdoom.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_file
-			// 
-			this.toolbar_file.AutoSize = true;
-			this.toolbar_file.Location = new System.Drawing.Point(32, 33);
-			this.toolbar_file.Name = "toolbar_file";
-			this.toolbar_file.Size = new System.Drawing.Size(118, 18);
-			this.toolbar_file.TabIndex = 49;
-			this.toolbar_file.Text = "New / Open / Save";
-			this.toolbar_file.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_testing
-			// 
-			this.toolbar_testing.AutoSize = true;
-			this.toolbar_testing.Location = new System.Drawing.Point(188, 111);
-			this.toolbar_testing.Name = "toolbar_testing";
-			this.toolbar_testing.Size = new System.Drawing.Size(60, 18);
-			this.toolbar_testing.TabIndex = 48;
-			this.toolbar_testing.Text = "Testing";
-			this.toolbar_testing.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_geometry
-			// 
-			this.toolbar_geometry.AutoSize = true;
-			this.toolbar_geometry.Location = new System.Drawing.Point(188, 85);
-			this.toolbar_geometry.Name = "toolbar_geometry";
-			this.toolbar_geometry.Size = new System.Drawing.Size(90, 18);
-			this.toolbar_geometry.TabIndex = 47;
-			this.toolbar_geometry.Text = "Snap / Merge";
-			this.toolbar_geometry.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_viewmodes
-			// 
-			this.toolbar_viewmodes.AutoSize = true;
-			this.toolbar_viewmodes.Location = new System.Drawing.Point(188, 59);
-			this.toolbar_viewmodes.Name = "toolbar_viewmodes";
-			this.toolbar_viewmodes.Size = new System.Drawing.Size(87, 18);
-			this.toolbar_viewmodes.TabIndex = 46;
-			this.toolbar_viewmodes.Text = "View Modes";
-			this.toolbar_viewmodes.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_filter
-			// 
-			this.toolbar_filter.AutoSize = true;
-			this.toolbar_filter.Location = new System.Drawing.Point(188, 33);
-			this.toolbar_filter.Name = "toolbar_filter";
-			this.toolbar_filter.Size = new System.Drawing.Size(84, 18);
-			this.toolbar_filter.TabIndex = 45;
-			this.toolbar_filter.Text = "Things Filter";
-			this.toolbar_filter.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_prefabs
-			// 
-			this.toolbar_prefabs.AutoSize = true;
-			this.toolbar_prefabs.Location = new System.Drawing.Point(32, 137);
-			this.toolbar_prefabs.Name = "toolbar_prefabs";
-			this.toolbar_prefabs.Size = new System.Drawing.Size(64, 18);
-			this.toolbar_prefabs.TabIndex = 44;
-			this.toolbar_prefabs.Text = "Prefabs";
-			this.toolbar_prefabs.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_copy
-			// 
-			this.toolbar_copy.AutoSize = true;
-			this.toolbar_copy.Location = new System.Drawing.Point(32, 111);
-			this.toolbar_copy.Name = "toolbar_copy";
-			this.toolbar_copy.Size = new System.Drawing.Size(112, 18);
-			this.toolbar_copy.TabIndex = 43;
-			this.toolbar_copy.Text = "Cut / Copy / Paste";
-			this.toolbar_copy.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_undo
-			// 
-			this.toolbar_undo.AutoSize = true;
-			this.toolbar_undo.Location = new System.Drawing.Point(32, 85);
-			this.toolbar_undo.Name = "toolbar_undo";
-			this.toolbar_undo.Size = new System.Drawing.Size(85, 18);
-			this.toolbar_undo.TabIndex = 42;
-			this.toolbar_undo.Text = "Undo / Redo";
-			this.toolbar_undo.UseVisualStyleBackColor = true;
-			// 
-			// toolbar_script
-			// 
-			this.toolbar_script.AutoSize = true;
-			this.toolbar_script.Location = new System.Drawing.Point(32, 59);
-			this.toolbar_script.Name = "toolbar_script";
-			this.toolbar_script.Size = new System.Drawing.Size(84, 18);
-			this.toolbar_script.TabIndex = 41;
-			this.toolbar_script.Text = "Script Editor";
-			this.toolbar_script.UseVisualStyleBackColor = true;
-			// 
-			// groupBox4
-			// 
-			this.groupBox4.Controls.Add(this.collapsedockers);
-			this.groupBox4.Controls.Add(this.dockersposition);
-			this.groupBox4.Controls.Add(this.label17);
-			this.groupBox4.Location = new System.Drawing.Point(345, 327);
-			this.groupBox4.Name = "groupBox4";
-			this.groupBox4.Size = new System.Drawing.Size(329, 173);
-			this.groupBox4.TabIndex = 3;
-			this.groupBox4.TabStop = false;
-			this.groupBox4.Text = " Side Panels ";
-			// 
-			// collapsedockers
-			// 
-			this.collapsedockers.AutoSize = true;
-			this.collapsedockers.Location = new System.Drawing.Point(204, 36);
-			this.collapsedockers.Name = "collapsedockers";
-			this.collapsedockers.Size = new System.Drawing.Size(72, 18);
-			this.collapsedockers.TabIndex = 2;
-			this.collapsedockers.Text = "Auto hide";
-			this.collapsedockers.UseVisualStyleBackColor = true;
-			// 
-			// dockersposition
-			// 
-			this.dockersposition.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.dockersposition.FormattingEnabled = true;
-			this.dockersposition.Items.AddRange(new object[] {
+            this.defaultviewmode.Location = new System.Drawing.Point(135, 32);
+            this.defaultviewmode.Name = "defaultviewmode";
+            this.defaultviewmode.Size = new System.Drawing.Size(145, 22);
+            this.defaultviewmode.TabIndex = 0;
+            // 
+            // label1
+            // 
+            label1.AutoSize = true;
+            label1.Location = new System.Drawing.Point(28, 30);
+            label1.Name = "label1";
+            label1.Size = new System.Drawing.Size(147, 14);
+            label1.TabIndex = 20;
+            label1.Text = "Texture and Flats brightness:";
+            label1.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // label18
+            // 
+            label18.AutoSize = true;
+            label18.Location = new System.Drawing.Point(22, 78);
+            label18.Name = "label18";
+            label18.Size = new System.Drawing.Size(151, 14);
+            label18.TabIndex = 25;
+            label18.Text = "Max. dynamic lights to render:";
+            label18.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // label20
+            // 
+            label20.AutoSize = true;
+            label20.Location = new System.Drawing.Point(76, 126);
+            label20.Name = "label20";
+            label20.Size = new System.Drawing.Size(96, 14);
+            label20.TabIndex = 28;
+            label20.Text = "Dynamic light size:";
+            label20.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // label21
+            // 
+            label21.AutoSize = true;
+            label21.Location = new System.Drawing.Point(55, 174);
+            label21.Name = "label21";
+            label21.Size = new System.Drawing.Size(116, 14);
+            label21.TabIndex = 31;
+            label21.Text = "Dynamic light intensity:";
+            label21.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // keyusedlabel
+            // 
+            this.keyusedlabel.AutoSize = true;
+            this.keyusedlabel.Location = new System.Drawing.Point(20, 287);
+            this.keyusedlabel.Name = "keyusedlabel";
+            this.keyusedlabel.Size = new System.Drawing.Size(222, 14);
+            this.keyusedlabel.TabIndex = 10;
+            this.keyusedlabel.Text = "Key combination also used by these actions:";
+            this.keyusedlabel.Visible = false;
+            // 
+            // colorsgroup1
+            // 
+            this.colorsgroup1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)));
+            this.colorsgroup1.Controls.Add(this.cbStretchModels);
+            this.colorsgroup1.Controls.Add(this.colorMD3);
+            this.colorsgroup1.Controls.Add(this.label2);
+            this.colorsgroup1.Controls.Add(this.colorgrid64);
+            this.colorsgroup1.Controls.Add(this.squarethings);
+            this.colorsgroup1.Controls.Add(this.colorgrid);
+            this.colorsgroup1.Controls.Add(this.doublesidedalphalabel);
+            this.colorsgroup1.Controls.Add(this.colorindication);
+            this.colorsgroup1.Controls.Add(this.colorsoundlinedefs);
+            this.colorsgroup1.Controls.Add(this.colorspeciallinedefs);
+            this.colorsgroup1.Controls.Add(this.qualitydisplay);
+            this.colorsgroup1.Controls.Add(this.colorbackcolor);
+            this.colorsgroup1.Controls.Add(this.colorselection);
+            this.colorsgroup1.Controls.Add(this.colorvertices);
+            this.colorsgroup1.Controls.Add(this.doublesidedalpha);
+            this.colorsgroup1.Controls.Add(this.colorhighlight);
+            this.colorsgroup1.Controls.Add(this.colorlinedefs);
+            this.colorsgroup1.Location = new System.Drawing.Point(8, 8);
+            this.colorsgroup1.Name = "colorsgroup1";
+            this.colorsgroup1.Size = new System.Drawing.Size(203, 493);
+            this.colorsgroup1.TabIndex = 0;
+            this.colorsgroup1.TabStop = false;
+            this.colorsgroup1.Text = " Display ";
+            this.colorsgroup1.Visible = false;
+            // 
+            // cbStretchModels
+            // 
+            this.cbStretchModels.AutoSize = true;
+            this.cbStretchModels.Location = new System.Drawing.Point(21, 463);
+            this.cbStretchModels.Name = "cbStretchModels";
+            this.cbStretchModels.Size = new System.Drawing.Size(169, 18);
+            this.cbStretchModels.TabIndex = 18;
+            this.cbStretchModels.Text = "Scale models in Visual modes";
+            this.toolTip1.SetToolTip(this.cbStretchModels, "Set models\' rendered height to 85% \r\nto mimic GZDoom\'s way of rendering.");
+            this.cbStretchModels.UseVisualStyleBackColor = true;
+            // 
+            // colorMD3
+            // 
+            this.colorMD3.BackColor = System.Drawing.Color.Transparent;
+            this.colorMD3.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorMD3.Label = "Model wireframe:";
+            this.colorMD3.Location = new System.Drawing.Point(15, 297);
+            this.colorMD3.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorMD3.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorMD3.Name = "colorMD3";
+            this.colorMD3.Size = new System.Drawing.Size(168, 23);
+            this.colorMD3.TabIndex = 17;
+            // 
+            // label2
+            // 
+            this.label2.AutoSize = true;
+            this.label2.Location = new System.Drawing.Point(18, 333);
+            this.label2.Name = "label2";
+            this.label2.Size = new System.Drawing.Size(147, 14);
+            this.label2.TabIndex = 14;
+            this.label2.Text = "Passable lines transparency:";
+            this.label2.TextAlign = System.Drawing.ContentAlignment.TopRight;
+            // 
+            // colorgrid64
+            // 
+            this.colorgrid64.BackColor = System.Drawing.Color.Transparent;
+            this.colorgrid64.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorgrid64.Label = "64 Block grid:";
+            this.colorgrid64.Location = new System.Drawing.Point(15, 270);
+            this.colorgrid64.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorgrid64.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorgrid64.Name = "colorgrid64";
+            this.colorgrid64.Size = new System.Drawing.Size(168, 23);
+            this.colorgrid64.TabIndex = 9;
+            // 
+            // squarethings
+            // 
+            this.squarethings.AutoSize = true;
+            this.squarethings.Location = new System.Drawing.Point(21, 438);
+            this.squarethings.Name = "squarethings";
+            this.squarethings.Size = new System.Drawing.Size(93, 18);
+            this.squarethings.TabIndex = 8;
+            this.squarethings.Text = "Square things";
+            this.squarethings.UseVisualStyleBackColor = true;
+            // 
+            // colorgrid
+            // 
+            this.colorgrid.BackColor = System.Drawing.Color.Transparent;
+            this.colorgrid.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorgrid.Label = "Custom grid:";
+            this.colorgrid.Location = new System.Drawing.Point(15, 243);
+            this.colorgrid.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorgrid.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorgrid.Name = "colorgrid";
+            this.colorgrid.Size = new System.Drawing.Size(168, 23);
+            this.colorgrid.TabIndex = 8;
+            // 
+            // doublesidedalphalabel
+            // 
+            this.doublesidedalphalabel.AutoSize = true;
+            this.doublesidedalphalabel.Location = new System.Drawing.Point(148, 365);
+            this.doublesidedalphalabel.Name = "doublesidedalphalabel";
+            this.doublesidedalphalabel.Size = new System.Drawing.Size(23, 14);
+            this.doublesidedalphalabel.TabIndex = 16;
+            this.doublesidedalphalabel.Text = "0%";
+            // 
+            // colorindication
+            // 
+            this.colorindication.BackColor = System.Drawing.Color.Transparent;
+            this.colorindication.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorindication.Label = "Indications:";
+            this.colorindication.Location = new System.Drawing.Point(15, 216);
+            this.colorindication.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorindication.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorindication.Name = "colorindication";
+            this.colorindication.Size = new System.Drawing.Size(168, 23);
+            this.colorindication.TabIndex = 7;
+            // 
+            // colorsoundlinedefs
+            // 
+            this.colorsoundlinedefs.BackColor = System.Drawing.Color.Transparent;
+            this.colorsoundlinedefs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorsoundlinedefs.Label = "Sound lines:";
+            this.colorsoundlinedefs.Location = new System.Drawing.Point(15, 135);
+            this.colorsoundlinedefs.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorsoundlinedefs.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorsoundlinedefs.Name = "colorsoundlinedefs";
+            this.colorsoundlinedefs.Size = new System.Drawing.Size(168, 23);
+            this.colorsoundlinedefs.TabIndex = 4;
+            // 
+            // colorspeciallinedefs
+            // 
+            this.colorspeciallinedefs.BackColor = System.Drawing.Color.Transparent;
+            this.colorspeciallinedefs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorspeciallinedefs.Label = "Action lines:";
+            this.colorspeciallinedefs.Location = new System.Drawing.Point(15, 108);
+            this.colorspeciallinedefs.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorspeciallinedefs.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorspeciallinedefs.Name = "colorspeciallinedefs";
+            this.colorspeciallinedefs.Size = new System.Drawing.Size(168, 23);
+            this.colorspeciallinedefs.TabIndex = 3;
+            // 
+            // qualitydisplay
+            // 
+            this.qualitydisplay.AutoSize = true;
+            this.qualitydisplay.Location = new System.Drawing.Point(21, 413);
+            this.qualitydisplay.Name = "qualitydisplay";
+            this.qualitydisplay.Size = new System.Drawing.Size(130, 18);
+            this.qualitydisplay.TabIndex = 7;
+            this.qualitydisplay.Text = "High quality rendering";
+            this.qualitydisplay.UseVisualStyleBackColor = true;
+            // 
+            // colorbackcolor
+            // 
+            this.colorbackcolor.BackColor = System.Drawing.Color.Transparent;
+            this.colorbackcolor.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorbackcolor.Label = "Background:";
+            this.colorbackcolor.Location = new System.Drawing.Point(15, 27);
+            this.colorbackcolor.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorbackcolor.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorbackcolor.Name = "colorbackcolor";
+            this.colorbackcolor.Size = new System.Drawing.Size(168, 23);
+            this.colorbackcolor.TabIndex = 0;
+            // 
+            // colorselection
+            // 
+            this.colorselection.BackColor = System.Drawing.Color.Transparent;
+            this.colorselection.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorselection.Label = "Selection:";
+            this.colorselection.Location = new System.Drawing.Point(15, 189);
+            this.colorselection.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorselection.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorselection.Name = "colorselection";
+            this.colorselection.Size = new System.Drawing.Size(168, 23);
+            this.colorselection.TabIndex = 6;
+            // 
+            // colorvertices
+            // 
+            this.colorvertices.BackColor = System.Drawing.Color.Transparent;
+            this.colorvertices.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorvertices.Label = "Vertices:";
+            this.colorvertices.Location = new System.Drawing.Point(15, 54);
+            this.colorvertices.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorvertices.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorvertices.Name = "colorvertices";
+            this.colorvertices.Size = new System.Drawing.Size(168, 23);
+            this.colorvertices.TabIndex = 1;
+            // 
+            // doublesidedalpha
+            // 
+            this.doublesidedalpha.LargeChange = 3;
+            this.doublesidedalpha.Location = new System.Drawing.Point(11, 352);
+            this.doublesidedalpha.Name = "doublesidedalpha";
+            this.doublesidedalpha.Size = new System.Drawing.Size(130, 45);
+            this.doublesidedalpha.TabIndex = 2;
+            this.doublesidedalpha.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.doublesidedalpha.ValueChanged += new System.EventHandler(this.doublesidedalpha_ValueChanged);
+            // 
+            // colorhighlight
+            // 
+            this.colorhighlight.BackColor = System.Drawing.Color.Transparent;
+            this.colorhighlight.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorhighlight.Label = "Highlight:";
+            this.colorhighlight.Location = new System.Drawing.Point(15, 162);
+            this.colorhighlight.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorhighlight.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorhighlight.Name = "colorhighlight";
+            this.colorhighlight.Size = new System.Drawing.Size(168, 23);
+            this.colorhighlight.TabIndex = 5;
+            // 
+            // colorlinedefs
+            // 
+            this.colorlinedefs.BackColor = System.Drawing.Color.Transparent;
+            this.colorlinedefs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorlinedefs.Label = "Common lines:";
+            this.colorlinedefs.Location = new System.Drawing.Point(15, 81);
+            this.colorlinedefs.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorlinedefs.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorlinedefs.Name = "colorlinedefs";
+            this.colorlinedefs.Size = new System.Drawing.Size(168, 23);
+            this.colorlinedefs.TabIndex = 2;
+            // 
+            // cancel
+            // 
+            this.cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.cancel.Location = new System.Drawing.Point(589, 558);
+            this.cancel.Name = "cancel";
+            this.cancel.Size = new System.Drawing.Size(112, 25);
+            this.cancel.TabIndex = 2;
+            this.cancel.Text = "Cancel";
+            this.cancel.UseVisualStyleBackColor = true;
+            this.cancel.Click += new System.EventHandler(this.cancel_Click);
+            // 
+            // apply
+            // 
+            this.apply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.apply.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.apply.Location = new System.Drawing.Point(471, 558);
+            this.apply.Name = "apply";
+            this.apply.Size = new System.Drawing.Size(112, 25);
+            this.apply.TabIndex = 1;
+            this.apply.Text = "OK";
+            this.apply.UseVisualStyleBackColor = true;
+            this.apply.Click += new System.EventHandler(this.apply_Click);
+            // 
+            // tabs
+            // 
+            this.tabs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.tabs.Controls.Add(this.tabinterface);
+            this.tabs.Controls.Add(this.tabkeys);
+            this.tabs.Controls.Add(this.tabcolors);
+            this.tabs.Controls.Add(this.tabpasting);
+            this.tabs.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabs.ItemSize = new System.Drawing.Size(110, 19);
+            this.tabs.Location = new System.Drawing.Point(11, 13);
+            this.tabs.Name = "tabs";
+            this.tabs.Padding = new System.Drawing.Point(20, 3);
+            this.tabs.SelectedIndex = 0;
+            this.tabs.Size = new System.Drawing.Size(690, 536);
+            this.tabs.TabIndex = 0;
+            this.tabs.SelectedIndexChanged += new System.EventHandler(this.tabs_SelectedIndexChanged);
+            // 
+            // tabinterface
+            // 
+            this.tabinterface.Controls.Add(this.groupBox5);
+            this.tabinterface.Controls.Add(this.groupBox4);
+            this.tabinterface.Controls.Add(this.groupBox2);
+            this.tabinterface.Controls.Add(groupBox1);
+            this.tabinterface.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabinterface.Location = new System.Drawing.Point(4, 23);
+            this.tabinterface.Name = "tabinterface";
+            this.tabinterface.Padding = new System.Windows.Forms.Padding(5);
+            this.tabinterface.Size = new System.Drawing.Size(682, 509);
+            this.tabinterface.TabIndex = 0;
+            this.tabinterface.Text = "Interface";
+            this.tabinterface.UseVisualStyleBackColor = true;
+            // 
+            // groupBox5
+            // 
+            this.groupBox5.Controls.Add(this.toolbar_gzdoom);
+            this.groupBox5.Controls.Add(this.toolbar_file);
+            this.groupBox5.Controls.Add(this.toolbar_testing);
+            this.groupBox5.Controls.Add(this.toolbar_geometry);
+            this.groupBox5.Controls.Add(this.toolbar_viewmodes);
+            this.groupBox5.Controls.Add(this.toolbar_filter);
+            this.groupBox5.Controls.Add(this.toolbar_prefabs);
+            this.groupBox5.Controls.Add(this.toolbar_copy);
+            this.groupBox5.Controls.Add(this.toolbar_undo);
+            this.groupBox5.Controls.Add(this.toolbar_script);
+            this.groupBox5.Location = new System.Drawing.Point(8, 327);
+            this.groupBox5.Name = "groupBox5";
+            this.groupBox5.Size = new System.Drawing.Size(331, 173);
+            this.groupBox5.TabIndex = 4;
+            this.groupBox5.TabStop = false;
+            this.groupBox5.Text = " Toolbar Buttons ";
+            // 
+            // toolbar_gzdoom
+            // 
+            this.toolbar_gzdoom.AutoSize = true;
+            this.toolbar_gzdoom.Location = new System.Drawing.Point(188, 137);
+            this.toolbar_gzdoom.Name = "toolbar_gzdoom";
+            this.toolbar_gzdoom.Size = new System.Drawing.Size(104, 18);
+            this.toolbar_gzdoom.TabIndex = 50;
+            this.toolbar_gzdoom.Text = "GZDoom toolbar";
+            this.toolbar_gzdoom.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_file
+            // 
+            this.toolbar_file.AutoSize = true;
+            this.toolbar_file.Location = new System.Drawing.Point(32, 33);
+            this.toolbar_file.Name = "toolbar_file";
+            this.toolbar_file.Size = new System.Drawing.Size(118, 18);
+            this.toolbar_file.TabIndex = 49;
+            this.toolbar_file.Text = "New / Open / Save";
+            this.toolbar_file.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_testing
+            // 
+            this.toolbar_testing.AutoSize = true;
+            this.toolbar_testing.Location = new System.Drawing.Point(188, 111);
+            this.toolbar_testing.Name = "toolbar_testing";
+            this.toolbar_testing.Size = new System.Drawing.Size(60, 18);
+            this.toolbar_testing.TabIndex = 48;
+            this.toolbar_testing.Text = "Testing";
+            this.toolbar_testing.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_geometry
+            // 
+            this.toolbar_geometry.AutoSize = true;
+            this.toolbar_geometry.Location = new System.Drawing.Point(188, 85);
+            this.toolbar_geometry.Name = "toolbar_geometry";
+            this.toolbar_geometry.Size = new System.Drawing.Size(90, 18);
+            this.toolbar_geometry.TabIndex = 47;
+            this.toolbar_geometry.Text = "Snap / Merge";
+            this.toolbar_geometry.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_viewmodes
+            // 
+            this.toolbar_viewmodes.AutoSize = true;
+            this.toolbar_viewmodes.Location = new System.Drawing.Point(188, 59);
+            this.toolbar_viewmodes.Name = "toolbar_viewmodes";
+            this.toolbar_viewmodes.Size = new System.Drawing.Size(87, 18);
+            this.toolbar_viewmodes.TabIndex = 46;
+            this.toolbar_viewmodes.Text = "View Modes";
+            this.toolbar_viewmodes.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_filter
+            // 
+            this.toolbar_filter.AutoSize = true;
+            this.toolbar_filter.Location = new System.Drawing.Point(188, 33);
+            this.toolbar_filter.Name = "toolbar_filter";
+            this.toolbar_filter.Size = new System.Drawing.Size(84, 18);
+            this.toolbar_filter.TabIndex = 45;
+            this.toolbar_filter.Text = "Things Filter";
+            this.toolbar_filter.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_prefabs
+            // 
+            this.toolbar_prefabs.AutoSize = true;
+            this.toolbar_prefabs.Location = new System.Drawing.Point(32, 137);
+            this.toolbar_prefabs.Name = "toolbar_prefabs";
+            this.toolbar_prefabs.Size = new System.Drawing.Size(64, 18);
+            this.toolbar_prefabs.TabIndex = 44;
+            this.toolbar_prefabs.Text = "Prefabs";
+            this.toolbar_prefabs.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_copy
+            // 
+            this.toolbar_copy.AutoSize = true;
+            this.toolbar_copy.Location = new System.Drawing.Point(32, 111);
+            this.toolbar_copy.Name = "toolbar_copy";
+            this.toolbar_copy.Size = new System.Drawing.Size(112, 18);
+            this.toolbar_copy.TabIndex = 43;
+            this.toolbar_copy.Text = "Cut / Copy / Paste";
+            this.toolbar_copy.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_undo
+            // 
+            this.toolbar_undo.AutoSize = true;
+            this.toolbar_undo.Location = new System.Drawing.Point(32, 85);
+            this.toolbar_undo.Name = "toolbar_undo";
+            this.toolbar_undo.Size = new System.Drawing.Size(85, 18);
+            this.toolbar_undo.TabIndex = 42;
+            this.toolbar_undo.Text = "Undo / Redo";
+            this.toolbar_undo.UseVisualStyleBackColor = true;
+            // 
+            // toolbar_script
+            // 
+            this.toolbar_script.AutoSize = true;
+            this.toolbar_script.Location = new System.Drawing.Point(32, 59);
+            this.toolbar_script.Name = "toolbar_script";
+            this.toolbar_script.Size = new System.Drawing.Size(84, 18);
+            this.toolbar_script.TabIndex = 41;
+            this.toolbar_script.Text = "Script Editor";
+            this.toolbar_script.UseVisualStyleBackColor = true;
+            // 
+            // groupBox4
+            // 
+            this.groupBox4.Controls.Add(this.collapsedockers);
+            this.groupBox4.Controls.Add(this.dockersposition);
+            this.groupBox4.Controls.Add(this.label17);
+            this.groupBox4.Location = new System.Drawing.Point(345, 327);
+            this.groupBox4.Name = "groupBox4";
+            this.groupBox4.Size = new System.Drawing.Size(329, 173);
+            this.groupBox4.TabIndex = 3;
+            this.groupBox4.TabStop = false;
+            this.groupBox4.Text = " Side Panels ";
+            // 
+            // collapsedockers
+            // 
+            this.collapsedockers.AutoSize = true;
+            this.collapsedockers.Location = new System.Drawing.Point(204, 36);
+            this.collapsedockers.Name = "collapsedockers";
+            this.collapsedockers.Size = new System.Drawing.Size(72, 18);
+            this.collapsedockers.TabIndex = 2;
+            this.collapsedockers.Text = "Auto hide";
+            this.collapsedockers.UseVisualStyleBackColor = true;
+            // 
+            // dockersposition
+            // 
+            this.dockersposition.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.dockersposition.FormattingEnabled = true;
+            this.dockersposition.Items.AddRange(new object[] {
             "Left",
             "Right",
             "None"});
-			this.dockersposition.Location = new System.Drawing.Point(95, 34);
-			this.dockersposition.Name = "dockersposition";
-			this.dockersposition.Size = new System.Drawing.Size(85, 22);
-			this.dockersposition.TabIndex = 1;
-			// 
-			// label17
-			// 
-			this.label17.AutoSize = true;
-			this.label17.Location = new System.Drawing.Point(33, 37);
-			this.label17.Name = "label17";
-			this.label17.Size = new System.Drawing.Size(47, 14);
-			this.label17.TabIndex = 0;
-			this.label17.Text = "Position:";
-			// 
-			// groupBox2
-			// 
-			this.groupBox2.Controls.Add(this.viewdistance);
-			this.groupBox2.Controls.Add(this.movespeed);
-			this.groupBox2.Controls.Add(this.mousespeed);
-			this.groupBox2.Controls.Add(this.fieldofview);
-			this.groupBox2.Controls.Add(this.viewdistancelabel);
-			this.groupBox2.Controls.Add(this.label13);
-			this.groupBox2.Controls.Add(this.invertyaxis);
-			this.groupBox2.Controls.Add(this.movespeedlabel);
-			this.groupBox2.Controls.Add(this.label11);
-			this.groupBox2.Controls.Add(this.mousespeedlabel);
-			this.groupBox2.Controls.Add(this.label9);
-			this.groupBox2.Controls.Add(this.fieldofviewlabel);
-			this.groupBox2.Controls.Add(this.label4);
-			this.groupBox2.Location = new System.Drawing.Point(345, 8);
-			this.groupBox2.Name = "groupBox2";
-			this.groupBox2.Size = new System.Drawing.Size(329, 313);
-			this.groupBox2.TabIndex = 2;
-			this.groupBox2.TabStop = false;
-			this.groupBox2.Text = " Visual Modes ";
-			// 
-			// viewdistance
-			// 
-			this.viewdistance.LargeChange = 2;
-			this.viewdistance.Location = new System.Drawing.Point(108, 187);
-			this.viewdistance.Maximum = 15;
-			this.viewdistance.Minimum = 1;
-			this.viewdistance.Name = "viewdistance";
-			this.viewdistance.Size = new System.Drawing.Size(150, 45);
-			this.viewdistance.TabIndex = 3;
-			this.viewdistance.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.viewdistance.Value = 1;
-			this.viewdistance.ValueChanged += new System.EventHandler(this.viewdistance_ValueChanged);
-			// 
-			// movespeed
-			// 
-			this.movespeed.Location = new System.Drawing.Point(108, 135);
-			this.movespeed.Maximum = 20;
-			this.movespeed.Minimum = 1;
-			this.movespeed.Name = "movespeed";
-			this.movespeed.Size = new System.Drawing.Size(150, 45);
-			this.movespeed.TabIndex = 2;
-			this.movespeed.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.movespeed.Value = 1;
-			this.movespeed.ValueChanged += new System.EventHandler(this.movespeed_ValueChanged);
-			// 
-			// mousespeed
-			// 
-			this.mousespeed.Location = new System.Drawing.Point(108, 81);
-			this.mousespeed.Maximum = 20;
-			this.mousespeed.Minimum = 1;
-			this.mousespeed.Name = "mousespeed";
-			this.mousespeed.Size = new System.Drawing.Size(150, 45);
-			this.mousespeed.TabIndex = 1;
-			this.mousespeed.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.mousespeed.Value = 1;
-			this.mousespeed.ValueChanged += new System.EventHandler(this.mousespeed_ValueChanged);
-			// 
-			// fieldofview
-			// 
-			this.fieldofview.LargeChange = 1;
-			this.fieldofview.Location = new System.Drawing.Point(108, 29);
-			this.fieldofview.Maximum = 17;
-			this.fieldofview.Minimum = 5;
-			this.fieldofview.Name = "fieldofview";
-			this.fieldofview.Size = new System.Drawing.Size(150, 45);
-			this.fieldofview.TabIndex = 0;
-			this.fieldofview.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.fieldofview.Value = 5;
-			this.fieldofview.ValueChanged += new System.EventHandler(this.fieldofview_ValueChanged);
-			// 
-			// viewdistancelabel
-			// 
-			this.viewdistancelabel.AutoSize = true;
-			this.viewdistancelabel.Location = new System.Drawing.Point(264, 199);
-			this.viewdistancelabel.Name = "viewdistancelabel";
-			this.viewdistancelabel.Size = new System.Drawing.Size(42, 14);
-			this.viewdistancelabel.TabIndex = 30;
-			this.viewdistancelabel.Text = "200 mp";
-			// 
-			// label13
-			// 
-			this.label13.AutoSize = true;
-			this.label13.Location = new System.Drawing.Point(22, 199);
-			this.label13.Name = "label13";
-			this.label13.Size = new System.Drawing.Size(80, 14);
-			this.label13.TabIndex = 28;
-			this.label13.Text = "View distance:";
-			// 
-			// invertyaxis
-			// 
-			this.invertyaxis.AutoSize = true;
-			this.invertyaxis.Location = new System.Drawing.Point(36, 248);
-			this.invertyaxis.Name = "invertyaxis";
-			this.invertyaxis.Size = new System.Drawing.Size(122, 18);
-			this.invertyaxis.TabIndex = 4;
-			this.invertyaxis.Text = "Invert mouse Y axis";
-			this.invertyaxis.UseVisualStyleBackColor = true;
-			// 
-			// movespeedlabel
-			// 
-			this.movespeedlabel.AutoSize = true;
-			this.movespeedlabel.Location = new System.Drawing.Point(264, 147);
-			this.movespeedlabel.Name = "movespeedlabel";
-			this.movespeedlabel.Size = new System.Drawing.Size(25, 14);
-			this.movespeedlabel.TabIndex = 25;
-			this.movespeedlabel.Text = "100";
-			// 
-			// label11
-			// 
-			this.label11.AutoSize = true;
-			this.label11.Location = new System.Drawing.Point(33, 147);
-			this.label11.Name = "label11";
-			this.label11.Size = new System.Drawing.Size(69, 14);
-			this.label11.TabIndex = 23;
-			this.label11.Text = "Move speed:";
-			// 
-			// mousespeedlabel
-			// 
-			this.mousespeedlabel.AutoSize = true;
-			this.mousespeedlabel.Location = new System.Drawing.Point(264, 93);
-			this.mousespeedlabel.Name = "mousespeedlabel";
-			this.mousespeedlabel.Size = new System.Drawing.Size(25, 14);
-			this.mousespeedlabel.TabIndex = 22;
-			this.mousespeedlabel.Text = "100";
-			// 
-			// label9
-			// 
-			this.label9.AutoSize = true;
-			this.label9.Location = new System.Drawing.Point(27, 93);
-			this.label9.Name = "label9";
-			this.label9.Size = new System.Drawing.Size(75, 14);
-			this.label9.TabIndex = 20;
-			this.label9.Text = "Mouse speed:";
-			// 
-			// fieldofviewlabel
-			// 
-			this.fieldofviewlabel.AutoSize = true;
-			this.fieldofviewlabel.Location = new System.Drawing.Point(264, 41);
-			this.fieldofviewlabel.Name = "fieldofviewlabel";
-			this.fieldofviewlabel.Size = new System.Drawing.Size(23, 14);
-			this.fieldofviewlabel.TabIndex = 19;
-			this.fieldofviewlabel.Text = "50°";
-			// 
-			// label4
-			// 
-			this.label4.AutoSize = true;
-			this.label4.Location = new System.Drawing.Point(30, 41);
-			this.label4.Name = "label4";
-			this.label4.Size = new System.Drawing.Size(72, 14);
-			this.label4.TabIndex = 17;
-			this.label4.Text = "Field of view:";
-			// 
-			// tabkeys
-			// 
-			this.tabkeys.Controls.Add(this.listactions);
-			this.tabkeys.Controls.Add(this.actioncontrolpanel);
-			this.tabkeys.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabkeys.Location = new System.Drawing.Point(4, 23);
-			this.tabkeys.Name = "tabkeys";
-			this.tabkeys.Padding = new System.Windows.Forms.Padding(3);
-			this.tabkeys.Size = new System.Drawing.Size(682, 509);
-			this.tabkeys.TabIndex = 1;
-			this.tabkeys.Text = "Controls";
-			this.tabkeys.UseVisualStyleBackColor = true;
-			// 
-			// listactions
-			// 
-			this.listactions.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.listactions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+            this.dockersposition.Location = new System.Drawing.Point(95, 34);
+            this.dockersposition.Name = "dockersposition";
+            this.dockersposition.Size = new System.Drawing.Size(85, 22);
+            this.dockersposition.TabIndex = 1;
+            // 
+            // label17
+            // 
+            this.label17.AutoSize = true;
+            this.label17.Location = new System.Drawing.Point(33, 37);
+            this.label17.Name = "label17";
+            this.label17.Size = new System.Drawing.Size(47, 14);
+            this.label17.TabIndex = 0;
+            this.label17.Text = "Position:";
+            // 
+            // groupBox2
+            // 
+            this.groupBox2.Controls.Add(this.viewdistance);
+            this.groupBox2.Controls.Add(this.movespeed);
+            this.groupBox2.Controls.Add(this.mousespeed);
+            this.groupBox2.Controls.Add(this.fieldofview);
+            this.groupBox2.Controls.Add(this.viewdistancelabel);
+            this.groupBox2.Controls.Add(this.label13);
+            this.groupBox2.Controls.Add(this.invertyaxis);
+            this.groupBox2.Controls.Add(this.movespeedlabel);
+            this.groupBox2.Controls.Add(this.label11);
+            this.groupBox2.Controls.Add(this.mousespeedlabel);
+            this.groupBox2.Controls.Add(this.label9);
+            this.groupBox2.Controls.Add(this.fieldofviewlabel);
+            this.groupBox2.Controls.Add(this.label4);
+            this.groupBox2.Location = new System.Drawing.Point(345, 8);
+            this.groupBox2.Name = "groupBox2";
+            this.groupBox2.Size = new System.Drawing.Size(329, 313);
+            this.groupBox2.TabIndex = 2;
+            this.groupBox2.TabStop = false;
+            this.groupBox2.Text = " Visual Modes ";
+            // 
+            // viewdistance
+            // 
+            this.viewdistance.LargeChange = 2;
+            this.viewdistance.Location = new System.Drawing.Point(108, 187);
+            this.viewdistance.Maximum = 15;
+            this.viewdistance.Minimum = 1;
+            this.viewdistance.Name = "viewdistance";
+            this.viewdistance.Size = new System.Drawing.Size(150, 45);
+            this.viewdistance.TabIndex = 3;
+            this.viewdistance.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.viewdistance.Value = 1;
+            this.viewdistance.ValueChanged += new System.EventHandler(this.viewdistance_ValueChanged);
+            // 
+            // movespeed
+            // 
+            this.movespeed.Location = new System.Drawing.Point(108, 135);
+            this.movespeed.Maximum = 20;
+            this.movespeed.Minimum = 1;
+            this.movespeed.Name = "movespeed";
+            this.movespeed.Size = new System.Drawing.Size(150, 45);
+            this.movespeed.TabIndex = 2;
+            this.movespeed.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.movespeed.Value = 1;
+            this.movespeed.ValueChanged += new System.EventHandler(this.movespeed_ValueChanged);
+            // 
+            // mousespeed
+            // 
+            this.mousespeed.Location = new System.Drawing.Point(108, 81);
+            this.mousespeed.Maximum = 20;
+            this.mousespeed.Minimum = 1;
+            this.mousespeed.Name = "mousespeed";
+            this.mousespeed.Size = new System.Drawing.Size(150, 45);
+            this.mousespeed.TabIndex = 1;
+            this.mousespeed.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.mousespeed.Value = 1;
+            this.mousespeed.ValueChanged += new System.EventHandler(this.mousespeed_ValueChanged);
+            // 
+            // fieldofview
+            // 
+            this.fieldofview.LargeChange = 1;
+            this.fieldofview.Location = new System.Drawing.Point(108, 29);
+            this.fieldofview.Maximum = 17;
+            this.fieldofview.Minimum = 5;
+            this.fieldofview.Name = "fieldofview";
+            this.fieldofview.Size = new System.Drawing.Size(150, 45);
+            this.fieldofview.TabIndex = 0;
+            this.fieldofview.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.fieldofview.Value = 5;
+            this.fieldofview.ValueChanged += new System.EventHandler(this.fieldofview_ValueChanged);
+            // 
+            // viewdistancelabel
+            // 
+            this.viewdistancelabel.AutoSize = true;
+            this.viewdistancelabel.Location = new System.Drawing.Point(264, 199);
+            this.viewdistancelabel.Name = "viewdistancelabel";
+            this.viewdistancelabel.Size = new System.Drawing.Size(42, 14);
+            this.viewdistancelabel.TabIndex = 30;
+            this.viewdistancelabel.Text = "200 mp";
+            // 
+            // label13
+            // 
+            this.label13.AutoSize = true;
+            this.label13.Location = new System.Drawing.Point(22, 199);
+            this.label13.Name = "label13";
+            this.label13.Size = new System.Drawing.Size(80, 14);
+            this.label13.TabIndex = 28;
+            this.label13.Text = "View distance:";
+            // 
+            // invertyaxis
+            // 
+            this.invertyaxis.AutoSize = true;
+            this.invertyaxis.Location = new System.Drawing.Point(36, 248);
+            this.invertyaxis.Name = "invertyaxis";
+            this.invertyaxis.Size = new System.Drawing.Size(122, 18);
+            this.invertyaxis.TabIndex = 4;
+            this.invertyaxis.Text = "Invert mouse Y axis";
+            this.invertyaxis.UseVisualStyleBackColor = true;
+            // 
+            // movespeedlabel
+            // 
+            this.movespeedlabel.AutoSize = true;
+            this.movespeedlabel.Location = new System.Drawing.Point(264, 147);
+            this.movespeedlabel.Name = "movespeedlabel";
+            this.movespeedlabel.Size = new System.Drawing.Size(25, 14);
+            this.movespeedlabel.TabIndex = 25;
+            this.movespeedlabel.Text = "100";
+            // 
+            // label11
+            // 
+            this.label11.AutoSize = true;
+            this.label11.Location = new System.Drawing.Point(33, 147);
+            this.label11.Name = "label11";
+            this.label11.Size = new System.Drawing.Size(69, 14);
+            this.label11.TabIndex = 23;
+            this.label11.Text = "Move speed:";
+            // 
+            // mousespeedlabel
+            // 
+            this.mousespeedlabel.AutoSize = true;
+            this.mousespeedlabel.Location = new System.Drawing.Point(264, 93);
+            this.mousespeedlabel.Name = "mousespeedlabel";
+            this.mousespeedlabel.Size = new System.Drawing.Size(25, 14);
+            this.mousespeedlabel.TabIndex = 22;
+            this.mousespeedlabel.Text = "100";
+            // 
+            // label9
+            // 
+            this.label9.AutoSize = true;
+            this.label9.Location = new System.Drawing.Point(27, 93);
+            this.label9.Name = "label9";
+            this.label9.Size = new System.Drawing.Size(75, 14);
+            this.label9.TabIndex = 20;
+            this.label9.Text = "Mouse speed:";
+            // 
+            // fieldofviewlabel
+            // 
+            this.fieldofviewlabel.AutoSize = true;
+            this.fieldofviewlabel.Location = new System.Drawing.Point(264, 41);
+            this.fieldofviewlabel.Name = "fieldofviewlabel";
+            this.fieldofviewlabel.Size = new System.Drawing.Size(23, 14);
+            this.fieldofviewlabel.TabIndex = 19;
+            this.fieldofviewlabel.Text = "50°";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(30, 41);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(72, 14);
+            this.label4.TabIndex = 17;
+            this.label4.Text = "Field of view:";
+            // 
+            // tabkeys
+            // 
+            this.tabkeys.Controls.Add(this.listactions);
+            this.tabkeys.Controls.Add(this.actioncontrolpanel);
+            this.tabkeys.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabkeys.Location = new System.Drawing.Point(4, 23);
+            this.tabkeys.Name = "tabkeys";
+            this.tabkeys.Padding = new System.Windows.Forms.Padding(3);
+            this.tabkeys.Size = new System.Drawing.Size(682, 509);
+            this.tabkeys.TabIndex = 1;
+            this.tabkeys.Text = "Controls";
+            this.tabkeys.UseVisualStyleBackColor = true;
+            // 
+            // listactions
+            // 
+            this.listactions.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.listactions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
             this.columncontrolaction,
             this.columncontrolkey});
-			this.listactions.FullRowSelect = true;
-			this.listactions.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
-			this.listactions.HideSelection = false;
-			this.listactions.Location = new System.Drawing.Point(11, 12);
-			this.listactions.Margin = new System.Windows.Forms.Padding(8, 9, 8, 9);
-			this.listactions.MultiSelect = false;
-			this.listactions.Name = "listactions";
-			this.listactions.Size = new System.Drawing.Size(352, 462);
-			this.listactions.Sorting = System.Windows.Forms.SortOrder.Ascending;
-			this.listactions.TabIndex = 0;
-			this.listactions.TabStop = false;
-			this.listactions.UseCompatibleStateImageBehavior = false;
-			this.listactions.View = System.Windows.Forms.View.Details;
-			this.listactions.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listactions_MouseUp);
-			this.listactions.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listactions_ItemSelectionChanged);
-			this.listactions.KeyUp += new System.Windows.Forms.KeyEventHandler(this.listactions_KeyUp);
-			// 
-			// columncontrolaction
-			// 
-			this.columncontrolaction.Text = "Action";
-			this.columncontrolaction.Width = 179;
-			// 
-			// columncontrolkey
-			// 
-			this.columncontrolkey.Text = "Key";
-			this.columncontrolkey.Width = 130;
-			// 
-			// actioncontrolpanel
-			// 
-			this.actioncontrolpanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.actioncontrolpanel.Controls.Add(this.keyusedlist);
-			this.actioncontrolpanel.Controls.Add(this.keyusedlabel);
-			this.actioncontrolpanel.Controls.Add(this.disregardshiftlabel);
-			this.actioncontrolpanel.Controls.Add(this.actioncontrol);
-			this.actioncontrolpanel.Controls.Add(label7);
-			this.actioncontrolpanel.Controls.Add(this.actiontitle);
-			this.actioncontrolpanel.Controls.Add(this.actioncontrolclear);
-			this.actioncontrolpanel.Controls.Add(label6);
-			this.actioncontrolpanel.Controls.Add(this.actionkey);
-			this.actioncontrolpanel.Controls.Add(this.actiondescription);
-			this.actioncontrolpanel.Controls.Add(label5);
-			this.actioncontrolpanel.Enabled = false;
-			this.actioncontrolpanel.Location = new System.Drawing.Point(377, 12);
-			this.actioncontrolpanel.Margin = new System.Windows.Forms.Padding(6);
-			this.actioncontrolpanel.Name = "actioncontrolpanel";
-			this.actioncontrolpanel.Size = new System.Drawing.Size(282, 462);
-			this.actioncontrolpanel.TabIndex = 9;
-			this.actioncontrolpanel.TabStop = false;
-			this.actioncontrolpanel.Text = " Action control ";
-			// 
-			// keyusedlist
-			// 
-			this.keyusedlist.BackColor = System.Drawing.SystemColors.Control;
-			this.keyusedlist.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
-			this.keyusedlist.FormattingEnabled = true;
-			this.keyusedlist.IntegralHeight = false;
-			this.keyusedlist.ItemHeight = 14;
-			this.keyusedlist.Location = new System.Drawing.Point(33, 307);
-			this.keyusedlist.Name = "keyusedlist";
-			this.keyusedlist.SelectionMode = System.Windows.Forms.SelectionMode.None;
-			this.keyusedlist.Size = new System.Drawing.Size(232, 115);
-			this.keyusedlist.Sorted = true;
-			this.keyusedlist.TabIndex = 11;
-			this.keyusedlist.Visible = false;
-			// 
-			// disregardshiftlabel
-			// 
-			this.disregardshiftlabel.Location = new System.Drawing.Point(20, 224);
-			this.disregardshiftlabel.Name = "disregardshiftlabel";
-			this.disregardshiftlabel.Size = new System.Drawing.Size(245, 47);
-			this.disregardshiftlabel.TabIndex = 9;
-			this.disregardshiftlabel.Tag = "The selected actions uses %s to modify its behavior. These modifiers can not be u" +
-				"sed in a key combination for this action.";
-			this.disregardshiftlabel.Text = "The selected actions uses Shift, Alt and Control to modify its behavior. These mo" +
-				"difiers can not be used in a key combination for this action.";
-			this.disregardshiftlabel.Visible = false;
-			// 
-			// actioncontrol
-			// 
-			this.actioncontrol.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.actioncontrol.FormattingEnabled = true;
-			this.actioncontrol.ImeMode = System.Windows.Forms.ImeMode.Off;
-			this.actioncontrol.Location = new System.Drawing.Point(23, 190);
-			this.actioncontrol.Name = "actioncontrol";
-			this.actioncontrol.Size = new System.Drawing.Size(197, 22);
-			this.actioncontrol.TabIndex = 8;
-			this.actioncontrol.TabStop = false;
-			this.actioncontrol.SelectedIndexChanged += new System.EventHandler(this.actioncontrol_SelectedIndexChanged);
-			// 
-			// actiontitle
-			// 
-			this.actiontitle.AutoSize = true;
-			this.actiontitle.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.actiontitle.Location = new System.Drawing.Point(67, 30);
-			this.actiontitle.Name = "actiontitle";
-			this.actiontitle.Size = new System.Drawing.Size(172, 14);
-			this.actiontitle.TabIndex = 1;
-			this.actiontitle.Text = "(select an action from the list)";
-			this.actiontitle.UseMnemonic = false;
-			// 
-			// actioncontrolclear
-			// 
-			this.actioncontrolclear.Location = new System.Drawing.Point(193, 138);
-			this.actioncontrolclear.Name = "actioncontrolclear";
-			this.actioncontrolclear.Size = new System.Drawing.Size(63, 25);
-			this.actioncontrolclear.TabIndex = 6;
-			this.actioncontrolclear.TabStop = false;
-			this.actioncontrolclear.Text = "Clear";
-			this.actioncontrolclear.UseVisualStyleBackColor = true;
-			this.actioncontrolclear.Click += new System.EventHandler(this.actioncontrolclear_Click);
-			// 
-			// actionkey
-			// 
-			this.actionkey.ImeMode = System.Windows.Forms.ImeMode.Off;
-			this.actionkey.Location = new System.Drawing.Point(23, 140);
-			this.actionkey.Name = "actionkey";
-			this.actionkey.Size = new System.Drawing.Size(163, 20);
-			this.actionkey.TabIndex = 5;
-			this.actionkey.TabStop = false;
-			this.actionkey.KeyDown += new System.Windows.Forms.KeyEventHandler(this.actionkey_KeyDown);
-			// 
-			// actiondescription
-			// 
-			this.actiondescription.AutoEllipsis = true;
-			this.actiondescription.Location = new System.Drawing.Point(20, 50);
-			this.actiondescription.Name = "actiondescription";
-			this.actiondescription.Size = new System.Drawing.Size(245, 71);
-			this.actiondescription.TabIndex = 3;
-			this.actiondescription.UseMnemonic = false;
-			// 
-			// tabcolors
-			// 
-			this.tabcolors.Controls.Add(this.appearancegroup1);
-			this.tabcolors.Controls.Add(this.colorsgroup3);
-			this.tabcolors.Controls.Add(this.colorsgroup1);
-			this.tabcolors.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabcolors.Location = new System.Drawing.Point(4, 23);
-			this.tabcolors.Name = "tabcolors";
-			this.tabcolors.Padding = new System.Windows.Forms.Padding(5);
-			this.tabcolors.Size = new System.Drawing.Size(682, 509);
-			this.tabcolors.TabIndex = 2;
-			this.tabcolors.Text = "Appearance";
-			this.tabcolors.UseVisualStyleBackColor = true;
-			// 
-			// appearancegroup1
-			// 
-			this.appearancegroup1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.appearancegroup1.Controls.Add(label21);
-			this.appearancegroup1.Controls.Add(this.labelDynLightIntensity);
-			this.appearancegroup1.Controls.Add(this.tbDynLightIntensity);
-			this.appearancegroup1.Controls.Add(label20);
-			this.appearancegroup1.Controls.Add(this.labelDynLightSize);
-			this.appearancegroup1.Controls.Add(this.tbDynLightSize);
-			this.appearancegroup1.Controls.Add(label18);
-			this.appearancegroup1.Controls.Add(this.labelDynLightCount);
-			this.appearancegroup1.Controls.Add(this.tbDynLightCount);
-			this.appearancegroup1.Controls.Add(this.animatevisualselection);
-			this.appearancegroup1.Controls.Add(this.blackbrowsers);
-			this.appearancegroup1.Controls.Add(this.visualbilinear);
-			this.appearancegroup1.Controls.Add(label1);
-			this.appearancegroup1.Controls.Add(this.classicbilinear);
-			this.appearancegroup1.Controls.Add(this.imagebrightnesslabel);
-			this.appearancegroup1.Controls.Add(this.imagebrightness);
-			this.appearancegroup1.Location = new System.Drawing.Point(217, 236);
-			this.appearancegroup1.Name = "appearancegroup1";
-			this.appearancegroup1.Size = new System.Drawing.Size(457, 265);
-			this.appearancegroup1.TabIndex = 24;
-			this.appearancegroup1.TabStop = false;
-			this.appearancegroup1.Text = " Additional Options ";
-			// 
-			// labelDynLightIntensity
-			// 
-			this.labelDynLightIntensity.AutoSize = true;
-			this.labelDynLightIntensity.Location = new System.Drawing.Point(337, 174);
-			this.labelDynLightIntensity.Name = "labelDynLightIntensity";
-			this.labelDynLightIntensity.Size = new System.Drawing.Size(22, 14);
-			this.labelDynLightIntensity.TabIndex = 32;
-			this.labelDynLightIntensity.Text = "1.0";
-			// 
-			// tbDynLightIntensity
-			// 
-			this.tbDynLightIntensity.LargeChange = 1;
-			this.tbDynLightIntensity.Location = new System.Drawing.Point(176, 161);
-			this.tbDynLightIntensity.Minimum = 1;
-			this.tbDynLightIntensity.Name = "tbDynLightIntensity";
-			this.tbDynLightIntensity.Size = new System.Drawing.Size(154, 45);
-			this.tbDynLightIntensity.TabIndex = 30;
-			this.tbDynLightIntensity.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.tbDynLightIntensity.Value = 10;
-			this.tbDynLightIntensity.ValueChanged += new System.EventHandler(this.tbDynLightIntensity_ValueChanged);
-			// 
-			// labelDynLightSize
-			// 
-			this.labelDynLightSize.AutoSize = true;
-			this.labelDynLightSize.Location = new System.Drawing.Point(337, 126);
-			this.labelDynLightSize.Name = "labelDynLightSize";
-			this.labelDynLightSize.Size = new System.Drawing.Size(22, 14);
-			this.labelDynLightSize.TabIndex = 29;
-			this.labelDynLightSize.Text = "1.0";
-			// 
-			// tbDynLightSize
-			// 
-			this.tbDynLightSize.LargeChange = 1;
-			this.tbDynLightSize.Location = new System.Drawing.Point(176, 113);
-			this.tbDynLightSize.Maximum = 20;
-			this.tbDynLightSize.Minimum = 1;
-			this.tbDynLightSize.Name = "tbDynLightSize";
-			this.tbDynLightSize.Size = new System.Drawing.Size(154, 45);
-			this.tbDynLightSize.TabIndex = 27;
-			this.tbDynLightSize.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.tbDynLightSize.Value = 10;
-			this.tbDynLightSize.ValueChanged += new System.EventHandler(this.tbDynLightSize_ValueChanged);
-			// 
-			// labelDynLightCount
-			// 
-			this.labelDynLightCount.AutoSize = true;
-			this.labelDynLightCount.Location = new System.Drawing.Point(337, 78);
-			this.labelDynLightCount.Name = "labelDynLightCount";
-			this.labelDynLightCount.Size = new System.Drawing.Size(19, 14);
-			this.labelDynLightCount.TabIndex = 26;
-			this.labelDynLightCount.Text = "16";
-			// 
-			// tbDynLightCount
-			// 
-			this.tbDynLightCount.LargeChange = 3;
-			this.tbDynLightCount.Location = new System.Drawing.Point(176, 65);
-			this.tbDynLightCount.Maximum = 32;
-			this.tbDynLightCount.Minimum = 1;
-			this.tbDynLightCount.Name = "tbDynLightCount";
-			this.tbDynLightCount.Size = new System.Drawing.Size(154, 45);
-			this.tbDynLightCount.TabIndex = 24;
-			this.tbDynLightCount.TickFrequency = 4;
-			this.tbDynLightCount.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.tbDynLightCount.Value = 1;
-			this.tbDynLightCount.ValueChanged += new System.EventHandler(this.tbDynLightCount_ValueChanged);
-			// 
-			// animatevisualselection
-			// 
-			this.animatevisualselection.AutoSize = true;
-			this.animatevisualselection.Location = new System.Drawing.Point(244, 236);
-			this.animatevisualselection.Name = "animatevisualselection";
-			this.animatevisualselection.Size = new System.Drawing.Size(188, 18);
-			this.animatevisualselection.TabIndex = 23;
-			this.animatevisualselection.Text = "Animate selection in visual modes";
-			this.animatevisualselection.UseVisualStyleBackColor = true;
-			// 
-			// blackbrowsers
-			// 
-			this.blackbrowsers.AutoSize = true;
-			this.blackbrowsers.Location = new System.Drawing.Point(244, 212);
-			this.blackbrowsers.Name = "blackbrowsers";
-			this.blackbrowsers.Size = new System.Drawing.Size(199, 18);
-			this.blackbrowsers.TabIndex = 4;
-			this.blackbrowsers.Text = "Black background in image browser";
-			this.blackbrowsers.UseVisualStyleBackColor = true;
-			// 
-			// visualbilinear
-			// 
-			this.visualbilinear.AutoSize = true;
-			this.visualbilinear.Location = new System.Drawing.Point(25, 236);
-			this.visualbilinear.Name = "visualbilinear";
-			this.visualbilinear.Size = new System.Drawing.Size(176, 18);
-			this.visualbilinear.TabIndex = 6;
-			this.visualbilinear.Text = "Bilinear filtering in visual modes";
-			this.visualbilinear.UseVisualStyleBackColor = true;
-			// 
-			// classicbilinear
-			// 
-			this.classicbilinear.AutoSize = true;
-			this.classicbilinear.Location = new System.Drawing.Point(25, 212);
-			this.classicbilinear.Name = "classicbilinear";
-			this.classicbilinear.Size = new System.Drawing.Size(182, 18);
-			this.classicbilinear.TabIndex = 5;
-			this.classicbilinear.Text = "Bilinear filtering in classic modes";
-			this.classicbilinear.UseVisualStyleBackColor = true;
-			// 
-			// imagebrightnesslabel
-			// 
-			this.imagebrightnesslabel.AutoSize = true;
-			this.imagebrightnesslabel.Location = new System.Drawing.Point(337, 30);
-			this.imagebrightnesslabel.Name = "imagebrightnesslabel";
-			this.imagebrightnesslabel.Size = new System.Drawing.Size(31, 14);
-			this.imagebrightnesslabel.TabIndex = 22;
-			this.imagebrightnesslabel.Text = "+ 0 y";
-			// 
-			// imagebrightness
-			// 
-			this.imagebrightness.LargeChange = 3;
-			this.imagebrightness.Location = new System.Drawing.Point(176, 17);
-			this.imagebrightness.Name = "imagebrightness";
-			this.imagebrightness.Size = new System.Drawing.Size(154, 45);
-			this.imagebrightness.TabIndex = 3;
-			this.imagebrightness.TickStyle = System.Windows.Forms.TickStyle.Both;
-			this.imagebrightness.ValueChanged += new System.EventHandler(this.imagebrightness_ValueChanged);
-			// 
-			// colorsgroup3
-			// 
-			this.colorsgroup3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.colorsgroup3.Controls.Add(this.scripttabwidth);
-			this.colorsgroup3.Controls.Add(this.scriptautoindent);
-			this.colorsgroup3.Controls.Add(this.label10);
-			this.colorsgroup3.Controls.Add(this.panel1);
-			this.colorsgroup3.Controls.Add(this.scriptfontsize);
-			this.colorsgroup3.Controls.Add(this.label8);
-			this.colorsgroup3.Controls.Add(this.scriptfontbold);
-			this.colorsgroup3.Controls.Add(this.scriptfontname);
-			this.colorsgroup3.Controls.Add(this.label3);
-			this.colorsgroup3.Controls.Add(this.colorconstants);
-			this.colorsgroup3.Controls.Add(this.colorliterals);
-			this.colorsgroup3.Controls.Add(this.colorscriptbackground);
-			this.colorsgroup3.Controls.Add(this.colorkeywords);
-			this.colorsgroup3.Controls.Add(this.colorlinenumbers);
-			this.colorsgroup3.Controls.Add(this.colorcomments);
-			this.colorsgroup3.Controls.Add(this.colorplaintext);
-			this.colorsgroup3.Location = new System.Drawing.Point(217, 8);
-			this.colorsgroup3.Name = "colorsgroup3";
-			this.colorsgroup3.Size = new System.Drawing.Size(457, 222);
-			this.colorsgroup3.TabIndex = 1;
-			this.colorsgroup3.TabStop = false;
-			this.colorsgroup3.Text = " Script editor ";
-			this.colorsgroup3.Visible = false;
-			// 
-			// scripttabwidth
-			// 
-			this.scripttabwidth.AllowDecimal = false;
-			this.scripttabwidth.AllowNegative = false;
-			this.scripttabwidth.AllowRelative = false;
-			this.scripttabwidth.ButtonStep = 2;
-			this.scripttabwidth.Location = new System.Drawing.Point(259, 165);
-			this.scripttabwidth.Name = "scripttabwidth";
-			this.scripttabwidth.Size = new System.Drawing.Size(71, 24);
-			this.scripttabwidth.StepValues = null;
-			this.scripttabwidth.TabIndex = 32;
-			// 
-			// scriptautoindent
-			// 
-			this.scriptautoindent.AutoSize = true;
-			this.scriptautoindent.Location = new System.Drawing.Point(354, 169);
-			this.scriptautoindent.Name = "scriptautoindent";
-			this.scriptautoindent.Size = new System.Drawing.Size(81, 18);
-			this.scriptautoindent.TabIndex = 31;
-			this.scriptautoindent.Text = "Auto indent";
-			this.scriptautoindent.UseVisualStyleBackColor = true;
-			// 
-			// label10
-			// 
-			this.label10.AutoSize = true;
-			this.label10.Location = new System.Drawing.Point(199, 170);
-			this.label10.Name = "label10";
-			this.label10.Size = new System.Drawing.Size(57, 14);
-			this.label10.TabIndex = 30;
-			this.label10.Text = "Tab width:";
-			// 
-			// panel1
-			// 
-			this.panel1.BackColor = System.Drawing.SystemColors.Window;
-			this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-			this.panel1.Controls.Add(this.scriptfontlabel);
-			this.panel1.Location = new System.Drawing.Point(236, 109);
-			this.panel1.Name = "panel1";
-			this.panel1.Size = new System.Drawing.Size(199, 38);
-			this.panel1.TabIndex = 29;
-			// 
-			// scriptfontlabel
-			// 
-			this.scriptfontlabel.BackColor = System.Drawing.SystemColors.Window;
-			this.scriptfontlabel.Dock = System.Windows.Forms.DockStyle.Fill;
-			this.scriptfontlabel.Location = new System.Drawing.Point(0, 0);
-			this.scriptfontlabel.Name = "scriptfontlabel";
-			this.scriptfontlabel.Size = new System.Drawing.Size(195, 34);
-			this.scriptfontlabel.TabIndex = 0;
-			this.scriptfontlabel.Text = "Font";
-			this.scriptfontlabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
-			// 
-			// scriptfontsize
-			// 
-			this.scriptfontsize.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.scriptfontsize.FormattingEnabled = true;
-			this.scriptfontsize.Items.AddRange(new object[] {
+            this.listactions.FullRowSelect = true;
+            this.listactions.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
+            this.listactions.HideSelection = false;
+            this.listactions.Location = new System.Drawing.Point(11, 12);
+            this.listactions.Margin = new System.Windows.Forms.Padding(8, 9, 8, 9);
+            this.listactions.MultiSelect = false;
+            this.listactions.Name = "listactions";
+            this.listactions.Size = new System.Drawing.Size(352, 462);
+            this.listactions.Sorting = System.Windows.Forms.SortOrder.Ascending;
+            this.listactions.TabIndex = 0;
+            this.listactions.TabStop = false;
+            this.listactions.UseCompatibleStateImageBehavior = false;
+            this.listactions.View = System.Windows.Forms.View.Details;
+            this.listactions.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listactions_MouseUp);
+            this.listactions.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listactions_ItemSelectionChanged);
+            this.listactions.KeyUp += new System.Windows.Forms.KeyEventHandler(this.listactions_KeyUp);
+            // 
+            // columncontrolaction
+            // 
+            this.columncontrolaction.Text = "Action";
+            this.columncontrolaction.Width = 179;
+            // 
+            // columncontrolkey
+            // 
+            this.columncontrolkey.Text = "Key";
+            this.columncontrolkey.Width = 130;
+            // 
+            // actioncontrolpanel
+            // 
+            this.actioncontrolpanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.actioncontrolpanel.Controls.Add(this.keyusedlist);
+            this.actioncontrolpanel.Controls.Add(this.keyusedlabel);
+            this.actioncontrolpanel.Controls.Add(this.disregardshiftlabel);
+            this.actioncontrolpanel.Controls.Add(this.actioncontrol);
+            this.actioncontrolpanel.Controls.Add(label7);
+            this.actioncontrolpanel.Controls.Add(this.actiontitle);
+            this.actioncontrolpanel.Controls.Add(this.actioncontrolclear);
+            this.actioncontrolpanel.Controls.Add(label6);
+            this.actioncontrolpanel.Controls.Add(this.actionkey);
+            this.actioncontrolpanel.Controls.Add(this.actiondescription);
+            this.actioncontrolpanel.Controls.Add(label5);
+            this.actioncontrolpanel.Enabled = false;
+            this.actioncontrolpanel.Location = new System.Drawing.Point(377, 12);
+            this.actioncontrolpanel.Margin = new System.Windows.Forms.Padding(6);
+            this.actioncontrolpanel.Name = "actioncontrolpanel";
+            this.actioncontrolpanel.Size = new System.Drawing.Size(282, 462);
+            this.actioncontrolpanel.TabIndex = 9;
+            this.actioncontrolpanel.TabStop = false;
+            this.actioncontrolpanel.Text = " Action control ";
+            // 
+            // keyusedlist
+            // 
+            this.keyusedlist.BackColor = System.Drawing.SystemColors.Control;
+            this.keyusedlist.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.keyusedlist.FormattingEnabled = true;
+            this.keyusedlist.IntegralHeight = false;
+            this.keyusedlist.ItemHeight = 14;
+            this.keyusedlist.Location = new System.Drawing.Point(33, 307);
+            this.keyusedlist.Name = "keyusedlist";
+            this.keyusedlist.SelectionMode = System.Windows.Forms.SelectionMode.None;
+            this.keyusedlist.Size = new System.Drawing.Size(232, 115);
+            this.keyusedlist.Sorted = true;
+            this.keyusedlist.TabIndex = 11;
+            this.keyusedlist.Visible = false;
+            // 
+            // disregardshiftlabel
+            // 
+            this.disregardshiftlabel.Location = new System.Drawing.Point(20, 224);
+            this.disregardshiftlabel.Name = "disregardshiftlabel";
+            this.disregardshiftlabel.Size = new System.Drawing.Size(245, 47);
+            this.disregardshiftlabel.TabIndex = 9;
+            this.disregardshiftlabel.Tag = "The selected actions uses %s to modify its behavior. These modifiers can not be u" +
+                "sed in a key combination for this action.";
+            this.disregardshiftlabel.Text = "The selected actions uses Shift, Alt and Control to modify its behavior. These mo" +
+                "difiers can not be used in a key combination for this action.";
+            this.disregardshiftlabel.Visible = false;
+            // 
+            // actioncontrol
+            // 
+            this.actioncontrol.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.actioncontrol.FormattingEnabled = true;
+            this.actioncontrol.ImeMode = System.Windows.Forms.ImeMode.Off;
+            this.actioncontrol.Location = new System.Drawing.Point(23, 190);
+            this.actioncontrol.Name = "actioncontrol";
+            this.actioncontrol.Size = new System.Drawing.Size(197, 22);
+            this.actioncontrol.TabIndex = 8;
+            this.actioncontrol.TabStop = false;
+            this.actioncontrol.SelectedIndexChanged += new System.EventHandler(this.actioncontrol_SelectedIndexChanged);
+            // 
+            // actiontitle
+            // 
+            this.actiontitle.AutoSize = true;
+            this.actiontitle.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.actiontitle.Location = new System.Drawing.Point(67, 30);
+            this.actiontitle.Name = "actiontitle";
+            this.actiontitle.Size = new System.Drawing.Size(172, 14);
+            this.actiontitle.TabIndex = 1;
+            this.actiontitle.Text = "(select an action from the list)";
+            this.actiontitle.UseMnemonic = false;
+            // 
+            // actioncontrolclear
+            // 
+            this.actioncontrolclear.Location = new System.Drawing.Point(193, 138);
+            this.actioncontrolclear.Name = "actioncontrolclear";
+            this.actioncontrolclear.Size = new System.Drawing.Size(63, 25);
+            this.actioncontrolclear.TabIndex = 6;
+            this.actioncontrolclear.TabStop = false;
+            this.actioncontrolclear.Text = "Clear";
+            this.actioncontrolclear.UseVisualStyleBackColor = true;
+            this.actioncontrolclear.Click += new System.EventHandler(this.actioncontrolclear_Click);
+            // 
+            // actionkey
+            // 
+            this.actionkey.ImeMode = System.Windows.Forms.ImeMode.Off;
+            this.actionkey.Location = new System.Drawing.Point(23, 140);
+            this.actionkey.Name = "actionkey";
+            this.actionkey.Size = new System.Drawing.Size(163, 20);
+            this.actionkey.TabIndex = 5;
+            this.actionkey.TabStop = false;
+            this.actionkey.KeyDown += new System.Windows.Forms.KeyEventHandler(this.actionkey_KeyDown);
+            // 
+            // actiondescription
+            // 
+            this.actiondescription.AutoEllipsis = true;
+            this.actiondescription.Location = new System.Drawing.Point(20, 50);
+            this.actiondescription.Name = "actiondescription";
+            this.actiondescription.Size = new System.Drawing.Size(245, 71);
+            this.actiondescription.TabIndex = 3;
+            this.actiondescription.UseMnemonic = false;
+            // 
+            // tabcolors
+            // 
+            this.tabcolors.Controls.Add(this.appearancegroup1);
+            this.tabcolors.Controls.Add(this.colorsgroup3);
+            this.tabcolors.Controls.Add(this.colorsgroup1);
+            this.tabcolors.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabcolors.Location = new System.Drawing.Point(4, 23);
+            this.tabcolors.Name = "tabcolors";
+            this.tabcolors.Padding = new System.Windows.Forms.Padding(5);
+            this.tabcolors.Size = new System.Drawing.Size(682, 509);
+            this.tabcolors.TabIndex = 2;
+            this.tabcolors.Text = "Appearance";
+            this.tabcolors.UseVisualStyleBackColor = true;
+            // 
+            // appearancegroup1
+            // 
+            this.appearancegroup1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.appearancegroup1.Controls.Add(label21);
+            this.appearancegroup1.Controls.Add(this.labelDynLightIntensity);
+            this.appearancegroup1.Controls.Add(this.tbDynLightIntensity);
+            this.appearancegroup1.Controls.Add(label20);
+            this.appearancegroup1.Controls.Add(this.labelDynLightSize);
+            this.appearancegroup1.Controls.Add(this.tbDynLightSize);
+            this.appearancegroup1.Controls.Add(label18);
+            this.appearancegroup1.Controls.Add(this.labelDynLightCount);
+            this.appearancegroup1.Controls.Add(this.tbDynLightCount);
+            this.appearancegroup1.Controls.Add(this.animatevisualselection);
+            this.appearancegroup1.Controls.Add(this.blackbrowsers);
+            this.appearancegroup1.Controls.Add(this.visualbilinear);
+            this.appearancegroup1.Controls.Add(label1);
+            this.appearancegroup1.Controls.Add(this.classicbilinear);
+            this.appearancegroup1.Controls.Add(this.imagebrightnesslabel);
+            this.appearancegroup1.Controls.Add(this.imagebrightness);
+            this.appearancegroup1.Location = new System.Drawing.Point(217, 236);
+            this.appearancegroup1.Name = "appearancegroup1";
+            this.appearancegroup1.Size = new System.Drawing.Size(457, 265);
+            this.appearancegroup1.TabIndex = 24;
+            this.appearancegroup1.TabStop = false;
+            this.appearancegroup1.Text = " Additional Options ";
+            // 
+            // labelDynLightIntensity
+            // 
+            this.labelDynLightIntensity.AutoSize = true;
+            this.labelDynLightIntensity.Location = new System.Drawing.Point(337, 174);
+            this.labelDynLightIntensity.Name = "labelDynLightIntensity";
+            this.labelDynLightIntensity.Size = new System.Drawing.Size(22, 14);
+            this.labelDynLightIntensity.TabIndex = 32;
+            this.labelDynLightIntensity.Text = "1.0";
+            // 
+            // tbDynLightIntensity
+            // 
+            this.tbDynLightIntensity.LargeChange = 1;
+            this.tbDynLightIntensity.Location = new System.Drawing.Point(176, 161);
+            this.tbDynLightIntensity.Minimum = 1;
+            this.tbDynLightIntensity.Name = "tbDynLightIntensity";
+            this.tbDynLightIntensity.Size = new System.Drawing.Size(154, 45);
+            this.tbDynLightIntensity.TabIndex = 30;
+            this.tbDynLightIntensity.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.tbDynLightIntensity.Value = 10;
+            this.tbDynLightIntensity.ValueChanged += new System.EventHandler(this.tbDynLightIntensity_ValueChanged);
+            // 
+            // labelDynLightSize
+            // 
+            this.labelDynLightSize.AutoSize = true;
+            this.labelDynLightSize.Location = new System.Drawing.Point(337, 126);
+            this.labelDynLightSize.Name = "labelDynLightSize";
+            this.labelDynLightSize.Size = new System.Drawing.Size(22, 14);
+            this.labelDynLightSize.TabIndex = 29;
+            this.labelDynLightSize.Text = "1.0";
+            // 
+            // tbDynLightSize
+            // 
+            this.tbDynLightSize.LargeChange = 1;
+            this.tbDynLightSize.Location = new System.Drawing.Point(176, 113);
+            this.tbDynLightSize.Maximum = 20;
+            this.tbDynLightSize.Minimum = 1;
+            this.tbDynLightSize.Name = "tbDynLightSize";
+            this.tbDynLightSize.Size = new System.Drawing.Size(154, 45);
+            this.tbDynLightSize.TabIndex = 27;
+            this.tbDynLightSize.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.tbDynLightSize.Value = 10;
+            this.tbDynLightSize.ValueChanged += new System.EventHandler(this.tbDynLightSize_ValueChanged);
+            // 
+            // labelDynLightCount
+            // 
+            this.labelDynLightCount.AutoSize = true;
+            this.labelDynLightCount.Location = new System.Drawing.Point(337, 78);
+            this.labelDynLightCount.Name = "labelDynLightCount";
+            this.labelDynLightCount.Size = new System.Drawing.Size(19, 14);
+            this.labelDynLightCount.TabIndex = 26;
+            this.labelDynLightCount.Text = "16";
+            // 
+            // tbDynLightCount
+            // 
+            this.tbDynLightCount.LargeChange = 3;
+            this.tbDynLightCount.Location = new System.Drawing.Point(176, 65);
+            this.tbDynLightCount.Maximum = 32;
+            this.tbDynLightCount.Minimum = 1;
+            this.tbDynLightCount.Name = "tbDynLightCount";
+            this.tbDynLightCount.Size = new System.Drawing.Size(154, 45);
+            this.tbDynLightCount.TabIndex = 24;
+            this.tbDynLightCount.TickFrequency = 4;
+            this.tbDynLightCount.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.tbDynLightCount.Value = 1;
+            this.tbDynLightCount.ValueChanged += new System.EventHandler(this.tbDynLightCount_ValueChanged);
+            // 
+            // animatevisualselection
+            // 
+            this.animatevisualselection.AutoSize = true;
+            this.animatevisualselection.Location = new System.Drawing.Point(244, 236);
+            this.animatevisualselection.Name = "animatevisualselection";
+            this.animatevisualselection.Size = new System.Drawing.Size(188, 18);
+            this.animatevisualselection.TabIndex = 23;
+            this.animatevisualselection.Text = "Animate selection in visual modes";
+            this.animatevisualselection.UseVisualStyleBackColor = true;
+            // 
+            // blackbrowsers
+            // 
+            this.blackbrowsers.AutoSize = true;
+            this.blackbrowsers.Location = new System.Drawing.Point(244, 212);
+            this.blackbrowsers.Name = "blackbrowsers";
+            this.blackbrowsers.Size = new System.Drawing.Size(199, 18);
+            this.blackbrowsers.TabIndex = 4;
+            this.blackbrowsers.Text = "Black background in image browser";
+            this.blackbrowsers.UseVisualStyleBackColor = true;
+            // 
+            // visualbilinear
+            // 
+            this.visualbilinear.AutoSize = true;
+            this.visualbilinear.Location = new System.Drawing.Point(25, 236);
+            this.visualbilinear.Name = "visualbilinear";
+            this.visualbilinear.Size = new System.Drawing.Size(176, 18);
+            this.visualbilinear.TabIndex = 6;
+            this.visualbilinear.Text = "Bilinear filtering in visual modes";
+            this.visualbilinear.UseVisualStyleBackColor = true;
+            // 
+            // classicbilinear
+            // 
+            this.classicbilinear.AutoSize = true;
+            this.classicbilinear.Location = new System.Drawing.Point(25, 212);
+            this.classicbilinear.Name = "classicbilinear";
+            this.classicbilinear.Size = new System.Drawing.Size(182, 18);
+            this.classicbilinear.TabIndex = 5;
+            this.classicbilinear.Text = "Bilinear filtering in classic modes";
+            this.classicbilinear.UseVisualStyleBackColor = true;
+            // 
+            // imagebrightnesslabel
+            // 
+            this.imagebrightnesslabel.AutoSize = true;
+            this.imagebrightnesslabel.Location = new System.Drawing.Point(337, 30);
+            this.imagebrightnesslabel.Name = "imagebrightnesslabel";
+            this.imagebrightnesslabel.Size = new System.Drawing.Size(31, 14);
+            this.imagebrightnesslabel.TabIndex = 22;
+            this.imagebrightnesslabel.Text = "+ 0 y";
+            // 
+            // imagebrightness
+            // 
+            this.imagebrightness.LargeChange = 3;
+            this.imagebrightness.Location = new System.Drawing.Point(176, 17);
+            this.imagebrightness.Name = "imagebrightness";
+            this.imagebrightness.Size = new System.Drawing.Size(154, 45);
+            this.imagebrightness.TabIndex = 3;
+            this.imagebrightness.TickStyle = System.Windows.Forms.TickStyle.Both;
+            this.imagebrightness.ValueChanged += new System.EventHandler(this.imagebrightness_ValueChanged);
+            // 
+            // colorsgroup3
+            // 
+            this.colorsgroup3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.colorsgroup3.Controls.Add(this.scripttabwidth);
+            this.colorsgroup3.Controls.Add(this.scriptautoindent);
+            this.colorsgroup3.Controls.Add(this.label10);
+            this.colorsgroup3.Controls.Add(this.panel1);
+            this.colorsgroup3.Controls.Add(this.scriptfontsize);
+            this.colorsgroup3.Controls.Add(this.label8);
+            this.colorsgroup3.Controls.Add(this.scriptfontbold);
+            this.colorsgroup3.Controls.Add(this.scriptfontname);
+            this.colorsgroup3.Controls.Add(this.label3);
+            this.colorsgroup3.Controls.Add(this.colorconstants);
+            this.colorsgroup3.Controls.Add(this.colorliterals);
+            this.colorsgroup3.Controls.Add(this.colorscriptbackground);
+            this.colorsgroup3.Controls.Add(this.colorkeywords);
+            this.colorsgroup3.Controls.Add(this.colorlinenumbers);
+            this.colorsgroup3.Controls.Add(this.colorcomments);
+            this.colorsgroup3.Controls.Add(this.colorplaintext);
+            this.colorsgroup3.Location = new System.Drawing.Point(217, 8);
+            this.colorsgroup3.Name = "colorsgroup3";
+            this.colorsgroup3.Size = new System.Drawing.Size(457, 222);
+            this.colorsgroup3.TabIndex = 1;
+            this.colorsgroup3.TabStop = false;
+            this.colorsgroup3.Text = " Script editor ";
+            this.colorsgroup3.Visible = false;
+            // 
+            // scripttabwidth
+            // 
+            this.scripttabwidth.AllowDecimal = false;
+            this.scripttabwidth.AllowNegative = false;
+            this.scripttabwidth.AllowRelative = false;
+            this.scripttabwidth.ButtonStep = 2;
+            this.scripttabwidth.Location = new System.Drawing.Point(259, 165);
+            this.scripttabwidth.Name = "scripttabwidth";
+            this.scripttabwidth.Size = new System.Drawing.Size(71, 24);
+            this.scripttabwidth.StepValues = null;
+            this.scripttabwidth.TabIndex = 32;
+            // 
+            // scriptautoindent
+            // 
+            this.scriptautoindent.AutoSize = true;
+            this.scriptautoindent.Location = new System.Drawing.Point(354, 169);
+            this.scriptautoindent.Name = "scriptautoindent";
+            this.scriptautoindent.Size = new System.Drawing.Size(81, 18);
+            this.scriptautoindent.TabIndex = 31;
+            this.scriptautoindent.Text = "Auto indent";
+            this.scriptautoindent.UseVisualStyleBackColor = true;
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.Location = new System.Drawing.Point(199, 170);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(57, 14);
+            this.label10.TabIndex = 30;
+            this.label10.Text = "Tab width:";
+            // 
+            // panel1
+            // 
+            this.panel1.BackColor = System.Drawing.SystemColors.Window;
+            this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.panel1.Controls.Add(this.scriptfontlabel);
+            this.panel1.Location = new System.Drawing.Point(236, 109);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(199, 38);
+            this.panel1.TabIndex = 29;
+            // 
+            // scriptfontlabel
+            // 
+            this.scriptfontlabel.BackColor = System.Drawing.SystemColors.Window;
+            this.scriptfontlabel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.scriptfontlabel.Location = new System.Drawing.Point(0, 0);
+            this.scriptfontlabel.Name = "scriptfontlabel";
+            this.scriptfontlabel.Size = new System.Drawing.Size(195, 34);
+            this.scriptfontlabel.TabIndex = 0;
+            this.scriptfontlabel.Text = "Font";
+            this.scriptfontlabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+            // 
+            // scriptfontsize
+            // 
+            this.scriptfontsize.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.scriptfontsize.FormattingEnabled = true;
+            this.scriptfontsize.Items.AddRange(new object[] {
             "7",
             "8",
             "9",
@@ -1436,236 +1447,224 @@ namespace CodeImp.DoomBuilder.Windows
             "36",
             "48",
             "72"});
-			this.scriptfontsize.Location = new System.Drawing.Point(236, 67);
-			this.scriptfontsize.Name = "scriptfontsize";
-			this.scriptfontsize.Size = new System.Drawing.Size(94, 22);
-			this.scriptfontsize.TabIndex = 25;
-			// 
-			// label8
-			// 
-			this.label8.AutoSize = true;
-			this.label8.Location = new System.Drawing.Point(199, 70);
-			this.label8.Name = "label8";
-			this.label8.Size = new System.Drawing.Size(31, 14);
-			this.label8.TabIndex = 28;
-			this.label8.Text = "Size:";
-			// 
-			// scriptfontbold
-			// 
-			this.scriptfontbold.AutoSize = true;
-			this.scriptfontbold.Location = new System.Drawing.Point(354, 69);
-			this.scriptfontbold.Name = "scriptfontbold";
-			this.scriptfontbold.Size = new System.Drawing.Size(47, 18);
-			this.scriptfontbold.TabIndex = 26;
-			this.scriptfontbold.Text = "Bold";
-			this.scriptfontbold.UseVisualStyleBackColor = true;
-			// 
-			// scriptfontname
-			// 
-			this.scriptfontname.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-			this.scriptfontname.FormattingEnabled = true;
-			this.scriptfontname.Location = new System.Drawing.Point(236, 27);
-			this.scriptfontname.Name = "scriptfontname";
-			this.scriptfontname.Size = new System.Drawing.Size(199, 22);
-			this.scriptfontname.Sorted = true;
-			this.scriptfontname.TabIndex = 23;
-			// 
-			// label3
-			// 
-			this.label3.AutoSize = true;
-			this.label3.Location = new System.Drawing.Point(199, 30);
-			this.label3.Name = "label3";
-			this.label3.Size = new System.Drawing.Size(31, 14);
-			this.label3.TabIndex = 24;
-			this.label3.Text = "Font:";
-			// 
-			// colorconstants
-			// 
-			this.colorconstants.BackColor = System.Drawing.Color.Transparent;
-			this.colorconstants.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorconstants.Label = "Constants:";
-			this.colorconstants.Location = new System.Drawing.Point(15, 189);
-			this.colorconstants.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorconstants.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorconstants.Name = "colorconstants";
-			this.colorconstants.Size = new System.Drawing.Size(150, 23);
-			this.colorconstants.TabIndex = 6;
-			// 
-			// colorliterals
-			// 
-			this.colorliterals.BackColor = System.Drawing.Color.Transparent;
-			this.colorliterals.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorliterals.Label = "Literals:";
-			this.colorliterals.Location = new System.Drawing.Point(15, 162);
-			this.colorliterals.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorliterals.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorliterals.Name = "colorliterals";
-			this.colorliterals.Size = new System.Drawing.Size(150, 23);
-			this.colorliterals.TabIndex = 5;
-			// 
-			// colorscriptbackground
-			// 
-			this.colorscriptbackground.BackColor = System.Drawing.Color.Transparent;
-			this.colorscriptbackground.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorscriptbackground.Label = "Background:";
-			this.colorscriptbackground.Location = new System.Drawing.Point(15, 27);
-			this.colorscriptbackground.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorscriptbackground.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorscriptbackground.Name = "colorscriptbackground";
-			this.colorscriptbackground.Size = new System.Drawing.Size(150, 23);
-			this.colorscriptbackground.TabIndex = 0;
-			// 
-			// colorkeywords
-			// 
-			this.colorkeywords.BackColor = System.Drawing.Color.Transparent;
-			this.colorkeywords.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorkeywords.Label = "Keywords:";
-			this.colorkeywords.Location = new System.Drawing.Point(15, 135);
-			this.colorkeywords.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorkeywords.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorkeywords.Name = "colorkeywords";
-			this.colorkeywords.Size = new System.Drawing.Size(150, 23);
-			this.colorkeywords.TabIndex = 4;
-			// 
-			// colorlinenumbers
-			// 
-			this.colorlinenumbers.BackColor = System.Drawing.Color.Transparent;
-			this.colorlinenumbers.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorlinenumbers.Label = "Line numbers:";
-			this.colorlinenumbers.Location = new System.Drawing.Point(15, 54);
-			this.colorlinenumbers.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorlinenumbers.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorlinenumbers.Name = "colorlinenumbers";
-			this.colorlinenumbers.Size = new System.Drawing.Size(150, 23);
-			this.colorlinenumbers.TabIndex = 1;
-			// 
-			// colorcomments
-			// 
-			this.colorcomments.BackColor = System.Drawing.Color.Transparent;
-			this.colorcomments.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorcomments.Label = "Comments:";
-			this.colorcomments.Location = new System.Drawing.Point(15, 108);
-			this.colorcomments.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorcomments.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorcomments.Name = "colorcomments";
-			this.colorcomments.Size = new System.Drawing.Size(150, 23);
-			this.colorcomments.TabIndex = 3;
-			// 
-			// colorplaintext
-			// 
-			this.colorplaintext.BackColor = System.Drawing.Color.Transparent;
-			this.colorplaintext.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.colorplaintext.Label = "Plain text:";
-			this.colorplaintext.Location = new System.Drawing.Point(15, 81);
-			this.colorplaintext.MaximumSize = new System.Drawing.Size(10000, 23);
-			this.colorplaintext.MinimumSize = new System.Drawing.Size(100, 23);
-			this.colorplaintext.Name = "colorplaintext";
-			this.colorplaintext.Size = new System.Drawing.Size(150, 23);
-			this.colorplaintext.TabIndex = 2;
-			// 
-			// tabpasting
-			// 
-			this.tabpasting.Controls.Add(this.label16);
-			this.tabpasting.Controls.Add(this.pasteoptions);
-			this.tabpasting.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.tabpasting.Location = new System.Drawing.Point(4, 23);
-			this.tabpasting.Name = "tabpasting";
-			this.tabpasting.Padding = new System.Windows.Forms.Padding(5);
-			this.tabpasting.Size = new System.Drawing.Size(682, 509);
-			this.tabpasting.TabIndex = 3;
-			this.tabpasting.Text = "Pasting ";
-			this.tabpasting.UseVisualStyleBackColor = true;
-			// 
-			// label16
-			// 
-			this.label16.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.label16.Location = new System.Drawing.Point(11, 15);
-			this.label16.Name = "label16";
-			this.label16.Size = new System.Drawing.Size(649, 35);
-			this.label16.TabIndex = 1;
-			this.label16.Text = "These are the default options for pasting geometry. You can also choose these opt" +
-				"ions when you use the Paste Special function. These options also apply when inse" +
-				"rting prefabs.";
-			// 
-			// pasteoptions
-			// 
-			this.pasteoptions.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-						| System.Windows.Forms.AnchorStyles.Left)
-						| System.Windows.Forms.AnchorStyles.Right)));
-			this.pasteoptions.Location = new System.Drawing.Point(8, 53);
-			this.pasteoptions.Name = "pasteoptions";
-			this.pasteoptions.Size = new System.Drawing.Size(666, 427);
-			this.pasteoptions.TabIndex = 0;
-			// 
-			// cbStretchModels
-			// 
-			this.cbStretchModels.AutoSize = true;
-			this.cbStretchModels.Location = new System.Drawing.Point(21, 463);
-			this.cbStretchModels.Name = "cbStretchModels";
-			this.cbStretchModels.Size = new System.Drawing.Size(169, 18);
-			this.cbStretchModels.TabIndex = 18;
-			this.cbStretchModels.Text = "Scale models in Visual modes";
-			this.toolTip1.SetToolTip(this.cbStretchModels, "Set models\' rendered height to 85% \r\nto mimic GZDoom\'s way of rendering.");
-			this.cbStretchModels.UseVisualStyleBackColor = true;
-			// 
-			// PreferencesForm
-			// 
-			this.AcceptButton = this.apply;
-			this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
-			this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
-			this.CancelButton = this.apply;
-			this.ClientSize = new System.Drawing.Size(711, 594);
-			this.Controls.Add(this.cancel);
-			this.Controls.Add(this.apply);
-			this.Controls.Add(this.tabs);
-			this.DoubleBuffered = true;
-			this.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
-			this.MaximizeBox = false;
-			this.MinimizeBox = false;
-			this.Name = "PreferencesForm";
-			this.Opacity = 0;
-			this.ShowIcon = false;
-			this.ShowInTaskbar = false;
-			this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
-			this.Text = "Preferences";
-			this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.PreferencesForm_HelpRequested);
-			groupBox1.ResumeLayout(false);
-			groupBox1.PerformLayout();
-			((System.ComponentModel.ISupportInitialize)(this.zoomfactor)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.autoscrollspeed)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.previewsize)).EndInit();
-			this.colorsgroup1.ResumeLayout(false);
-			this.colorsgroup1.PerformLayout();
-			((System.ComponentModel.ISupportInitialize)(this.doublesidedalpha)).EndInit();
-			this.tabs.ResumeLayout(false);
-			this.tabinterface.ResumeLayout(false);
-			this.groupBox5.ResumeLayout(false);
-			this.groupBox5.PerformLayout();
-			this.groupBox4.ResumeLayout(false);
-			this.groupBox4.PerformLayout();
-			this.groupBox2.ResumeLayout(false);
-			this.groupBox2.PerformLayout();
-			((System.ComponentModel.ISupportInitialize)(this.viewdistance)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.movespeed)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.mousespeed)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.fieldofview)).EndInit();
-			this.tabkeys.ResumeLayout(false);
-			this.actioncontrolpanel.ResumeLayout(false);
-			this.actioncontrolpanel.PerformLayout();
-			this.tabcolors.ResumeLayout(false);
-			this.appearancegroup1.ResumeLayout(false);
-			this.appearancegroup1.PerformLayout();
-			((System.ComponentModel.ISupportInitialize)(this.tbDynLightIntensity)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.tbDynLightSize)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.tbDynLightCount)).EndInit();
-			((System.ComponentModel.ISupportInitialize)(this.imagebrightness)).EndInit();
-			this.colorsgroup3.ResumeLayout(false);
-			this.colorsgroup3.PerformLayout();
-			this.panel1.ResumeLayout(false);
-			this.tabpasting.ResumeLayout(false);
-			this.ResumeLayout(false);
+            this.scriptfontsize.Location = new System.Drawing.Point(236, 67);
+            this.scriptfontsize.Name = "scriptfontsize";
+            this.scriptfontsize.Size = new System.Drawing.Size(94, 22);
+            this.scriptfontsize.TabIndex = 25;
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Location = new System.Drawing.Point(199, 70);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(31, 14);
+            this.label8.TabIndex = 28;
+            this.label8.Text = "Size:";
+            // 
+            // scriptfontbold
+            // 
+            this.scriptfontbold.AutoSize = true;
+            this.scriptfontbold.Location = new System.Drawing.Point(354, 69);
+            this.scriptfontbold.Name = "scriptfontbold";
+            this.scriptfontbold.Size = new System.Drawing.Size(47, 18);
+            this.scriptfontbold.TabIndex = 26;
+            this.scriptfontbold.Text = "Bold";
+            this.scriptfontbold.UseVisualStyleBackColor = true;
+            // 
+            // scriptfontname
+            // 
+            this.scriptfontname.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.scriptfontname.FormattingEnabled = true;
+            this.scriptfontname.Location = new System.Drawing.Point(236, 27);
+            this.scriptfontname.Name = "scriptfontname";
+            this.scriptfontname.Size = new System.Drawing.Size(199, 22);
+            this.scriptfontname.Sorted = true;
+            this.scriptfontname.TabIndex = 23;
+            // 
+            // label3
+            // 
+            this.label3.AutoSize = true;
+            this.label3.Location = new System.Drawing.Point(199, 30);
+            this.label3.Name = "label3";
+            this.label3.Size = new System.Drawing.Size(31, 14);
+            this.label3.TabIndex = 24;
+            this.label3.Text = "Font:";
+            // 
+            // colorconstants
+            // 
+            this.colorconstants.BackColor = System.Drawing.Color.Transparent;
+            this.colorconstants.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorconstants.Label = "Constants:";
+            this.colorconstants.Location = new System.Drawing.Point(15, 189);
+            this.colorconstants.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorconstants.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorconstants.Name = "colorconstants";
+            this.colorconstants.Size = new System.Drawing.Size(150, 23);
+            this.colorconstants.TabIndex = 6;
+            // 
+            // colorliterals
+            // 
+            this.colorliterals.BackColor = System.Drawing.Color.Transparent;
+            this.colorliterals.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorliterals.Label = "Literals:";
+            this.colorliterals.Location = new System.Drawing.Point(15, 162);
+            this.colorliterals.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorliterals.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorliterals.Name = "colorliterals";
+            this.colorliterals.Size = new System.Drawing.Size(150, 23);
+            this.colorliterals.TabIndex = 5;
+            // 
+            // colorscriptbackground
+            // 
+            this.colorscriptbackground.BackColor = System.Drawing.Color.Transparent;
+            this.colorscriptbackground.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorscriptbackground.Label = "Background:";
+            this.colorscriptbackground.Location = new System.Drawing.Point(15, 27);
+            this.colorscriptbackground.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorscriptbackground.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorscriptbackground.Name = "colorscriptbackground";
+            this.colorscriptbackground.Size = new System.Drawing.Size(150, 23);
+            this.colorscriptbackground.TabIndex = 0;
+            // 
+            // colorkeywords
+            // 
+            this.colorkeywords.BackColor = System.Drawing.Color.Transparent;
+            this.colorkeywords.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorkeywords.Label = "Keywords:";
+            this.colorkeywords.Location = new System.Drawing.Point(15, 135);
+            this.colorkeywords.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorkeywords.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorkeywords.Name = "colorkeywords";
+            this.colorkeywords.Size = new System.Drawing.Size(150, 23);
+            this.colorkeywords.TabIndex = 4;
+            // 
+            // colorlinenumbers
+            // 
+            this.colorlinenumbers.BackColor = System.Drawing.Color.Transparent;
+            this.colorlinenumbers.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorlinenumbers.Label = "Line numbers:";
+            this.colorlinenumbers.Location = new System.Drawing.Point(15, 54);
+            this.colorlinenumbers.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorlinenumbers.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorlinenumbers.Name = "colorlinenumbers";
+            this.colorlinenumbers.Size = new System.Drawing.Size(150, 23);
+            this.colorlinenumbers.TabIndex = 1;
+            // 
+            // colorcomments
+            // 
+            this.colorcomments.BackColor = System.Drawing.Color.Transparent;
+            this.colorcomments.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorcomments.Label = "Comments:";
+            this.colorcomments.Location = new System.Drawing.Point(15, 108);
+            this.colorcomments.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorcomments.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorcomments.Name = "colorcomments";
+            this.colorcomments.Size = new System.Drawing.Size(150, 23);
+            this.colorcomments.TabIndex = 3;
+            // 
+            // colorplaintext
+            // 
+            this.colorplaintext.BackColor = System.Drawing.Color.Transparent;
+            this.colorplaintext.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.colorplaintext.Label = "Plain text:";
+            this.colorplaintext.Location = new System.Drawing.Point(15, 81);
+            this.colorplaintext.MaximumSize = new System.Drawing.Size(10000, 23);
+            this.colorplaintext.MinimumSize = new System.Drawing.Size(100, 23);
+            this.colorplaintext.Name = "colorplaintext";
+            this.colorplaintext.Size = new System.Drawing.Size(150, 23);
+            this.colorplaintext.TabIndex = 2;
+            // 
+            // tabpasting
+            // 
+            this.tabpasting.Controls.Add(this.label16);
+            this.tabpasting.Controls.Add(this.pasteoptions);
+            this.tabpasting.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.tabpasting.Location = new System.Drawing.Point(4, 23);
+            this.tabpasting.Name = "tabpasting";
+            this.tabpasting.Padding = new System.Windows.Forms.Padding(5);
+            this.tabpasting.Size = new System.Drawing.Size(682, 509);
+            this.tabpasting.TabIndex = 3;
+            this.tabpasting.Text = "Pasting ";
+            this.tabpasting.UseVisualStyleBackColor = true;
+            // 
+            // label16
+            // 
+            this.label16.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.label16.Location = new System.Drawing.Point(11, 15);
+            this.label16.Name = "label16";
+            this.label16.Size = new System.Drawing.Size(649, 35);
+            this.label16.TabIndex = 1;
+            this.label16.Text = "These are the default options for pasting geometry. You can also choose these opt" +
+                "ions when you use the Paste Special function. These options also apply when inse" +
+                "rting prefabs.";
+            // 
+            // pasteoptions
+            // 
+            this.pasteoptions.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                        | System.Windows.Forms.AnchorStyles.Left)
+                        | System.Windows.Forms.AnchorStyles.Right)));
+            this.pasteoptions.Location = new System.Drawing.Point(8, 53);
+            this.pasteoptions.Name = "pasteoptions";
+            this.pasteoptions.Size = new System.Drawing.Size(666, 427);
+            this.pasteoptions.TabIndex = 0;
+            // 
+            // PreferencesForm
+            // 
+            this.AcceptButton = this.apply;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+            this.CancelButton = this.apply;
+            this.ClientSize = new System.Drawing.Size(711, 594);
+            this.Controls.Add(this.cancel);
+            this.Controls.Add(this.apply);
+            this.Controls.Add(this.tabs);
+            this.DoubleBuffered = true;
+            this.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "PreferencesForm";
+            this.ShowIcon = false;
+            this.ShowInTaskbar = false;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "Preferences";
+            this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.PreferencesForm_HelpRequested);
+            groupBox1.ResumeLayout(false);
+            groupBox1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.zoomfactor)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.autoscrollspeed)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.previewsize)).EndInit();
+            this.colorsgroup1.ResumeLayout(false);
+            this.colorsgroup1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.doublesidedalpha)).EndInit();
+            this.tabs.ResumeLayout(false);
+            this.tabinterface.ResumeLayout(false);
+            this.groupBox5.ResumeLayout(false);
+            this.groupBox5.PerformLayout();
+            this.groupBox4.ResumeLayout(false);
+            this.groupBox4.PerformLayout();
+            this.groupBox2.ResumeLayout(false);
+            this.groupBox2.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.viewdistance)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.movespeed)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.mousespeed)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.fieldofview)).EndInit();
+            this.tabkeys.ResumeLayout(false);
+            this.actioncontrolpanel.ResumeLayout(false);
+            this.actioncontrolpanel.PerformLayout();
+            this.tabcolors.ResumeLayout(false);
+            this.appearancegroup1.ResumeLayout(false);
+            this.appearancegroup1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.tbDynLightIntensity)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbDynLightSize)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.tbDynLightCount)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.imagebrightness)).EndInit();
+            this.colorsgroup3.ResumeLayout(false);
+            this.colorsgroup3.PerformLayout();
+            this.panel1.ResumeLayout(false);
+            this.tabpasting.ResumeLayout(false);
+            this.ResumeLayout(false);
 
 		}
 
diff --git a/Source/Plugins/BuilderModes/ErrorChecks/CheckStuckThings.cs b/Source/Plugins/BuilderModes/ErrorChecks/CheckStuckThings.cs
index 69b449937e20cc35e5e7e1b00f0f622d0a750e13..d997c71b990921b06018be0dedf10c286030bdae 100644
--- a/Source/Plugins/BuilderModes/ErrorChecks/CheckStuckThings.cs
+++ b/Source/Plugins/BuilderModes/ErrorChecks/CheckStuckThings.cs
@@ -151,7 +151,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
 								Dictionary<string, bool> flags2 = ot.GetFlags();
 								*/
 
-								if (ThingsOverlap(t, ot))
+								if (FlagsOverlap(t, ot) && ThingsOverlap(t, ot))
 								{
 									stuck = true;
 									stucktype = StuckType.Thing;
@@ -247,6 +247,37 @@ namespace CodeImp.DoomBuilder.BuilderModes
 			return true;
 		}
 		
+		// Checks if the flags of two things overlap (i.e. if they show up at the same time)
+        private bool FlagsOverlap(Thing t1, Thing t2) {
+            Dictionary<string, List<ThingFlagsCompare>> groups = new Dictionary<string, List<ThingFlagsCompare>>();
+            int overlappinggroups = 0;
+
+            // Create a summary which flags belong to which groups
+            foreach (ThingFlagsCompare tfc in General.Map.Config.ThingFlagsCompare) {
+                if (!groups.ContainsKey(tfc.Group))
+                    groups[tfc.Group] = new List<ThingFlagsCompare>();
+
+                groups[tfc.Group].Add(tfc);
+            }
+
+            // Go through all flags in all groups and check if they overlap
+            foreach (string g in groups.Keys) {
+                foreach (ThingFlagsCompare tfc in groups[g]) {
+                    if (tfc.Compare(t1, t2) > 0) {
+                        overlappinggroups++;
+                        break;
+                    }
+                }
+            }
+
+            // All groups have to overlap for the things to show up
+            // at the same time
+            if (overlappinggroups == groups.Count)
+                return true;
+
+            return false;
+        }
+		
 		#endregion
 	}
 }
diff --git a/Source/Plugins/GZDoomEditing/VisualModes/VisualCeiling.cs b/Source/Plugins/GZDoomEditing/VisualModes/VisualCeiling.cs
index 47dc4c26d8901ee33a0360040b07f93ed8cfd706..275e79c58329c8105ea7cd680618ebc48aaa710f 100644
--- a/Source/Plugins/GZDoomEditing/VisualModes/VisualCeiling.cs
+++ b/Source/Plugins/GZDoomEditing/VisualModes/VisualCeiling.cs
@@ -215,6 +215,32 @@ namespace CodeImp.DoomBuilder.GZDoomEditing
 			level.sector.CeilHeight += amount;
 			mode.SetActionResult("Changed ceiling height to " + level.sector.CeilHeight + ".");
 		}
+
+        //mxd. Sector brightness change
+        public override void OnChangeTargetBrightness(bool up) {
+            if (level != null && level.sector != Sector.Sector) {
+                int index = -1;
+                for (int i = 0; i < Sector.ExtraCeilings.Count; i++) {
+                    if (Sector.ExtraCeilings[i] == this) {
+                        index = i + 1;
+                        break;
+                    }
+                }
+
+                if (index > -1 && index < Sector.ExtraCeilings.Count) {
+                    Sector.ExtraCeilings[index].changeControlSectorBrightness(up);
+                } else {
+                    base.OnChangeTargetBrightness(up);
+                }
+            } else {
+                base.OnChangeTargetBrightness(up);
+            }
+        }
+
+        //mxd
+        private void changeControlSectorBrightness(bool up) {
+            ((BaseVisualSector)mode.GetVisualSector(level.sector)).Ceiling.OnChangeTargetBrightness(up);
+        }
 		
 		// This performs a fast test in object picking
 		public override bool PickFastReject(Vector3D from, Vector3D to, Vector3D dir)
diff --git a/Source/Plugins/GZDoomEditing/VisualModes/VisualFloor.cs b/Source/Plugins/GZDoomEditing/VisualModes/VisualFloor.cs
index 58893ce3ac3f3bf229c637f044c138ae79d7b7e7..8df2d9f271478608313654431abce7c356e18849 100644
--- a/Source/Plugins/GZDoomEditing/VisualModes/VisualFloor.cs
+++ b/Source/Plugins/GZDoomEditing/VisualModes/VisualFloor.cs
@@ -216,6 +216,21 @@ namespace CodeImp.DoomBuilder.GZDoomEditing
 			mode.SetActionResult("Changed floor height to " + level.sector.FloorHeight + ".");
 		}
 
+        //mxd. Sector brightness change
+        public override void OnChangeTargetBrightness(bool up) {
+            if (level != null) {
+                if (level.sector != Sector.Sector) {
+                    ((BaseVisualSector)mode.GetVisualSector(level.sector)).Ceiling.OnChangeTargetBrightness(up);
+                } else if (Sector.ExtraFloors.Count > 0) {
+                    Sector.ExtraFloors[0].OnChangeTargetBrightness(up);
+                } else {
+                    base.OnChangeTargetBrightness(up);
+                }
+            } else {
+                base.OnChangeTargetBrightness(up);
+            }
+        }
+
 		// This performs a fast test in object picking
 		public override bool PickFastReject(Vector3D from, Vector3D to, Vector3D dir)
 		{