Merge branch 'develop' into remove_components_check

This commit is contained in:
Faryan Rezagholi
2021-08-03 21:57:06 +02:00
committed by GitHub
10 changed files with 4 additions and 643 deletions

View File

@@ -15,6 +15,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- #1850: Minify config xml
### Changed
- #2013: Removed components check
- #2011: Removed screenshot manager
- #2010: Redesigned menus
- #2005: Removed in-app documentation
- #1777: Cleaned up VisualStudio project structure

View File

@@ -10,7 +10,6 @@ namespace mRemoteNG.App
private static ActiveDirectoryImportWindow _adimportForm;
private static ExternalToolsWindow _externalappsForm;
private static PortScanWindow _portscanForm;
private static ScreenshotManagerWindow _screenshotmanagerForm;
private static UltraVNCWindow _ultravncscForm;
private static ConnectionTreeWindow _treeForm;
@@ -22,7 +21,6 @@ namespace mRemoteNG.App
internal static ConfigWindow ConfigForm { get; set; } = new ConfigWindow();
internal static ErrorAndInfoWindow ErrorsForm { get; set; } = new ErrorAndInfoWindow();
internal static ScreenshotManagerWindow ScreenshotForm { get; set; } = new ScreenshotManagerWindow();
private static UpdateWindow UpdateForm { get; set; } = new UpdateWindow();
internal static SSHTransferWindow SshtransferForm { get; private set; } = new SSHTransferWindow();
@@ -66,10 +64,6 @@ namespace mRemoteNG.App
_portscanForm = new PortScanWindow();
_portscanForm.Show(dockPanel);
break;
case WindowType.ScreenshotManager:
_screenshotmanagerForm = new ScreenshotManagerWindow();
_screenshotmanagerForm.Show(dockPanel);
break;
case WindowType.UltraVNCSC:
if (_ultravncscForm == null || _ultravncscForm.IsDisposed)
_ultravncscForm = new UltraVNCWindow();

View File

@@ -77,9 +77,6 @@ namespace mRemoteNG.Config.Settings
if (persistString == typeof(ErrorAndInfoWindow).ToString())
return Windows.ErrorsForm;
if (persistString == typeof(ScreenshotManagerWindow).ToString())
return Windows.ScreenshotForm;
}
catch (Exception ex)
{

View File

@@ -12,7 +12,6 @@ namespace mRemoteNG.UI.Menu
private ToolStripMenuItem _mMenToolsExternalApps;
private ToolStripMenuItem _mMenToolsPortScan;
private ToolStripMenuItem _mMenToolsUvncsc;
private ToolStripMenuItem _mMenViewScreenshotManager;
public Form MainForm { get; set; }
public ICredentialRepositoryList CredentialProviderCatalog { get; set; }
@@ -28,7 +27,6 @@ namespace mRemoteNG.UI.Menu
_mMenToolsUvncsc = new ToolStripMenuItem();
_mMenToolsExternalApps = new ToolStripMenuItem();
_mMenToolsPortScan = new ToolStripMenuItem();
_mMenViewScreenshotManager = new ToolStripMenuItem();
//
// mMenTools
//
@@ -37,8 +35,7 @@ namespace mRemoteNG.UI.Menu
_mMenToolsSshTransfer,
_mMenToolsUvncsc,
_mMenToolsExternalApps,
_mMenToolsPortScan,
_mMenViewScreenshotManager
_mMenToolsPortScan
});
Name = "mMenTools";
Size = new System.Drawing.Size(48, 20);
@@ -76,14 +73,6 @@ namespace mRemoteNG.UI.Menu
_mMenToolsPortScan.Size = new System.Drawing.Size(184, 22);
_mMenToolsPortScan.Text = Language.PortScan;
_mMenToolsPortScan.Click += mMenToolsPortScan_Click;
//
// mMenViewScreenshotManager
//
_mMenViewScreenshotManager.Image = Properties.Resources.Screenshot;
_mMenViewScreenshotManager.Name = "mMenViewScreenshotManager";
_mMenViewScreenshotManager.Size = new System.Drawing.Size(228, 22);
_mMenViewScreenshotManager.Text = Language.Screenshots;
_mMenViewScreenshotManager.Click += mMenViewScreenshotManager_Click;
}
public void ApplyLanguage()
@@ -92,7 +81,6 @@ namespace mRemoteNG.UI.Menu
_mMenToolsSshTransfer.Text = Language.SshFileTransfer;
_mMenToolsExternalApps.Text = Language.ExternalTool;
_mMenToolsPortScan.Text = Language.PortScan;
_mMenViewScreenshotManager.Text = Language.Screenshots;
}
#region Tools
@@ -117,9 +105,9 @@ namespace mRemoteNG.UI.Menu
Windows.Show(WindowType.PortScan);
}
private void mMenViewScreenshotManager_Click(object sender, EventArgs e)
private void mMenToolsOptions_Click(object sender, EventArgs e)
{
Windows.Show(WindowType.ScreenshotManager);
Windows.Show(WindowType.Options);
}
#endregion

