From 751e2dd3e39fd9699e88e50facc9064ecbdd135b Mon Sep 17 00:00:00 2001
From: MaxED <j.maxed@gmail.com>
Date: Fri, 6 May 2016 08:47:30 +0000
Subject: [PATCH] Added some boilerplate to clipboard operations.

---
 Source/Core/Editing/CopyPasteManager.cs       |  16 +++++++++++++--
 Source/Core/Resources/MLogo.png               | Bin 3677 -> 5402 bytes
 Source/Core/Windows/AboutForm.Designer.cs     |  10 ++++-----
 Source/Core/Windows/AboutForm.cs              |  10 ++++++++-
 Source/Core/Windows/ErrorsForm.cs             |   2 +-
 .../Core/Windows/PreferencesForm.Designer.cs  |  16 +++++++--------
 .../BuilderModes/Interface/ErrorCheckForm.cs  |  19 +++++++++++++-----
 7 files changed, 51 insertions(+), 22 deletions(-)

diff --git a/Source/Core/Editing/CopyPasteManager.cs b/Source/Core/Editing/CopyPasteManager.cs
index af5a16657..703e5c39e 100644
--- a/Source/Core/Editing/CopyPasteManager.cs
+++ b/Source/Core/Editing/CopyPasteManager.cs
@@ -19,6 +19,7 @@
 using System;
 using System.Collections.Generic;
 using System.IO;
+using System.Runtime.InteropServices;
 using System.Windows.Forms;
 using CodeImp.DoomBuilder.Actions;
 using CodeImp.DoomBuilder.Config;
@@ -248,8 +249,19 @@ namespace CodeImp.DoomBuilder.Editing
 						ClipboardStreamWriter writer = new ClipboardStreamWriter(); //mxd
 						writer.Write(copyset, memstream);
 
-						// Set on clipboard
-						Clipboard.SetData(CLIPBOARD_DATA_FORMAT, memstream);
+						try
+						{
+							//mxd. Set on clipboard
+							DataObject copydata = new DataObject();
+							copydata.SetData(CLIPBOARD_DATA_FORMAT, memstream);
+							Clipboard.SetDataObject(copydata, true, 5, 200);
+						}
+						catch(ExternalException)
+						{
+							General.Interface.DisplayStatus(StatusType.Warning, "Failed to perform a Clipboard operation...");
+							memstream.Dispose();
+							return false;
+						}
 
 						// Done
 						memstream.Dispose();
diff --git a/Source/Core/Resources/MLogo.png b/Source/Core/Resources/MLogo.png
index 6ae0ce316341b7b02bcede6220a953e13e8db416..e46f2d8c199d28a108959c74a5cacbfcbe1bf4a4 100644
GIT binary patch
literal 5402
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
MnyzZ`Et|0a0lNCXcK`qY

delta 3675
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

diff --git a/Source/Core/Windows/AboutForm.Designer.cs b/Source/Core/Windows/AboutForm.Designer.cs
index 7f2cce3af..49709801d 100644
--- a/Source/Core/Windows/AboutForm.Designer.cs
+++ b/Source/Core/Windows/AboutForm.Designer.cs
@@ -163,9 +163,9 @@ namespace CodeImp.DoomBuilder.Windows
 			// pictureBox4
 			// 
 			this.pictureBox4.Image = global::CodeImp.DoomBuilder.Properties.Resources.MLogo;
-			this.pictureBox4.Location = new System.Drawing.Point(289, 6);
+			this.pictureBox4.Location = new System.Drawing.Point(291, 6);
 			this.pictureBox4.Name = "pictureBox4";
-			this.pictureBox4.Size = new System.Drawing.Size(88, 80);
+			this.pictureBox4.Size = new System.Drawing.Size(86, 88);
 			this.pictureBox4.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
 			this.pictureBox4.TabIndex = 16;
 			this.pictureBox4.TabStop = false;
@@ -187,9 +187,9 @@ namespace CodeImp.DoomBuilder.Windows
 			// 
 			// copyversion
 			// 
-			this.copyversion.Location = new System.Drawing.Point(269, 97);
+			this.copyversion.Location = new System.Drawing.Point(291, 95);
 			this.copyversion.Name = "copyversion";
-			this.copyversion.Size = new System.Drawing.Size(108, 25);
+			this.copyversion.Size = new System.Drawing.Size(81, 25);
 			this.copyversion.TabIndex = 13;
 			this.copyversion.Text = "Copy Version";
 			this.copyversion.UseVisualStyleBackColor = true;
@@ -199,7 +199,7 @@ namespace CodeImp.DoomBuilder.Windows
 			// 
 			this.version.AutoSize = true;
 			this.version.FlatStyle = System.Windows.Forms.FlatStyle.System;
-			this.version.Location = new System.Drawing.Point(11, 102);
+			this.version.Location = new System.Drawing.Point(14, 102);
 			this.version.Name = "version";
 			this.version.Size = new System.Drawing.Size(150, 13);
 			this.version.TabIndex = 11;
diff --git a/Source/Core/Windows/AboutForm.cs b/Source/Core/Windows/AboutForm.cs
index d8f82912c..b541c0bb7 100644
--- a/Source/Core/Windows/AboutForm.cs
+++ b/Source/Core/Windows/AboutForm.cs
@@ -17,6 +17,7 @@
 #region ================== Namespaces
 
 using System;
+using System.Runtime.InteropServices;
 using System.Windows.Forms;
 
 #endregion
