Switch FolderBrowserDialog to new version and remove unused instances on forms

This commit is contained in:
dexy 2021-11-14 01:33:47 +11:00
parent 071830b3d7
commit a2538fc976
18 changed files with 135 additions and 75 deletions

View File

@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
@ -228,6 +229,91 @@ namespace CodeWalker
}
public static class FolderBrowserExtension
{
public static DialogResult ShowDialogNew(this FolderBrowserDialog fbd)
{
return ShowDialogNew(fbd, (IntPtr)0);
}
public static DialogResult ShowDialogNew(this FolderBrowserDialog fbd, IntPtr hWndOwner)
{
if (Environment.OSVersion.Version.Major >= 6)
{
var ofd = new OpenFileDialog();
ofd.Filter = "Folders|\n";
ofd.AddExtension = false;
ofd.CheckFileExists = false;
ofd.DereferenceLinks = true;
ofd.Multiselect = false;
ofd.InitialDirectory = fbd.SelectedPath;
int result = 0;
var ns = "System.Windows.Forms";
var asmb = Assembly.GetAssembly(typeof(OpenFileDialog));
var dialogint = GetType(asmb, ns, "FileDialogNative.IFileDialog");
var dialog = Call(typeof(OpenFileDialog), ofd, "CreateVistaDialog");
Call(typeof(OpenFileDialog), ofd, "OnBeforeVistaDialog", dialog);
var options = Convert.ToUInt32(Call(typeof(FileDialog), ofd, "GetOptions"));
options |= Convert.ToUInt32(GetEnumValue(asmb, ns, "FileDialogNative.FOS", "FOS_PICKFOLDERS"));
Call(dialogint, dialog, "SetOptions", options);
var pfde = New(asmb, ns, "FileDialog.VistaDialogEvents", ofd);
var parameters = new object[] { pfde, (uint)0 };
Call(dialogint, dialog, "Advise", parameters);
var adviseres = Convert.ToUInt32(parameters[1]);
try { result = Convert.ToInt32(Call(dialogint, dialog, "Show", hWndOwner)); }
finally { Call(dialogint, dialog, "Unadvise", adviseres); }
GC.KeepAlive(pfde);
fbd.SelectedPath = ofd.FileName;
return (result == 0) ? DialogResult.OK : DialogResult.Cancel;
}
else
{
return fbd.ShowDialog();
}
}
private static Type GetType(Assembly asmb, string ns, string name)
{
Type type = null;
string[] names = name.Split('.');
if (names.Length > 0)
{
type = asmb.GetType(ns + "." + names[0]);
}
for (int i = 1; i < names.Length; i++)
{
type = type.GetNestedType(names[i], BindingFlags.NonPublic);
}
return type;
}
private static object Call(Type type, object obj, string func, params object[] parameters)
{
var mi = type.GetMethod(func, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
if (mi == null) return null;
return mi.Invoke(obj, parameters);
}
private static object GetEnumValue(Assembly asmb, string ns, string typeName, string name)
{
var type = GetType(asmb, ns, typeName);
var fieldInfo = type.GetField(name);
return fieldInfo.GetValue(null);
}
private static object New(Assembly asmb, string ns, string name, params object[] parameters)
{
var type = GetType(asmb, ns, name);
var ctorInfos = type.GetConstructors();
foreach (ConstructorInfo ci in ctorInfos)
{
try { return ci.Invoke(parameters); }
catch { }
}
return null;
}
}
public static class Prompt

View File

@ -2033,7 +2033,7 @@ namespace CodeWalker
FolderBrowserDialog.SelectedPath = selpath;
}
if (FolderBrowserDialog.ShowDialog() != DialogResult.OK) return "";
if (FolderBrowserDialog.ShowDialogNew() != DialogResult.OK) return "";
string folderpath = FolderBrowserDialog.SelectedPath;
if (!folderpath.EndsWith("\\")) folderpath += "\\";

View File