View File

@@ -9,7 +9,6 @@ namespace mRemoteNG.UI.Window
{
internal ContextMenuStrip cmenTab;
private ToolStripMenuItem cmenTabFullscreen;
private ToolStripMenuItem cmenTabScreenshot;
private ToolStripMenuItem cmenTabTransferFile;
private ToolStripMenuItem cmenTabSendSpecialKeys;
private ToolStripSeparator cmenTabSep1;
@@ -53,7 +52,6 @@ namespace mRemoteNG.UI.Window
this.cmenTabSendSpecialKeysCtrlAltDel = new System.Windows.Forms.ToolStripMenuItem();
this.cmenTabSendSpecialKeysCtrlEsc = new System.Windows.Forms.ToolStripMenuItem();
this.cmenTabSep2 = new System.Windows.Forms.ToolStripSeparator();
this.cmenTabScreenshot = new System.Windows.Forms.ToolStripMenuItem();
this.cmenTabPuttySettings = new System.Windows.Forms.ToolStripMenuItem();
this.cmenTabExternalApps = new System.Windows.Forms.ToolStripMenuItem();
this.cmenTab.SuspendLayout();
@@ -88,7 +86,6 @@ namespace mRemoteNG.UI.Window
this.cmenTabTransferFile,
this.cmenTabSendSpecialKeys,
this.cmenTabSep2,
this.cmenTabScreenshot,
this.cmenTabPuttySettings,
this.cmenTabExternalApps});
this.cmenTab.Name = "cmenTab";
@@ -212,13 +209,6 @@ namespace mRemoteNG.UI.Window
this.cmenTabSep2.Name = "cmenTabSep2";
this.cmenTabSep2.Size = new System.Drawing.Size(227, 6);
//
// cmenTabScreenshot
//
this.cmenTabScreenshot.Image = global::mRemoteNG.Properties.Resources.Screenshot_Add;
this.cmenTabScreenshot.Name = "cmenTabScreenshot";
this.cmenTabScreenshot.Size = new System.Drawing.Size(230, 22);
this.cmenTabScreenshot.Text = "Screenshot";
//
// cmenTabPuttySettings
//
this.cmenTabPuttySettings.Image = global::mRemoteNG.Properties.Resources.PuttyConfig;

View File

