--- /dev/null
+/* ExceptionWindow.cs $\r
+ This file is part of the HandBrake source code.\r
+ Homepage: <http://handbrake.fr>.\r
+ It may be used under the terms of the GNU General Public License. */\r
+\r
+namespace HandBrake.Framework.Views\r
+{\r
+ using System;\r
+ using System.Windows.Forms;\r
+\r
+ /// <summary>\r
+ /// A window to display Exceptions in a form which can be easily copied and reported by users.\r
+ /// </summary>\r
+ public partial class ExceptionWindow : Form\r
+ {\r
+ /// <summary>\r
+ /// Initializes a new instance of the <see cref="ExceptionWindow"/> class.\r
+ /// </summary>\r
+ public ExceptionWindow()\r
+ {\r
+ InitializeComponent();\r
+ }\r
+\r
+ /// <summary>\r
+ /// Setup the window with the error message.\r
+ /// </summary>\r
+ /// <param name="shortError">\r
+ /// The short error.\r
+ /// </param>\r
+ /// <param name="longError">\r
+ /// The long error.\r
+ /// </param>\r
+ public void Setup(string shortError, string longError)\r
+ {\r
+ lbl_shortError.Text = shortError;\r
+ rtf_exceptionFull.Text = shortError + Environment.NewLine + longError;\r
+ }\r
+\r
+ /// <summary>\r
+ /// Copy the Exception Information to the Clipboard.\r
+ /// </summary>\r
+ /// <param name="sender">\r
+ /// The sender.\r
+ /// </param>\r
+ /// <param name="e">\r
+ /// The e.\r
+ /// </param>\r
+ private void BtnCopyClick(object sender, EventArgs e)\r
+ {\r
+ Clipboard.SetDataObject(rtf_exceptionFull.SelectedText != string.Empty ? rtf_exceptionFull.SelectedText : rtf_exceptionFull.Text, true);\r
+ }\r
+\r
+ /// <summary>\r
+ /// Copy from the right click menu\r
+ /// </summary>\r
+ /// <param name="sender">\r
+ /// The sender.\r
+ /// </param>\r
+ /// <param name="e">\r
+ /// The e.\r
+ /// </param>\r
+ private void MnuCopyLogClick(object sender, EventArgs e)\r
+ {\r
+ Clipboard.SetDataObject(rtf_exceptionFull.SelectedText != string.Empty ? rtf_exceptionFull.SelectedText : rtf_exceptionFull.Text, true);\r
+ } \r
+\r
+ /// <summary>\r
+ /// Close the window\r
+ /// </summary>\r
+ /// <param name="sender">\r
+ /// The sender.\r
+ /// </param>\r
+ /// <param name="e">\r
+ /// The e.\r
+ /// </param>\r
+ private void BtnCloseClick(object sender, EventArgs e)\r
+ {\r
+ this.Close();\r
+ }\r
+ }\r
+}\r