@ -248,7 +248,7 @@ namespace CodeWalker.Forms
private void SaveAll()
{
if (TexDict?.Textures?.data_items == null) return;
if (FolderBrowserDialog.ShowDialog() != DialogResult.OK) return;
if (FolderBrowserDialog.ShowDialogNew() != DialogResult.OK) return;
var folder = FolderBrowserDialog.SelectedPath;
foreach (var tex in TexDict.Textures.data_items)
{

View File

@ -29,8 +29,6 @@
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MenuForm));
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
this.OpenFileDialog = new System.Windows.Forms.OpenFileDialog();
this.ExtractScriptsButton = new System.Windows.Forms.Button();
this.BinarySearchButton = new System.Windows.Forms.Button();
this.RPFBrowserButton = new System.Windows.Forms.Button();
@ -187,7 +185,7 @@
this.RPFExplorerButton.UseVisualStyleBackColor = true;
this.RPFExplorerButton.Click += new System.EventHandler(this.RPFExplorerButton_Click);
//
// MainForm
// MenuForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
@ -207,7 +205,7 @@
this.Controls.Add(this.BinarySearchButton);
this.Controls.Add(this.ExtractScriptsButton);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "MainForm";
this.Name = "MenuForm";
this.Text = "CodeWalker Menu";
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.MainForm_FormClosed);
this.Load += new System.EventHandler(this.MainForm_Load);
@ -216,8 +214,6 @@
}
#endregion
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
private System.Windows.Forms.OpenFileDialog OpenFileDialog;
private System.Windows.Forms.Button ExtractScriptsButton;
private System.Windows.Forms.Button BinarySearchButton;
private System.Windows.Forms.Button RPFBrowserButton;

View File

@ -117,12 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="OpenFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>182, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>

View File