@@ -77,7 +77,6 @@ namespace mRemoteNG.UI.Window
cmenTabFullscreen.Click += (sender, args) => ToggleFullscreen();
cmenTabSmartSize.Click += (sender, args) => ToggleSmartSize();
cmenTabViewOnly.Click += (sender, args) => ToggleViewOnly();
cmenTabScreenshot.Click += (sender, args) => CreateScreenshot();
cmenTabStartChat.Click += (sender, args) => StartChat();
cmenTabTransferFile.Click += (sender, args) => TransferFile();
cmenTabRefreshScreen.Click += (sender, args) => RefreshScreen();
@@ -268,7 +267,6 @@ namespace mRemoteNG.UI.Window
cmenTabFullscreen.Text = Language.Fullscreen;
cmenTabSmartSize.Text = Language.SmartSize;
cmenTabViewOnly.Text = Language.ViewOnly;
cmenTabScreenshot.Text = Language.Screenshot;
cmenTabStartChat.Text = Language.StartChat;
cmenTabTransferFile.Text = Language.TransferFile;
cmenTabRefreshScreen.Text = Language.RefreshScreen;
@@ -781,15 +779,6 @@ namespace mRemoteNG.UI.Window
}
}
private void CreateScreenshot()
{
cmenTab.Close();
Application.DoEvents();
//var selectedTab = (ConnectionTab)GetInterfaceControl()?.Parent;
if (TabHelper.Instance.CurrentTab == null) return;
Windows.ScreenshotForm.AddScreenshot(MiscTools.TakeScreenshot(TabHelper.Instance.CurrentTab));
}
#endregion
#region Protocols

View File