@@ -60,7 +61,14 @@ namespace CodeImp.DoomBuilder.Windows
 		// This copies the version number to clipboard
 		private void copyversion_Click(object sender, EventArgs e)
 		{
-			Clipboard.SetDataObject(Application.ProductVersion, true, 5, 200); //mxd
+			try //mxd
+			{
+				Clipboard.SetDataObject(Application.ProductVersion, true, 5, 200);
+			}
+			catch(ExternalException)
+			{
+				General.Interface.DisplayStatus(StatusType.Warning, "Failed to perform a Clipboard operation...");
+			}
 		}
 	}
 }
\ No newline at end of file
diff --git a/Source/Core/Windows/ErrorsForm.cs b/Source/Core/Windows/ErrorsForm.cs
index c2e884029..cad5397e6 100644
--- a/Source/Core/Windows/ErrorsForm.cs
+++ b/Source/Core/Windows/ErrorsForm.cs
@@ -138,7 +138,7 @@ namespace CodeImp.DoomBuilder.Windows
 				//mxd
 				try 
 				{
-					Clipboard.SetDataObject(str.ToString(), true);
+					Clipboard.SetDataObject(str.ToString(), true, 5, 200);
 				} 
 				catch(ExternalException) 
 				{
diff --git a/Source/Core/Windows/PreferencesForm.Designer.cs b/Source/Core/Windows/PreferencesForm.Designer.cs
index 728f1eab7..7cf7c536e 100644
--- a/Source/Core/Windows/PreferencesForm.Designer.cs
+++ b/Source/Core/Windows/PreferencesForm.Designer.cs
@@ -613,11 +613,11 @@ namespace CodeImp.DoomBuilder.Windows
 			// label1
 			// 
 			label1.AutoSize = true;
-			label1.Location = new System.Drawing.Point(45, 171);
+			label1.Location = new System.Drawing.Point(41, 171);
 			label1.Name = "label1";
-			label1.Size = new System.Drawing.Size(143, 13);
+			label1.Size = new System.Drawing.Size(145, 13);
 			label1.TabIndex = 20;
-			label1.Text = "Texture and Flats brightness:";
+			label1.Text = "Textures and flats brightness:";
 			label1.TextAlign = System.Drawing.ContentAlignment.TopRight;
 			// 
 			// label18
@@ -667,9 +667,9 @@ namespace CodeImp.DoomBuilder.Windows
 			label29.AutoSize = true;
 			label29.Location = new System.Drawing.Point(90, 356);
 			label29.Name = "label29";
-			label29.Size = new System.Drawing.Size(94, 13);
+			label29.Size = new System.Drawing.Size(93, 13);
 			label29.TabIndex = 38;
-			label29.Text = "Edge Anti-aliasing:";
+			label29.Text = "Edge anti-aliasing:";
 			label29.TextAlign = System.Drawing.ContentAlignment.TopRight;
 			// 
 			// keyusedlabel
@@ -1716,11 +1716,11 @@ namespace CodeImp.DoomBuilder.Windows
 			// label32
 			// 
 			this.label32.AutoSize = true;
-			this.label32.Location = new System.Drawing.Point(45, 134);
+			this.label32.Location = new System.Drawing.Point(44, 134);
 			this.label32.Name = "label32";
-			this.label32.Size = new System.Drawing.Size(143, 13);
+			this.label32.Size = new System.Drawing.Size(139, 13);
 			this.label32.TabIndex = 44;
-			this.label32.Text = "Hidden Things transparency:";
+			this.label32.Text = "Hidden things transparency:";
 			this.label32.TextAlign = System.Drawing.ContentAlignment.TopRight;
 			this.toolTip1.SetToolTip(this.label32, "Sets transparency of things hidden \r\nby Things Filter in Things mode");
 			// 
diff --git a/Source/Plugins/BuilderModes/Interface/ErrorCheckForm.cs b/Source/Plugins/BuilderModes/Interface/ErrorCheckForm.cs
index 630295259..fb2d55764 100644
--- a/Source/Plugins/BuilderModes/Interface/ErrorCheckForm.cs
+++ b/Source/Plugins/BuilderModes/Interface/ErrorCheckForm.cs
@@ -19,6 +19,7 @@
 using System;
 using System.Collections.Generic;
 using System.Drawing;
+using System.Runtime.InteropServices;
 using System.Text;
 using System.Windows.Forms;
 using CodeImp.DoomBuilder.Editing;
@@ -747,12 +748,20 @@ namespace CodeImp.DoomBuilder.BuilderModes
 			// Get results
 			StringBuilder sb = new StringBuilder();
 			foreach(ErrorResult result in results.SelectedItems) sb.AppendLine(result.ToString());
+			
+			try
+			{
+				//mxd. Set on clipboard
+				Clipboard.SetDataObject(sb.ToString(), true, 5, 200);
 
-			// Set on clipboard
-			Clipboard.SetDataObject(sb.ToString(), true, 5, 200); //mxd
-
-			// Inform the user
-			General.Interface.DisplayStatus(StatusType.Info, "Analysis results copied to clipboard.");
+				// Inform the user
+				General.Interface.DisplayStatus(StatusType.Info, "Analysis results copied to clipboard.");
+			}
+			catch(ExternalException)
+			{
+				// Inform the user
+				General.Interface.DisplayStatus(StatusType.Warning, "Failed to perform a Clipboard operation...");
+			}
 		}
 
 		private void results_KeyUp(object sender, KeyEventArgs e) 
-- 
GitLab