@ -98,7 +98,7 @@ namespace CodeWalker.Tools
private void FileSearchFolderBrowseButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog.SelectedPath = FileSearchFolderTextBox.Text;
DialogResult res = FolderBrowserDialog.ShowDialog();
DialogResult res = FolderBrowserDialog.ShowDialogNew();
if (res == DialogResult.OK)
{
FileSearchFolderTextBox.Text = FolderBrowserDialog.SelectedPath;

View File

@ -33,7 +33,6 @@
this.FolderBrowseButton = new System.Windows.Forms.Button();
this.FolderTextBox = new System.Windows.Forms.TextBox();
this.ScanButton = new System.Windows.Forms.Button();
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
@ -790,7 +789,6 @@
private System.Windows.Forms.Button FolderBrowseButton;
private System.Windows.Forms.TextBox FolderTextBox;
private System.Windows.Forms.Button ScanButton;
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
private System.Windows.Forms.SplitContainer splitContainer1;
private System.Windows.Forms.TreeView MainTreeView;
private System.Windows.Forms.StatusStrip MainStatusStrip;

View File

@ -117,9 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="MainStatusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>182, 17</value>
</metadata>

View File

@ -34,7 +34,6 @@
this.FolderBrowseButton = new System.Windows.Forms.Button();
this.FolderTextBox = new System.Windows.Forms.TextBox();
this.StatusLabel = new System.Windows.Forms.Label();
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
this.label2 = new System.Windows.Forms.Label();
this.ExeBrowseButton = new System.Windows.Forms.Button();
this.ExeTextBox = new System.Windows.Forms.TextBox();
@ -151,7 +150,6 @@
private System.Windows.Forms.Button FolderBrowseButton;
private System.Windows.Forms.TextBox FolderTextBox;
private System.Windows.Forms.Label StatusLabel;
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Button ExeBrowseButton;
private System.Windows.Forms.TextBox ExeTextBox;

View File

@ -117,9 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="OpenFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>326, 17</value>
</metadata>

View File

@ -72,7 +72,7 @@ namespace CodeWalker.Tools
private void OutputFolderBrowseButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog.SelectedPath = OutputFolderTextBox.Text;
DialogResult res = FolderBrowserDialog.ShowDialog();
DialogResult res = FolderBrowserDialog.ShowDialogNew();
if (res == DialogResult.OK)
{
OutputFolderTextBox.Text = FolderBrowserDialog.SelectedPath;

View File

@ -63,7 +63,7 @@ namespace CodeWalker.Tools
private void OutputFolderBrowseButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog.SelectedPath = OutputFolderTextBox.Text;
DialogResult res = FolderBrowserDialog.ShowDialog();
DialogResult res = FolderBrowserDialog.ShowDialogNew();
if (res == DialogResult.OK)
{
OutputFolderTextBox.Text = FolderBrowserDialog.SelectedPath;

View File

@ -57,7 +57,7 @@ namespace CodeWalker.Tools
private void OutputFolderBrowseButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog.SelectedPath = OutputFolderTextBox.Text;
DialogResult res = FolderBrowserDialog.ShowDialog();
DialogResult res = FolderBrowserDialog.ShowDialogNew();
if (res == DialogResult.OK)
{
OutputFolderTextBox.Text = FolderBrowserDialog.SelectedPath;

View File

@ -56,7 +56,7 @@ namespace CodeWalker.Tools
private void OutputFolderBrowseButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog.SelectedPath = OutputFolderTextBox.Text;
DialogResult res = FolderBrowserDialog.ShowDialog();
DialogResult res = FolderBrowserDialog.ShowDialogNew();
if (res == DialogResult.OK)
{
OutputFolderTextBox.Text = FolderBrowserDialog.SelectedPath;

View File

@ -33,7 +33,7 @@ namespace CodeWalker.Utils
private void FolderBrowseButton_Click(object sender, EventArgs e)
{
FolderBrowserDialog.SelectedPath = FolderTextBox.Text;
DialogResult res = FolderBrowserDialog.ShowDialog();
DialogResult res = FolderBrowserDialog.ShowDialogNew();
if (res == DialogResult.OK)
{
FolderTextBox.Text = FolderBrowserDialog.SelectedPath;

View File

@ -538,7 +538,7 @@ namespace CodeWalker.World
private void SaveAllTexturesButton_Click(object sender, EventArgs e)
{
if (FolderBrowserDialog.ShowDialog() != DialogResult.OK) return;
if (FolderBrowserDialog.ShowDialogNew() != DialogResult.OK) return;
string folderpath = FolderBrowserDialog.SelectedPath;
if (!folderpath.EndsWith("\\")) folderpath += "\\";

View File

@ -32,7 +32,6 @@ namespace CodeWalker
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WorldForm));
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
this.StatusStrip = new System.Windows.Forms.StatusStrip();
this.StatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
this.MousedLabel = new System.Windows.Forms.ToolStripStatusLabel();
@ -178,6 +177,7 @@ namespace CodeWalker
this.BoundsStyleComboBox = new System.Windows.Forms.ComboBox();
this.label8 = new System.Windows.Forms.Label();
this.OptionsLightingTabPage = new System.Windows.Forms.TabPage();
this.HDLightsCheckBox = new System.Windows.Forms.CheckBox();
this.DeferredShadingCheckBox = new System.Windows.Forms.CheckBox();
this.WeatherRegionComboBox = new System.Windows.Forms.ComboBox();
this.label29 = new System.Windows.Forms.Label();
@ -312,7 +312,6 @@ namespace CodeWalker
this.ToolbarPanel = new System.Windows.Forms.Panel();
this.SubtitleLabel = new System.Windows.Forms.Label();
this.SubtitleTimer = new System.Windows.Forms.Timer(this.components);
this.HDLightsCheckBox = new System.Windows.Forms.CheckBox();
this.StatusStrip.SuspendLayout();
this.ToolsPanel.SuspendLayout();
this.ToolsTabControl.SuspendLayout();
@ -2283,6 +2282,19 @@ namespace CodeWalker
this.OptionsLightingTabPage.Text = "Lighting";
this.OptionsLightingTabPage.UseVisualStyleBackColor = true;
//
// HDLightsCheckBox
//
this.HDLightsCheckBox.AutoSize = true;
this.HDLightsCheckBox.Checked = true;
this.HDLightsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.HDLightsCheckBox.Location = new System.Drawing.Point(10, 93);
this.HDLightsCheckBox.Name = "HDLightsCheckBox";
this.HDLightsCheckBox.Size = new System.Drawing.Size(69, 17);
this.HDLightsCheckBox.TabIndex = 34;
this.HDLightsCheckBox.Text = "HD lights";
this.HDLightsCheckBox.UseVisualStyleBackColor = true;
this.HDLightsCheckBox.CheckedChanged += new System.EventHandler(this.HDLightsCheckBox_CheckedChanged);
//
// DeferredShadingCheckBox
//
this.DeferredShadingCheckBox.AutoSize = true;
@ -3592,19 +3604,6 @@ namespace CodeWalker
//
this.SubtitleTimer.Tick += new System.EventHandler(this.SubtitleTimer_Tick);
//
// HDLightsCheckBox
//
this.HDLightsCheckBox.AutoSize = true;
this.HDLightsCheckBox.Checked = true;
this.HDLightsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;
this.HDLightsCheckBox.Location = new System.Drawing.Point(10, 93);
this.HDLightsCheckBox.Name = "HDLightsCheckBox";
this.HDLightsCheckBox.Size = new System.Drawing.Size(69, 17);
this.HDLightsCheckBox.TabIndex = 34;
this.HDLightsCheckBox.Text = "HD lights";
this.HDLightsCheckBox.UseVisualStyleBackColor = true;
this.HDLightsCheckBox.CheckedChanged += new System.EventHandler(this.HDLightsCheckBox_CheckedChanged);
//
// WorldForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@ -3696,8 +3695,6 @@ namespace CodeWalker
}
#endregion
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
private System.Windows.Forms.StatusStrip StatusStrip;
private System.Windows.Forms.ToolStripStatusLabel StatusLabel;
private System.Windows.Forms.ComboBox ModelComboBox;

View File

@ -117,9 +117,6 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="StatusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>182, 17</value>
</metadata>
@ -240,14 +237,6 @@ ufo
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAB4SURBVDhP3ZC7DcAgDEQZKTMwHOvSIFriS7BlEB+HMic9
QJbvFThLUkpXzjkSpaeuzMPlEELx3jdsBauyCHBY6UWYPQI93KEljQD3jL6EGzN6x0bASyNYwkKU8Udm
gd6TMnIikDJyIqjVNz8T7FgKrAwFX6lVinM3aJ05lWDPRRcAAAAASUVORK5CYII=
</value>
</data>
<data name="ToolbarTransformSpaceButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAB0SURBVDhP7ZNBCoAgEEXnSJ3BqxmetNpaMLhVv5DNRJS2
CxIeuvA9XSjtg5mHEILPxB6U7JyLxphmSkDK1o5x9dst87SUfTXwRsYsA+paT0BGDGsVOJ92hdz3Bz4f
wGPC48uu7w5IGd+gBlpRMgYCnRwyESUj3CsQkYNFDwAAAABJRU5ErkJggg==
</value>
</data>
<data name="ToolbarObjectSpaceButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -269,13 +258,12 @@ ufo
WBXYx9R1nV75RuyHKrrnzCcGjE1u9ZyD4BugoZigQ9xrngAAAABJRU5ErkJggg==
</value>
</data>
<data name="ToolbarSnapButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<data name="ToolbarTransformSpaceButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACtSURBVDhPrZBBEsIgEAR5Gy/wFV55T/wHr+KgHuCKNsVY
ZI2JiU7VVIVlp7OL+1mllIr7cb8Ie++PQwQYITnnM24NWxoBgsQYm/l+gk699bMsRA4h1JTSPsg0Xert
em/mGwh3vW1Z7MvIABSWqXG3+iZHAEw1m4wD49oVANgVOL/VeSgeDAiX1mpWeKy9BIQiI+OxWQF77tG5
2Fc729BmeElf/3lNhORe+oecewDObEqX49RqCgAAAABJRU5ErkJggg==
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAB0SURBVDhP7ZNBCoAgEEXnSJ3BqxmetNpaMLhVv5DNRJS2
CxIeuvA9XSjtg5mHEILPxB6U7JyLxphmSkDK1o5x9dst87SUfTXwRsYsA+paT0BGDGsVOJ92hdz3Bz4f
wGPC48uu7w5IGd+gBlpRMgYCnRwyESUj3CsQkYNFDwAAAABJRU5ErkJggg==
</value>
</data>
<data name="ToolbarSnapToGroundButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -304,6 +292,15 @@ ufo
EcMw2DzPDMEke9AsYBrHs10vN4I1QqImwwDcFyMjQGaBHr5Bo8nEoYCnCQTGzVeI4oj6fIi+KHgoPBhC
4knCjTww9vxfbIUQNDEyiGIZ8t6tW/k0vC/AOpuiueNOLwVkUeylvju9FJCg8E1vM/2PlTv5UoervVTJ
uQAAAABJRU5ErkJggg==
</value>
</data>
<data name="ToolbarSnapButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACtSURBVDhPrZBBEsIgEAR5Gy/wFV55T/wHr+KgHuCKNsVY
ZI2JiU7VVIVlp7OL+1mllIr7cb8Ie++PQwQYITnnM24NWxoBgsQYm/l+gk699bMsRA4h1JTSPsg0Xert
em/mGwh3vW1Z7MvIABSWqXG3+iZHAEw1m4wD49oVANgVOL/VeSgeDAiX1mpWeKy9BIQiI+OxWQF77tG5
2Fc729BmeElf/3lNhORe+oecewDObEqX49RqCgAAAABJRU5ErkJggg==
</value>
</data>
<data name="ToolbarUndoButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -389,17 +386,6 @@ ufo
4BJN+IjGo5O8ZJndGVhKxpjWWts551aih0fre+0BLaVchRAezPB2NXSSV/gVwXGYPJiVUt6ns1ghCDjn
UQG86w3FToVgDcWCWS9Fvi/Ao0RVAcwUjwpyhzmf4n8BFApS5HZRwRuONGMbrIJ1JIN8O2QAAAAASUVO
RK5CYII=
</value>
</data>
<data name="ToolbarCameraModeButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEvSURBVDhP3dK/K0dRGMfxKxRJopCSEkLya/guUhQRmQwG
WfwIkYySgYUSKUKJlOK/MBoMFMofYLUIsfJ+f3NuF3+A8tRree5zP/fcc070f6oHT/jAPTqQj6WvXvCM
TZQgG3H58gFGcYVLtGIN15jBNDbwiGNUIg4pQx8GsQuHhrCDW8yjHyns4Q0DcCXpykM5bFzgHGPYxw1G
UIVMtMHfWUUj4nIg/KurGIYrSAZYOXDGlbhXcZlegUO8Yxzb+BlQAwNW0G0jVAYK0AwHtnCEOyQDZvGC
ObTbKIIvLMA9WIYDizhFMsDjfsAZptCA9JcdfoVBvryOSbgCe4HPTuCz+BQMKEUvJmCy96ET1ehCuAf2
5ZF+uwdZKEYtmuBGFSIXhtejBe5PHX7dxL+qKPoEppRHcXOtiDsAAAAASUVORK5CYII=
</value>
</data>
<data name="ToolbarCameraPerspectiveButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -435,6 +421,17 @@ ufo
rp3fhGJScIRLzKMLFTC9cMIu3nCDVUyjB6WkYA93mEWbAyH9cMImPuA+rWMA31YwBU82kF6BS32Er/aO
M8zAh+OEghpcwQ2bg3uwBW8ewFd7xQkm0IA4oaAS7bh2KHjBIZbhV/D6GJkFphrdcIP8lFrAGPwPOjCO
QdQiTqrAWNICd7gPnUj+xBKaU9dxfhTkjwV/FxU+AbsiGnc46OYIAAAAAElFTkSuQmCC
</value>
</data>
<data name="ToolbarCameraModeButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEvSURBVDhP3dK/K0dRGMfxKxRJopCSEkLya/guUhQRmQwG
WfwIkYySgYUSKUKJlOK/MBoMFMofYLUIsfJ+f3NuF3+A8tRree5zP/fcc070f6oHT/jAPTqQj6WvXvCM
TZQgG3H58gFGcYVLtGIN15jBNDbwiGNUIg4pQx8GsQuHhrCDW8yjHyns4Q0DcCXpykM5bFzgHGPYxw1G
UIVMtMHfWUUj4nIg/KurGIYrSAZYOXDGlbhXcZlegUO8Yxzb+BlQAwNW0G0jVAYK0AwHtnCEOyQDZvGC
ObTbKIIvLMA9WIYDizhFMsDjfsAZptCA9JcdfoVBvryOSbgCe4HPTuCz+BQMKEUvJmCy96ET1ehCuAf2
5ZF+uwdZKEYtmuBGFSIXhtejBe5PHX7dxL+qKPoEppRHcXOtiDsAAAAASUVORK5CYII=
</value>
</data>
<metadata name="SubtitleTimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">