@@ -1,458 +0,0 @@
using System;
using System.Drawing;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
using mRemoteNG.App;
using System.IO;
using mRemoteNG.Resources.Language;
using mRemoteNG.UI.Forms;
using mRemoteNG.Themes;
namespace mRemoteNG.UI.Window
{
public class ScreenshotManagerWindow : BaseWindow
{
#region Form Init
internal MenuStrip msMain;
private ToolStripMenuItem mMenFile;
private ToolStripMenuItem mMenFileSaveAll;
private ToolStripMenuItem mMenFileRemoveAll;
internal ContextMenuStrip cMenScreenshot;
private System.ComponentModel.IContainer components;
private ToolStripMenuItem cMenScreenshotCopy;
private ToolStripMenuItem cMenScreenshotSave;
internal SaveFileDialog dlgSaveSingleImage;
internal FolderBrowserDialog dlgSaveAllImages;
private FlowLayoutPanel flpScreenshots;
private VisualStudioToolStripExtender vsToolStripExtender;
private readonly ToolStripRenderer _toolStripProfessionalRenderer = new ToolStripProfessionalRenderer();
private void InitializeComponent()
{
components = new System.ComponentModel.Container();
flpScreenshots = new FlowLayoutPanel();
msMain = new MenuStrip();
mMenFile = new ToolStripMenuItem();
mMenFileSaveAll = new ToolStripMenuItem();
mMenFileRemoveAll = new ToolStripMenuItem();
cMenScreenshot = new ContextMenuStrip(components);
cMenScreenshotCopy = new ToolStripMenuItem();
cMenScreenshotSave = new ToolStripMenuItem();
dlgSaveSingleImage = new SaveFileDialog();
dlgSaveAllImages = new FolderBrowserDialog();
msMain.SuspendLayout();
cMenScreenshot.SuspendLayout();
SuspendLayout();
//
// flpScreenshots
//
flpScreenshots.Anchor = AnchorStyles.Top | AnchorStyles.Bottom
| AnchorStyles.Left
| AnchorStyles.Right;
flpScreenshots.AutoScroll = true;
flpScreenshots.Location = new Point(0, 26);
flpScreenshots.Name = "flpScreenshots";
flpScreenshots.Size = new Size(542, 296);
flpScreenshots.TabIndex = 0;
//
// msMain
//
msMain.Font = new Font("Segoe UI", 8.25F, FontStyle.Regular, GraphicsUnit.Point, 0);
msMain.Items.AddRange(new ToolStripItem[]
{
mMenFile
});
msMain.Location = new Point(0, 0);
msMain.Name = "msMain";
msMain.RenderMode = ToolStripRenderMode.Professional;
msMain.Size = new Size(542, 24);
msMain.TabIndex = 1;
msMain.Text = "MenuStrip1";
//
// mMenFile
//
mMenFile.DropDownItems.AddRange(new ToolStripItem[]
{
mMenFileSaveAll,
mMenFileRemoveAll
});
mMenFile.Image = Properties.Resources.File;
mMenFile.Name = "mMenFile";
mMenFile.Size = new Size(53, 20);
mMenFile.Text = "&File";
mMenFile.DropDownOpening += mMenFile_DropDownOpening;
//
// mMenFileSaveAll
//
mMenFileSaveAll.Image = Properties.Resources.Screenshot_Save;
mMenFileSaveAll.Name = "mMenFileSaveAll";
mMenFileSaveAll.Size = new Size(130, 22);
mMenFileSaveAll.Text = "Save All";
mMenFileSaveAll.Click += mMenFileSaveAll_Click;
//
// mMenFileRemoveAll
//
mMenFileRemoveAll.Image = Properties.Resources.Screenshot_Delete;
mMenFileRemoveAll.Name = "mMenFileRemoveAll";
mMenFileRemoveAll.Size = new Size(130, 22);
mMenFileRemoveAll.Text = "Remove All";
mMenFileRemoveAll.Click += mMenFileRemoveAll_Click;
//
// cMenScreenshot
//
cMenScreenshot.Items.AddRange(new ToolStripItem[]
{
cMenScreenshotCopy,
cMenScreenshotSave
});
cMenScreenshot.Name = "cMenScreenshot";
cMenScreenshot.Size = new Size(103, 48);
//
// cMenScreenshotCopy
//
cMenScreenshotCopy.Image = Properties.Resources.Screenshot_Copy;
cMenScreenshotCopy.Name = "cMenScreenshotCopy";
cMenScreenshotCopy.Size = new Size(102, 22);
cMenScreenshotCopy.Text = "Copy";
cMenScreenshotCopy.Click += cMenScreenshotCopy_Click;
//
// cMenScreenshotSave
//
cMenScreenshotSave.Image = Properties.Resources.Screenshot_Save;
cMenScreenshotSave.Name = "cMenScreenshotSave";
cMenScreenshotSave.Size = new Size(102, 22);
cMenScreenshotSave.Text = "Save";
cMenScreenshotSave.Click += cMenScreenshotSave_Click;
//
// dlgSaveSingleImage
//
dlgSaveSingleImage.Filter =
"Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group Fi" +
"le (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Ne" +
"twork Graphics File (.png)|*.png";
dlgSaveSingleImage.FilterIndex = 4;
//
// ScreenshotManagerWindow
//
AutoScaleDimensions = new SizeF(96F, 96F);
AutoScaleMode = AutoScaleMode.Dpi;
ClientSize = new Size(542, 323);
Controls.Add(flpScreenshots);
Controls.Add(msMain);
Font = new Font("Segoe UI", 8.25F, FontStyle.Regular, GraphicsUnit.Point, 0);
HideOnClose = true;
Icon = Properties.Resources.Screenshot_Icon;
MainMenuStrip = msMain;
Name = "ScreenshotManagerWindow";
TabText = "Screenshots";
Text = "Screenshots";
Load += ScreenshotManager_Load;
msMain.ResumeLayout(false);
msMain.PerformLayout();
cMenScreenshot.ResumeLayout(false);
ResumeLayout(false);
PerformLayout();
}
#endregion
#region Form Stuff
private void ScreenshotManager_Load(object sender, EventArgs e)
{
ApplyTheme();
ThemeManager.getInstance().ThemeChanged += ApplyTheme;
ApplyLanguage();
}
private new void ApplyTheme()
{
if (!ThemeManager.getInstance().ThemingActive) return;
base.ApplyTheme();
vsToolStripExtender = new VisualStudioToolStripExtender(components)
{
DefaultRenderer = _toolStripProfessionalRenderer
};
vsToolStripExtender.SetStyle(cMenScreenshot, ThemeManager.getInstance().ActiveTheme.Version,
ThemeManager.getInstance().ActiveTheme.Theme);
}
private void ApplyLanguage()
{
mMenFile.Text = Language._File;
mMenFileSaveAll.Text = Language.SaveAll;
mMenFileRemoveAll.Text = Language.RemoveAll;
cMenScreenshotCopy.Text = Language.Copy;
cMenScreenshotSave.Text = Language.Save;
dlgSaveSingleImage.Filter = Language.SaveImageFilter;
TabText = Language.Screenshots;
Text = Language.Screenshots;
}
#endregion
#region Public Methods
public ScreenshotManagerWindow() : this(new DockContent())
{
}
internal ScreenshotManagerWindow(DockContent panel)
{
WindowType = WindowType.ScreenshotManager;
DockPnl = panel;
InitializeComponent();
}
public void AddScreenshot(Image Screenshot)
{
try
{
var nPB = new PictureBox();
nPB.MouseDown += pbScreenshot_MouseDown;
nPB.Parent = flpScreenshots;
nPB.SizeMode = PictureBoxSizeMode.StretchImage;
nPB.BorderStyle = BorderStyle.FixedSingle;
nPB.ContextMenuStrip = cMenScreenshot;
nPB.Image = Screenshot;
nPB.Size = new Size(100, 100); //New Size((Screenshot.Width / 100) * 20, (Screenshot.Height / 100) * 20)
nPB.Show();
var nBtn = new Button();
nBtn.Click += btnCloseScreenshot_Click;
nBtn.Parent = nPB;
nBtn.FlatStyle = FlatStyle.Flat;
nBtn.Text = "×";
nBtn.Size = new Size(22, 22);
nBtn.Location = new Point(nPB.Width - nBtn.Width, -1);
nBtn.Show();
Show(FrmMain.Default.pnlDock);
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"AddScreenshot (UI.Window.ScreenshotManager) failed" +
Environment.NewLine + ex.Message, true);
}
}
#endregion
#region Private Methods
private void pbScreenshot_MouseDown(object sender, MouseEventArgs e)
{
cMenScreenshot.Tag = sender;
if (e.Button == MouseButtons.Left)
{
OpenScreenshot((PictureBox)sender);
}
}
private void pbScreenshotOpen_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
CloseOpenedScreenshot((Form)((PictureBox)sender).Parent);
}
}
private void CloseOpenedScreenshot(Form form)
{
form.Close();
}
private void OpenScreenshot(PictureBox sender)
{
try
{
var mImage = sender.Image;
var nForm = new Form
{
StartPosition = FormStartPosition.CenterParent,
ShowInTaskbar = false,
ShowIcon = false,
MaximizeBox = false,
MinimizeBox = false,
Width = mImage.Width + 2,
Height = mImage.Height + 2,
FormBorderStyle = FormBorderStyle.None
};
var nPB = new PictureBox
{
Parent = nForm,
BorderStyle = BorderStyle.FixedSingle,
Location = new Point(0, 0),
SizeMode = PictureBoxSizeMode.AutoSize,
Anchor = AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right | AnchorStyles.Top,
Image = mImage,
ContextMenuStrip = cMenScreenshot
};
nPB.Show();
nPB.MouseDown += pbScreenshotOpen_MouseDown;
nForm.ShowDialog();
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"OpenScreenshot (UI.Window.ScreenshotManager) failed" +
Environment.NewLine + ex.Message, true);
}
}
private void btnCloseScreenshot_Click(object sender, EventArgs e)
{
try
{
((PictureBox)((Button)sender).Parent).Dispose();
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"btnCloseScreenshot_Click (UI.Window.ScreenshotManager) failed" +
Environment.NewLine + ex.Message,
true);
}
}
private void mMenFileRemoveAll_Click(object sender, EventArgs e)
{
RemoveAllImages();
}
private void RemoveAllImages()
{
flpScreenshots.Controls.Clear();
}
private void mMenFileSaveAll_Click(object sender, EventArgs e)
{
SaveAllImages();
}
private void SaveAllImages()
{
try
{
var pCount = 1;
if (dlgSaveAllImages.ShowDialog() != DialogResult.OK) return;
foreach (var fPath in Directory.GetFiles(dlgSaveAllImages.SelectedPath, "Screenshot_*",
SearchOption.TopDirectoryOnly))
{
var f = new FileInfo(fPath);
var fCount = f.Name;
fCount = fCount.Replace(f.Extension, "");
fCount = fCount.Replace("Screenshot_", "");
pCount = (int)(double.Parse(fCount) + 1);
}
foreach (Control ctrl in flpScreenshots.Controls)
{
if (!(ctrl is PictureBox)) continue;
(ctrl as PictureBox).Image.Save(
dlgSaveAllImages.SelectedPath + "\\Screenshot_" +
Tools.MiscTools.LeadingZero(Convert.ToString(pCount)) + ".png",
System.Drawing.Imaging.ImageFormat.Png);
pCount++;
}
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"SaveAllImages (UI.Window.ScreenshotManager) failed" +
Environment.NewLine + ex.Message, true);
}
}
private void cMenScreenshotCopy_Click(object sender, EventArgs e)
{
CopyImageToClipboard();
}
private void CopyImageToClipboard()
{
try
{
Clipboard.SetImage(((PictureBox)cMenScreenshot.Tag).Image);
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"CopyImageToClipboard (UI.Window.ScreenshotManager) failed" +
Environment.NewLine + ex.Message,
true);
}
}
private void cMenScreenshotSave_Click(object sender, EventArgs e)
{
SaveSingleImage();
}
private void SaveSingleImage()
{
try
{
if (dlgSaveSingleImage.ShowDialog() != DialogResult.OK) return;
// ReSharper disable once SwitchStatementMissingSomeCases
switch (dlgSaveSingleImage.FileName
.Substring(dlgSaveSingleImage
.FileName.LastIndexOf(".", StringComparison.Ordinal) + 1)
.ToLower())
{
case "gif":
((PictureBox)cMenScreenshot.Tag).Image.Save(dlgSaveSingleImage.FileName,
System.Drawing.Imaging.ImageFormat.Gif);
break;
case "jpeg":
((PictureBox)cMenScreenshot.Tag).Image.Save(dlgSaveSingleImage.FileName,
System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case "jpg":
((PictureBox)cMenScreenshot.Tag).Image.Save(dlgSaveSingleImage.FileName,
System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case "png":
((PictureBox)cMenScreenshot.Tag).Image.Save(dlgSaveSingleImage.FileName,
System.Drawing.Imaging.ImageFormat.Png);
break;
}
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
"SaveSingleImage (UI.Window.ScreenshotManager) failed" +
Environment.NewLine + ex.Message, true);
}
}
private void mMenFile_DropDownOpening(object sender, EventArgs e)
{
if (flpScreenshots.Controls.Count < 1)
{
mMenFileSaveAll.Enabled = false;
mMenFileRemoveAll.Enabled = false;
}
else
{
mMenFileSaveAll.Enabled = true;
mMenFileRemoveAll.Enabled = true;
}
}
#endregion
}
}

View File

@@ -1,132 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="msMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="cMenScreenshot.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>19, 45</value>
</metadata>
<metadata name="dlgSaveSingleImage.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>146, 16</value>
</metadata>
<metadata name="dlgSaveAllImages.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>146, 45</value>
</metadata>
</root>

View File

@@ -6,7 +6,6 @@
Connection = 1,
Config = 2,
ErrorsAndInfos = 4,
ScreenshotManager = 5,
Options = 6,
Update = 9,
SSHTransfer = 10,

View File

@@ -745,9 +745,6 @@
<Compile Include="UI\Forms\FrmExport.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="UI\Window\ScreenshotManagerWindow.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="UI\Window\SSHTransferWindow.cs">
<SubType>Form</SubType>
</Compile>
@@ -1025,10 +1022,6 @@
<DependentUpon>FrmExport.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="UI\Window\ScreenshotManagerWindow.resx">
<DependentUpon>ScreenshotManagerWindow.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="UI\Window\SSHTransferWindow.resx">
<DependentUpon>SSHTransferWindow.cs</DependentUpon>
<SubType>Designer</SubType>