1
0
mirror of https://github.com/Ylianst/MeshCentralRouter synced 2025-12-06 00:13:33 +00:00

Added upload to file manager.

This commit is contained in:
Ylian Saint-Hilaire
2020-09-18 17:27:53 -07:00
parent e21a115e90
commit 4deea28edd
23 changed files with 7186 additions and 314 deletions

129
FileDeletePromptForm.Designer.cs generated Normal file
View File

@@ -0,0 +1,129 @@
namespace MeshCentralRouter
{
partial class FileDeletePromptForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FileDeletePromptForm));
this.mainGroupBox = new System.Windows.Forms.GroupBox();
this.okButton = new System.Windows.Forms.Button();
this.cancelButton = new System.Windows.Forms.Button();
this.recursiveCheckBox = new System.Windows.Forms.CheckBox();
this.mainLabel = new System.Windows.Forms.Label();
this.mainGroupBox.SuspendLayout();
this.SuspendLayout();
//
// mainGroupBox
//
this.mainGroupBox.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.mainGroupBox.Controls.Add(this.mainLabel);
this.mainGroupBox.Controls.Add(this.recursiveCheckBox);
this.mainGroupBox.Location = new System.Drawing.Point(12, 12);
this.mainGroupBox.Name = "mainGroupBox";
this.mainGroupBox.Size = new System.Drawing.Size(315, 73);
this.mainGroupBox.TabIndex = 3;
this.mainGroupBox.TabStop = false;
this.mainGroupBox.Text = "Confirm Delete";
//
// okButton
//
this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.okButton.Location = new System.Drawing.Point(171, 91);
this.okButton.Name = "okButton";
this.okButton.Size = new System.Drawing.Size(75, 23);
this.okButton.TabIndex = 5;
this.okButton.Text = "OK";
this.okButton.UseVisualStyleBackColor = true;
this.okButton.Click += new System.EventHandler(this.okButton_Click);
//
// cancelButton
//
this.cancelButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.cancelButton.Location = new System.Drawing.Point(252, 91);
this.cancelButton.Name = "cancelButton";
this.cancelButton.Size = new System.Drawing.Size(75, 23);
this.cancelButton.TabIndex = 4;
this.cancelButton.Text = "Cancel";
this.cancelButton.UseVisualStyleBackColor = true;
this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click);
//
// recursiveCheckBox
//
this.recursiveCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.recursiveCheckBox.AutoSize = true;
this.recursiveCheckBox.Location = new System.Drawing.Point(17, 45);
this.recursiveCheckBox.Name = "recursiveCheckBox";
this.recursiveCheckBox.Size = new System.Drawing.Size(108, 17);
this.recursiveCheckBox.TabIndex = 0;
this.recursiveCheckBox.Text = "Recursive Delete";
this.recursiveCheckBox.UseVisualStyleBackColor = true;
//
// mainLabel
//
this.mainLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.mainLabel.Location = new System.Drawing.Point(14, 23);
this.mainLabel.Name = "mainLabel";
this.mainLabel.Size = new System.Drawing.Size(295, 13);
this.mainLabel.TabIndex = 1;
this.mainLabel.Text = "---";
//
// FileDeletePromptForm
//
this.AcceptButton = this.okButton;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.cancelButton;
this.ClientSize = new System.Drawing.Size(339, 126);
this.Controls.Add(this.mainGroupBox);
this.Controls.Add(this.okButton);
this.Controls.Add(this.cancelButton);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FileDeletePromptForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "File Operation";
this.mainGroupBox.ResumeLayout(false);
this.mainGroupBox.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.GroupBox mainGroupBox;
private System.Windows.Forms.Button okButton;
private System.Windows.Forms.Button cancelButton;
private System.Windows.Forms.Label mainLabel;
private System.Windows.Forms.CheckBox recursiveCheckBox;
}
}

33
FileDeletePromptForm.cs Normal file
View File

@@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MeshCentralRouter
{
public partial class FileDeletePromptForm : Form
{
public FileDeletePromptForm(string message)
{
InitializeComponent();
mainLabel.Text = message;
}
public bool recursive { get { return recursiveCheckBox.Checked; } }
private void okButton_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.OK;
}
private void cancelButton_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Cancel;
}
}
}

1815
FileDeletePromptForm.resx Normal file

File diff suppressed because it is too large Load Diff

133
FileTransferStatusForm.Designer.cs generated Normal file
View File

@@ -0,0 +1,133 @@
namespace MeshCentralRouter
{
partial class FileTransferStatusForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FileTransferStatusForm));
this.cancelButton = new System.Windows.Forms.Button();
this.mainGroupBox = new System.Windows.Forms.GroupBox();
this.progressBar2 = new System.Windows.Forms.ProgressBar();
this.progressBar1 = new System.Windows.Forms.ProgressBar();
this.mainLabel1 = new System.Windows.Forms.Label();
this.updateTimer = new System.Windows.Forms.Timer(this.components);
this.mainGroupBox.SuspendLayout();
this.SuspendLayout();
//
// cancelButton
//
this.cancelButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.cancelButton.Location = new System.Drawing.Point(277, 113);
this.cancelButton.Name = "cancelButton";
this.cancelButton.Size = new System.Drawing.Size(75, 23);
this.cancelButton.TabIndex = 0;
this.cancelButton.Text = "Cancel";
this.cancelButton.UseVisualStyleBackColor = true;
this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click);
//
// mainGroupBox
//
this.mainGroupBox.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.mainGroupBox.Controls.Add(this.progressBar2);
this.mainGroupBox.Controls.Add(this.progressBar1);
this.mainGroupBox.Controls.Add(this.mainLabel1);
this.mainGroupBox.Location = new System.Drawing.Point(12, 12);
this.mainGroupBox.Name = "mainGroupBox";
this.mainGroupBox.Size = new System.Drawing.Size(340, 95);
this.mainGroupBox.TabIndex = 4;
this.mainGroupBox.TabStop = false;
this.mainGroupBox.Text = "Transfer Progress";
//
// progressBar2
//
this.progressBar2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.progressBar2.Location = new System.Drawing.Point(17, 64);
this.progressBar2.Name = "progressBar2";
this.progressBar2.Size = new System.Drawing.Size(306, 16);
this.progressBar2.TabIndex = 4;
//
// progressBar1
//
this.progressBar1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.progressBar1.Location = new System.Drawing.Point(17, 42);
this.progressBar1.Name = "progressBar1";
this.progressBar1.Size = new System.Drawing.Size(306, 16);
this.progressBar1.TabIndex = 2;
//
// mainLabel1
//
this.mainLabel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.mainLabel1.Location = new System.Drawing.Point(14, 23);
this.mainLabel1.Name = "mainLabel1";
this.mainLabel1.Size = new System.Drawing.Size(309, 13);
this.mainLabel1.TabIndex = 1;
this.mainLabel1.Text = "---";
//
// updateTimer
//
this.updateTimer.Interval = 500;
this.updateTimer.Tick += new System.EventHandler(this.updateTimer_Tick);
//
// FileTransferStatusForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.cancelButton;
this.ClientSize = new System.Drawing.Size(364, 148);
this.Controls.Add(this.mainGroupBox);
this.Controls.Add(this.cancelButton);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FileTransferStatusForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "File Transfer";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FileTransferStatusForm_FormClosing);
this.Load += new System.EventHandler(this.FileTransferStatusForm_Load);
this.mainGroupBox.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Button cancelButton;
private System.Windows.Forms.GroupBox mainGroupBox;
private System.Windows.Forms.ProgressBar progressBar2;
private System.Windows.Forms.ProgressBar progressBar1;
private System.Windows.Forms.Label mainLabel1;
private System.Windows.Forms.Timer updateTimer;
}
}

51
FileTransferStatusForm.cs Normal file
View File

@@ -0,0 +1,51 @@
using System;
using System.Windows.Forms;
namespace MeshCentralRouter
{
public partial class FileTransferStatusForm : Form
{
private FileViewer fileViewer;
public FileTransferStatusForm(FileViewer fileViewer)
{
this.fileViewer = fileViewer;
InitializeComponent();
updateInfo();
updateTimer.Enabled = true;
}
private void updateTimer_Tick(object sender, EventArgs e)
{
updateInfo();
}
private void updateInfo()
{
if (fileViewer.uploadActive)
{
mainLabel1.Text = (string)fileViewer.uploadFileArray[fileViewer.uploadFileArrayPtr];
progressBar1.Maximum = (int)fileViewer.uploadFileSize;
progressBar1.Value = (int)fileViewer.uploadFilePtr;
progressBar2.Maximum = fileViewer.uploadFileArray.Count;
progressBar2.Value = fileViewer.uploadFileArrayPtr;
}
else { Close(); }
}
private void FileTransferStatusForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (fileViewer.uploadActive) { fileViewer.uploadStop = true; }
}
private void cancelButton_Click(object sender, EventArgs e)
{
Close();
}
private void FileTransferStatusForm_Load(object sender, EventArgs e)
{
CenterToParent();
}
}
}

1818
FileTransferStatusForm.resx Normal file

File diff suppressed because it is too large Load Diff

214
FileViewer.Designer.cs generated
View File

@@ -38,16 +38,30 @@ namespace MeshCentralRouter
this.mainToolTip = new System.Windows.Forms.ToolTip(this.components);
this.statsButton = new System.Windows.Forms.Button();
this.connectButton = new System.Windows.Forms.Button();
this.remoteRefreshButton = new System.Windows.Forms.Button();
this.remoteUpButton = new System.Windows.Forms.Button();
this.localRefreshButton = new System.Windows.Forms.Button();
this.localUpButton = new System.Windows.Forms.Button();
this.remoteNewFolderButton = new System.Windows.Forms.Button();
this.remoteRootButton = new System.Windows.Forms.Button();
this.localRootButton = new System.Windows.Forms.Button();
this.remoteDeleteButton = new System.Windows.Forms.Button();
this.topPanel = new System.Windows.Forms.Panel();
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.statusStrip = new System.Windows.Forms.StatusStrip();
this.mainToolStripStatusLabel = new System.Windows.Forms.ToolStripStatusLabel();
this.consoleMessage = new System.Windows.Forms.Label();
this.mainTableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
this.panel1 = new System.Windows.Forms.Panel();
this.downloadButton = new System.Windows.Forms.Button();
this.uploadButton = new System.Windows.Forms.Button();
this.rightPanel = new System.Windows.Forms.Panel();
this.rightListView = new System.Windows.Forms.ListView();
this.columnHeader3 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.columnHeader4 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.remoteContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.renameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.refreshToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fileIconImageList = new System.Windows.Forms.ImageList(this.components);
this.rightTopPanel = new System.Windows.Forms.Panel();
this.remoteLabel = new System.Windows.Forms.Label();
@@ -57,14 +71,12 @@ namespace MeshCentralRouter
this.columnHeader2 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.leftTopPanel = new System.Windows.Forms.Panel();
this.localLabel = new System.Windows.Forms.Label();
this.localUpButton = new System.Windows.Forms.Button();
this.remoteUpButton = new System.Windows.Forms.Button();
this.localRefreshButton = new System.Windows.Forms.Button();
this.remoteRefreshButton = new System.Windows.Forms.Button();
this.topPanel.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.statusStrip.SuspendLayout();
this.mainTableLayoutPanel.SuspendLayout();
this.panel1.SuspendLayout();
this.rightPanel.SuspendLayout();
this.remoteContextMenuStrip.SuspendLayout();
this.rightTopPanel.SuspendLayout();
this.leftPanel.SuspendLayout();
this.leftTopPanel.SuspendLayout();
@@ -72,8 +84,7 @@ namespace MeshCentralRouter
//
// updateTimer
//
this.updateTimer.Enabled = true;
this.updateTimer.Interval = 1000;
this.updateTimer.Tick += new System.EventHandler(this.updateTimer_Tick);
//
// consoleTimer
//
@@ -97,6 +108,78 @@ namespace MeshCentralRouter
this.connectButton.UseVisualStyleBackColor = true;
this.connectButton.Click += new System.EventHandler(this.connectButton_Click);
//
// remoteRefreshButton
//
resources.ApplyResources(this.remoteRefreshButton, "remoteRefreshButton");
this.remoteRefreshButton.Image = global::MeshCentralRouter.Properties.Resources.refresh16;
this.remoteRefreshButton.Name = "remoteRefreshButton";
this.mainToolTip.SetToolTip(this.remoteRefreshButton, resources.GetString("remoteRefreshButton.ToolTip"));
this.remoteRefreshButton.UseVisualStyleBackColor = true;
this.remoteRefreshButton.Click += new System.EventHandler(this.rightRefreshButton_Click);
//
// remoteUpButton
//
resources.ApplyResources(this.remoteUpButton, "remoteUpButton");
this.remoteUpButton.Image = global::MeshCentralRouter.Properties.Resources.folderup16;
this.remoteUpButton.Name = "remoteUpButton";
this.mainToolTip.SetToolTip(this.remoteUpButton, resources.GetString("remoteUpButton.ToolTip"));
this.remoteUpButton.UseVisualStyleBackColor = true;
this.remoteUpButton.Click += new System.EventHandler(this.remoteUpButton_Click);
//
// localRefreshButton
//
this.localRefreshButton.Image = global::MeshCentralRouter.Properties.Resources.refresh16;
resources.ApplyResources(this.localRefreshButton, "localRefreshButton");
this.localRefreshButton.Name = "localRefreshButton";
this.mainToolTip.SetToolTip(this.localRefreshButton, resources.GetString("localRefreshButton.ToolTip"));
this.localRefreshButton.UseVisualStyleBackColor = true;
this.localRefreshButton.Click += new System.EventHandler(this.leftRefreshButton_Click);
//
// localUpButton
//
resources.ApplyResources(this.localUpButton, "localUpButton");
this.localUpButton.Image = global::MeshCentralRouter.Properties.Resources.folderup16;
this.localUpButton.Name = "localUpButton";
this.mainToolTip.SetToolTip(this.localUpButton, resources.GetString("localUpButton.ToolTip"));
this.localUpButton.UseVisualStyleBackColor = true;
this.localUpButton.Click += new System.EventHandler(this.localUpButton_Click);
//
// remoteNewFolderButton
//
resources.ApplyResources(this.remoteNewFolderButton, "remoteNewFolderButton");
this.remoteNewFolderButton.Image = global::MeshCentralRouter.Properties.Resources.foldernew16;
this.remoteNewFolderButton.Name = "remoteNewFolderButton";
this.mainToolTip.SetToolTip(this.remoteNewFolderButton, resources.GetString("remoteNewFolderButton.ToolTip"));
this.remoteNewFolderButton.UseVisualStyleBackColor = true;
this.remoteNewFolderButton.Click += new System.EventHandler(this.remoteNewFolderButton_Click);
//
// remoteRootButton
//
resources.ApplyResources(this.remoteRootButton, "remoteRootButton");
this.remoteRootButton.Image = global::MeshCentralRouter.Properties.Resources.folderroot16;
this.remoteRootButton.Name = "remoteRootButton";
this.mainToolTip.SetToolTip(this.remoteRootButton, resources.GetString("remoteRootButton.ToolTip"));
this.remoteRootButton.UseVisualStyleBackColor = true;
this.remoteRootButton.Click += new System.EventHandler(this.remoteRootButton_Click);
//
// localRootButton
//
resources.ApplyResources(this.localRootButton, "localRootButton");
this.localRootButton.Image = global::MeshCentralRouter.Properties.Resources.folderroot16;
this.localRootButton.Name = "localRootButton";
this.mainToolTip.SetToolTip(this.localRootButton, resources.GetString("localRootButton.ToolTip"));
this.localRootButton.UseVisualStyleBackColor = true;
this.localRootButton.Click += new System.EventHandler(this.localRootButton_Click);
//
// remoteDeleteButton
//
resources.ApplyResources(this.remoteDeleteButton, "remoteDeleteButton");
this.remoteDeleteButton.Image = global::MeshCentralRouter.Properties.Resources.delete16;
this.remoteDeleteButton.Name = "remoteDeleteButton";
this.mainToolTip.SetToolTip(this.remoteDeleteButton, resources.GetString("remoteDeleteButton.ToolTip"));
this.remoteDeleteButton.UseVisualStyleBackColor = true;
this.remoteDeleteButton.Click += new System.EventHandler(this.remoteDeleteButton_Click);
//
// topPanel
//
this.topPanel.BackColor = System.Drawing.SystemColors.Control;
@@ -105,12 +188,12 @@ namespace MeshCentralRouter
resources.ApplyResources(this.topPanel, "topPanel");
this.topPanel.Name = "topPanel";
//
// statusStrip1
// statusStrip
//
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.mainToolStripStatusLabel});
resources.ApplyResources(this.statusStrip1, "statusStrip1");
this.statusStrip1.Name = "statusStrip1";
resources.ApplyResources(this.statusStrip, "statusStrip");
this.statusStrip.Name = "statusStrip";
//
// mainToolStripStatusLabel
//
@@ -134,9 +217,28 @@ namespace MeshCentralRouter
//
// panel1
//
this.panel1.Controls.Add(this.downloadButton);
this.panel1.Controls.Add(this.uploadButton);
resources.ApplyResources(this.panel1, "panel1");
this.panel1.Name = "panel1";
//
// downloadButton
//
resources.ApplyResources(this.downloadButton, "downloadButton");
this.downloadButton.Image = global::MeshCentralRouter.Properties.Resources.arrowleft16;
this.downloadButton.Name = "downloadButton";
this.mainToolTip.SetToolTip(this.downloadButton, resources.GetString("downloadButton.ToolTip"));
this.downloadButton.UseVisualStyleBackColor = true;
//
// uploadButton
//
resources.ApplyResources(this.uploadButton, "uploadButton");
this.uploadButton.Image = global::MeshCentralRouter.Properties.Resources.arrowright16;
this.uploadButton.Name = "uploadButton";
this.mainToolTip.SetToolTip(this.uploadButton, resources.GetString("uploadButton.ToolTip"));
this.uploadButton.UseVisualStyleBackColor = true;
this.uploadButton.Click += new System.EventHandler(this.uploadButton_Click);
//
// rightPanel
//
this.rightPanel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
@@ -150,13 +252,18 @@ namespace MeshCentralRouter
this.rightListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.columnHeader3,
this.columnHeader4});
this.rightListView.ContextMenuStrip = this.remoteContextMenuStrip;
resources.ApplyResources(this.rightListView, "rightListView");
this.rightListView.FullRowSelect = true;
this.rightListView.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
this.rightListView.Name = "rightListView";
this.rightListView.SmallImageList = this.fileIconImageList;
this.rightListView.UseCompatibleStateImageBehavior = false;
this.rightListView.View = System.Windows.Forms.View.Details;
this.rightListView.ColumnWidthChanged += new System.Windows.Forms.ColumnWidthChangedEventHandler(this.rightListView_ColumnWidthChanged);
this.rightListView.SelectedIndexChanged += new System.EventHandler(this.rightListView_SelectedIndexChanged);
this.rightListView.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.rightListView_MouseDoubleClick);
this.rightListView.Resize += new System.EventHandler(this.rightListView_Resize);
//
// columnHeader3
//
@@ -166,6 +273,33 @@ namespace MeshCentralRouter
//
resources.ApplyResources(this.columnHeader4, "columnHeader4");
//
// remoteContextMenuStrip
//
this.remoteContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.renameToolStripMenuItem,
this.toolStripMenuItem1,
this.refreshToolStripMenuItem});
this.remoteContextMenuStrip.Name = "remoteContextMenuStrip";
resources.ApplyResources(this.remoteContextMenuStrip, "remoteContextMenuStrip");
this.remoteContextMenuStrip.Opening += new System.ComponentModel.CancelEventHandler(this.remoteContextMenuStrip_Opening);
//
// renameToolStripMenuItem
//
this.renameToolStripMenuItem.Name = "renameToolStripMenuItem";
resources.ApplyResources(this.renameToolStripMenuItem, "renameToolStripMenuItem");
this.renameToolStripMenuItem.Click += new System.EventHandler(this.renameToolStripMenuItem_Click);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1");
//
// refreshToolStripMenuItem
//
this.refreshToolStripMenuItem.Name = "refreshToolStripMenuItem";
resources.ApplyResources(this.refreshToolStripMenuItem, "refreshToolStripMenuItem");
this.refreshToolStripMenuItem.Click += new System.EventHandler(this.rightRefreshButton_Click);
//
// fileIconImageList
//
this.fileIconImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("fileIconImageList.ImageStream")));
@@ -176,6 +310,9 @@ namespace MeshCentralRouter
//
// rightTopPanel
//
this.rightTopPanel.Controls.Add(this.remoteDeleteButton);
this.rightTopPanel.Controls.Add(this.remoteRootButton);
this.rightTopPanel.Controls.Add(this.remoteNewFolderButton);
this.rightTopPanel.Controls.Add(this.remoteRefreshButton);
this.rightTopPanel.Controls.Add(this.remoteUpButton);
this.rightTopPanel.Controls.Add(this.remoteLabel);
@@ -203,11 +340,15 @@ namespace MeshCentralRouter
this.columnHeader2});
resources.ApplyResources(this.leftListView, "leftListView");
this.leftListView.FullRowSelect = true;
this.leftListView.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
this.leftListView.Name = "leftListView";
this.leftListView.SmallImageList = this.fileIconImageList;
this.leftListView.UseCompatibleStateImageBehavior = false;
this.leftListView.View = System.Windows.Forms.View.Details;
this.leftListView.ColumnWidthChanged += new System.Windows.Forms.ColumnWidthChangedEventHandler(this.leftListView_ColumnWidthChanged);
this.leftListView.SelectedIndexChanged += new System.EventHandler(this.leftListView_SelectedIndexChanged);
this.leftListView.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.leftListView_MouseDoubleClick);
this.leftListView.Resize += new System.EventHandler(this.leftListView_Resize);
//
// columnHeader1
//
@@ -219,6 +360,7 @@ namespace MeshCentralRouter
//
// leftTopPanel
//
this.leftTopPanel.Controls.Add(this.localRootButton);
this.leftTopPanel.Controls.Add(this.localRefreshButton);
this.leftTopPanel.Controls.Add(this.localUpButton);
this.leftTopPanel.Controls.Add(this.localLabel);
@@ -230,34 +372,6 @@ namespace MeshCentralRouter
resources.ApplyResources(this.localLabel, "localLabel");
this.localLabel.Name = "localLabel";
//
// localUpButton
//
resources.ApplyResources(this.localUpButton, "localUpButton");
this.localUpButton.Name = "localUpButton";
this.localUpButton.UseVisualStyleBackColor = true;
this.localUpButton.Click += new System.EventHandler(this.localUpButton_Click);
//
// remoteUpButton
//
resources.ApplyResources(this.remoteUpButton, "remoteUpButton");
this.remoteUpButton.Name = "remoteUpButton";
this.remoteUpButton.UseVisualStyleBackColor = true;
this.remoteUpButton.Click += new System.EventHandler(this.remoteUpButton_Click);
//
// localRefreshButton
//
resources.ApplyResources(this.localRefreshButton, "localRefreshButton");
this.localRefreshButton.Name = "localRefreshButton";
this.localRefreshButton.UseVisualStyleBackColor = true;
this.localRefreshButton.Click += new System.EventHandler(this.leftRefreshButton_Click);
//
// remoteRefreshButton
//
resources.ApplyResources(this.remoteRefreshButton, "remoteRefreshButton");
this.remoteRefreshButton.Name = "remoteRefreshButton";
this.remoteRefreshButton.UseVisualStyleBackColor = true;
this.remoteRefreshButton.Click += new System.EventHandler(this.rightRefreshButton_Click);
//
// FileViewer
//
resources.ApplyResources(this, "$this");
@@ -265,15 +379,17 @@ namespace MeshCentralRouter
this.BackColor = System.Drawing.SystemColors.Control;
this.Controls.Add(this.mainTableLayoutPanel);
this.Controls.Add(this.topPanel);
this.Controls.Add(this.statusStrip1);
this.Controls.Add(this.statusStrip);
this.Name = "FileViewer";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Main_FormClosing);
this.Load += new System.EventHandler(this.MainForm_Load);
this.topPanel.ResumeLayout(false);
this.statusStrip1.ResumeLayout(false);
this.statusStrip1.PerformLayout();
this.statusStrip.ResumeLayout(false);
this.statusStrip.PerformLayout();
this.mainTableLayoutPanel.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.rightPanel.ResumeLayout(false);
this.remoteContextMenuStrip.ResumeLayout(false);
this.rightTopPanel.ResumeLayout(false);
this.rightTopPanel.PerformLayout();
this.leftPanel.ResumeLayout(false);
@@ -292,7 +408,7 @@ namespace MeshCentralRouter
private Panel topPanel;
private Button statsButton;
private Button connectButton;
private StatusStrip statusStrip1;
private StatusStrip statusStrip;
private ToolStripStatusLabel mainToolStripStatusLabel;
private Label consoleMessage;
private TableLayoutPanel mainTableLayoutPanel;
@@ -314,6 +430,16 @@ namespace MeshCentralRouter
private Button localUpButton;
private Button localRefreshButton;
private Button remoteRefreshButton;
private Button remoteNewFolderButton;
private Button remoteRootButton;
private Button localRootButton;
private Button remoteDeleteButton;
private ContextMenuStrip remoteContextMenuStrip;
private ToolStripMenuItem renameToolStripMenuItem;
private ToolStripSeparator toolStripMenuItem1;
private ToolStripMenuItem refreshToolStripMenuItem;
private Button uploadButton;
private Button downloadButton;
}
}

View File

@@ -47,6 +47,18 @@ namespace MeshCentralRouter
public long bytesOut = 0;
public long bytesOutCompressed = 0;
// Upload state
public FileTransferStatusForm transferStatusForm = null;
public bool uploadActive = false;
public bool uploadStop = false;
public int uploadFileArrayPtr = -1;
public ArrayList uploadFileArray;
public DirectoryInfo uploadLocalPath;
public string uploadRemotePath;
public FileStream uploadFileStream = null;
public long uploadFilePtr = 0;
public long uploadFileSize = 0;
public FileViewer(MeshCentralServer server, NodeClass node)
{
InitializeComponent();
@@ -54,6 +66,8 @@ namespace MeshCentralRouter
this.node = node;
this.server = server;
UpdateStatus();
rightListView.Columns[0].Width = rightListView.Width - rightListView.Columns[1].Width - 22;
}
public bool updateLocalFileView()
@@ -61,7 +75,9 @@ namespace MeshCentralRouter
leftListView.Items.Clear();
if (localFolder == null)
{
try {
localRootButton.Enabled = false;
try
{
DriveInfo[] drives = DriveInfo.GetDrives();
foreach (DriveInfo drive in drives)
{
@@ -77,6 +93,7 @@ namespace MeshCentralRouter
}
else
{
localRootButton.Enabled = true;
try
{
DirectoryInfo[] directories = localFolder.GetDirectories();
@@ -103,6 +120,7 @@ namespace MeshCentralRouter
}
catch (Exception) { return false; }
}
updateTransferButtons();
return true;
}
@@ -129,7 +147,15 @@ namespace MeshCentralRouter
}
remoteRefreshButton.Enabled = true;
remoteRootButton.Enabled = !((remoteFolder == null) || (remoteFolder == ""));
remoteUpButton.Enabled = !((remoteFolder == null) || (remoteFolder == ""));
if (node.agentid < 5) {
remoteNewFolderButton.Enabled = !((remoteFolder == null) || (remoteFolder == ""));
remoteDeleteButton.Enabled = (!((remoteFolder == null) || (remoteFolder == ""))) && (rightListView.SelectedItems.Count > 0);
} else {
remoteNewFolderButton.Enabled = true;
remoteDeleteButton.Enabled = (rightListView.SelectedItems.Count > 0);
}
if (remoteFolderList != null)
{
@@ -179,6 +205,7 @@ namespace MeshCentralRouter
}
}
}
updateTransferButtons();
}
private void Server_onStateChanged(int state)
@@ -249,16 +276,43 @@ namespace MeshCentralRouter
}
}
UpdateStatus();
updateTransferButtons();
}
private void requestRemoteFolder(string path)
{
// Send initial LS command
// Send LS command
string cmd = "{\"action\":\"ls\",\"reqid\":1,\"path\":\"" + path.Replace("\\","/") + "\"}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
}
private void requestCreateFolder(string path)
{
// Send MKDIR command
string cmd = "{\"action\":\"mkdir\",\"reqid\":2,\"path\":\"" + path.Replace("\\", "/") + "\"}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
}
private void requestRename(string path, string oldname, string newname)
{
// Send RENAME command
string cmd = "{\"action\":\"rename\",\"reqid\":3,\"path\":\"" + path.Replace("\\", "/") + "\",\"oldname\":\"" + oldname + "\",\"newname\":\"" + newname + "\"}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
}
private void requestDelete(string path, string[] files, bool recursive)
{
// Send RM command
string delfiles = "";
foreach (string file in files) { if (delfiles.Length != 0) { delfiles += ","; } delfiles += "\"" + file + "\""; }
string cmd = "{\"action\":\"rm\",\"reqid\":4,\"path\":\"" + path.Replace("\\", "/") + "\",\"rec\":" + recursive.ToString().ToLower() + ",\"delfiles\":[" + delfiles + "]}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
}
private void Wc_onStringData(webSocketClient sender, string data, int orglen)
{
bytesIn += data.Length;
@@ -330,10 +384,53 @@ namespace MeshCentralRouter
if (jsonAction == null) return;
int reqid = 0;
if (jsonAction.ContainsKey("reqid")) { reqid = (int)jsonAction["reqid"]; }
string action = null;
if (jsonAction.ContainsKey("action")) { action = (string)jsonAction["action"]; }
// Result of a LS command
if (reqid == 1)
if (action == "uploadstart")
{
if (uploadStop) { uploadCancel(); return; }
uploadNextPart(false);
for (var i = 0; i < 8; i++) { uploadNextPart(true); }
}
else if (action == "uploadack")
{
if (uploadStop) { uploadCancel(); return; }
uploadNextPart(false);
}
else if (action == "uploaddone")
{
if (uploadFileArray.Count > uploadFileArrayPtr + 1)
{
// Upload the next file
uploadFilePtr = 0;
uploadFileSize = 0;
if (uploadFileStream != null) { uploadFileStream.Close(); uploadFileStream = null; }
uploadFileArrayPtr++;
uploadNextFile();
}
else
{
// Done with all files
uploadActive = false;
uploadStop = false;
uploadFileArrayPtr = -1;
uploadFileArray = null;
uploadLocalPath = null;
uploadRemotePath = null;
uploadFilePtr = 0;
uploadFileSize = 0;
closeTransferDialog();
remoteRefresh();
}
}
else if (action == "uploaderror")
{
uploadCancel();
}
else if (reqid == 1)
{
// Result of a LS command
if (jsonAction.ContainsKey("path")) { remoteFolder = (string)jsonAction["path"]; }
if (jsonAction.ContainsKey("dir")) { remoteFolderList = (ArrayList)jsonAction["dir"]; }
updateRemoteFileView();
@@ -341,6 +438,14 @@ namespace MeshCentralRouter
}
}
private delegate void remoteRefreshHandler();
private void remoteRefresh()
{
if (this.InvokeRequired) { this.Invoke(new remoteRefreshHandler(remoteRefresh)); return; }
updateTimer.Enabled = true;
}
private void MenuItemDisconnect_Click(object sender, EventArgs e)
{
if (wc != null)
@@ -374,6 +479,10 @@ namespace MeshCentralRouter
connectButton.Text = "Connect";
remoteRefreshButton.Enabled = false;
remoteUpButton.Enabled = false;
remoteRootButton.Enabled = false;
remoteNewFolderButton.Enabled = false;
remoteDeleteButton.Enabled = false;
remoteFolder = null;
break;
case 1: // Connecting
mainToolStripStatusLabel.Text = "Connecting...";
@@ -399,7 +508,15 @@ namespace MeshCentralRouter
private void Main_FormClosing(object sender, FormClosingEventArgs e)
{
if (wc != null)
{
// Disconnect
state = 0;
wc.Dispose();
wc = null;
UpdateStatus();
}
node.fileViewer = null;
}
public delegate void displayMessageHandler(string msg);
@@ -508,5 +625,241 @@ namespace MeshCentralRouter
{
requestRemoteFolder(remoteFolder);
}
private void remoteNewFolderButton_Click(object sender, EventArgs e)
{
if (remoteFolder == null) return;
FilenamePromptForm f = new FilenamePromptForm("Create Folder", "");
if (f.ShowDialog(this) == DialogResult.OK)
{
string r;
if (remoteFolder.EndsWith("/")) { r = remoteFolder + f.filename; } else { r = remoteFolder + "/" + f.filename; }
requestCreateFolder(r);
updateTimer.Enabled = true;
}
}
private void localRootButton_Click(object sender, EventArgs e)
{
localFolder = null;
updateLocalFileView();
}
private void remoteRootButton_Click(object sender, EventArgs e)
{
requestRemoteFolder("");
}
private void rightListView_SelectedIndexChanged(object sender, EventArgs e)
{
if (node.agentid < 5)
{
remoteDeleteButton.Enabled = (!((remoteFolder == null) || (remoteFolder == ""))) && (rightListView.SelectedItems.Count > 0);
}
else
{
remoteDeleteButton.Enabled = (rightListView.SelectedItems.Count > 0);
}
updateTransferButtons();
}
private void rightListView_Resize(object sender, EventArgs e)
{
if (rightListView.Columns[0].Width != (rightListView.Width - rightListView.Columns[1].Width - 22))
{
rightListView.Columns[0].Width = rightListView.Width - rightListView.Columns[1].Width - 22;
}
}
private void rightListView_ColumnWidthChanged(object sender, ColumnWidthChangedEventArgs e)
{
if (rightListView.Columns[0].Width != (rightListView.Width - rightListView.Columns[1].Width - 22))
{
rightListView.Columns[0].Width = rightListView.Width - rightListView.Columns[1].Width - 22;
}
}
private void leftListView_Resize(object sender, EventArgs e)
{
if (leftListView.Columns[0].Width != (leftListView.Width - leftListView.Columns[1].Width - 22))
{
leftListView.Columns[0].Width = leftListView.Width - leftListView.Columns[1].Width - 22;
}
}
private void leftListView_ColumnWidthChanged(object sender, ColumnWidthChangedEventArgs e)
{
if (leftListView.Columns[0].Width != (leftListView.Width - leftListView.Columns[1].Width - 22))
{
leftListView.Columns[0].Width = leftListView.Width - leftListView.Columns[1].Width - 22;
}
}
private void updateTimer_Tick(object sender, EventArgs e)
{
updateTimer.Enabled = false;
if (remoteFolder != null) { requestRemoteFolder(remoteFolder); }
}
private void remoteDeleteButton_Click(object sender, EventArgs e)
{
ArrayList filesArray = new ArrayList();
foreach (ListViewItem l in rightListView.SelectedItems) { filesArray.Add(l.Text); }
string[] files = (string[])filesArray.ToArray(typeof(string));
string msg = string.Format("Confirm removal of {0} items?", files.Length);
if (files.Length == 1) { msg = "Confirm removal of 1 item?"; }
FileDeletePromptForm f = new FileDeletePromptForm(msg);
if (f.ShowDialog(this) == DialogResult.OK)
{
requestDelete(remoteFolder, files, f.recursive);
updateTimer.Enabled = true;
}
}
private void remoteContextMenuStrip_Opening(object sender, System.ComponentModel.CancelEventArgs e)
{
if (node.agentid < 5)
{
toolStripMenuItem1.Visible = renameToolStripMenuItem.Visible = (rightListView.SelectedItems.Count == 1) && (remoteFolder != "") && (remoteFolder != null);
}
else
{
toolStripMenuItem1.Visible = renameToolStripMenuItem.Visible = (rightListView.SelectedItems.Count == 1);
}
}
private void renameToolStripMenuItem_Click(object sender, EventArgs e)
{
string oldname = rightListView.SelectedItems[0].Text;
if ((rightListView.SelectedItems.Count != 1) || (remoteFolder == null)) return;
FilenamePromptForm f = new FilenamePromptForm("Rename", oldname);
if (f.ShowDialog(this) == DialogResult.OK)
{
if (oldname == f.filename) return;
//string r;
//if (remoteFolder.EndsWith("/")) { r = remoteFolder + f.filename; } else { r = remoteFolder + "/" + f.filename; }
requestRename(remoteFolder, oldname, f.filename);
updateTimer.Enabled = true;
}
}
private delegate void updateTransferButtonsHandler();
private void updateTransferButtons()
{
if (this.InvokeRequired) { this.Invoke(new updateTransferButtonsHandler(updateTransferButtons)); return; }
if ((wc == null) || (wc.State != webSocketClient.ConnectionStates.Connected))
{
uploadButton.Enabled = false;
downloadButton.Enabled = false;
}
else
{
// Set upload button
bool uploadAllowed = true;
if (localFolder == null) { uploadAllowed = false; }
if (leftListView.SelectedItems.Count == 0) { uploadAllowed = false; }
foreach (ListViewItem l in leftListView.SelectedItems) { if (l.ImageIndex != 2) { uploadAllowed = false; } }
if ((node.agentid < 5) && ((remoteFolder == null) || (remoteFolder == ""))) { uploadAllowed = false; }
uploadButton.Enabled = uploadAllowed;
// Set download button
bool downloadAllowed = true;
if (localFolder == null) { downloadAllowed = false; }
if (rightListView.SelectedItems.Count == 0) { downloadAllowed = false; }
foreach (ListViewItem l in rightListView.SelectedItems) { if (l.ImageIndex != 2) { downloadAllowed = false; } }
if ((node.agentid < 5) && ((remoteFolder == null) || (remoteFolder == ""))) { downloadAllowed = false; }
downloadButton.Enabled = downloadAllowed;
}
}
private void leftListView_SelectedIndexChanged(object sender, EventArgs e)
{
updateTransferButtons();
}
private void uploadButton_Click(object sender, EventArgs e)
{
if (uploadActive) return;
uploadFileArrayPtr = 0;
uploadFileArray = new ArrayList();
foreach (ListViewItem l in leftListView.SelectedItems) { if (l.ImageIndex == 2) { uploadFileArray.Add(l.Text); } }
uploadLocalPath = localFolder;
uploadRemotePath = remoteFolder;
uploadActive = true;
uploadStop = false;
uploadNextFile();
// Show transfer status dialog
transferStatusForm = new FileTransferStatusForm(this);
transferStatusForm.Show(this);
}
private void uploadNextFile()
{
string localFilePath;
localFilePath = Path.Combine(uploadLocalPath.FullName, (string)uploadFileArray[uploadFileArrayPtr]);
uploadFileStream = File.OpenRead(localFilePath);
uploadFileSize = new FileInfo(localFilePath).Length;
uploadFilePtr = 0;
// Send UPLOAD command
string cmd = "{\"action\":\"upload\",\"reqid\":" + (uploadFileArrayPtr + 1000) + ",\"path\":\"" + uploadRemotePath + "\",\"name\":\"" + uploadFileArray[uploadFileArrayPtr] + "\",\"size\":" + uploadFileSize + "}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
}
public void uploadCancel()
{
if (uploadActive == false) return;
// Send UPLOADCANCEL command
string cmd = "{\"action\":\"uploadcancel\",\"reqid\":" + (uploadFileArrayPtr + 1000) + "}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
// Clear state
uploadActive = false;
uploadStop = false;
uploadFileArrayPtr = -1;
uploadFileArray = null;
uploadLocalPath = null;
uploadRemotePath = null;
uploadFilePtr = 0;
uploadFileSize = 0;
if (uploadFileStream != null) { uploadFileStream.Close(); uploadFileStream = null; }
closeTransferDialog();
updateTimer.Enabled = true;
}
private void uploadNextPart(bool dataPriming)
{
if (uploadActive == false) return;
byte[] buffer = new byte[16385];
int len = uploadFileStream.Read(buffer, 1, buffer.Length - 1);
if (dataPriming && (len == 0)) return;
uploadFilePtr += len;
if (len == 0) {
// Send UPLOADDONE command
string cmd = "{\"action\":\"uploaddone\",\"reqid\":" + (uploadFileArrayPtr + 1000) + "}";
byte[] bincmd = UTF8Encoding.UTF8.GetBytes(cmd);
wc.SendBinary(bincmd, 0, bincmd.Length);
} else {
// Send part of the file
// If starts with 0 or {, add a zero char at the start of the send, this will indicate that it's not a JSON command.
if ((buffer[1] == 123) || (buffer[1] == 0)) { wc.SendBinary(buffer, 0, len + 1); } else { wc.SendBinary(buffer, 1, len); }
}
}
private delegate void closeTransferDialogHandler();
private void closeTransferDialog()
{
if (transferStatusForm == null) return;
if (this.InvokeRequired) { this.Invoke(new closeTransferDialogHandler(closeTransferDialog)); return; }
transferStatusForm.Close(); transferStatusForm = null;
}
}
}

View File

@@ -195,6 +195,240 @@
<data name="&gt;&gt;connectButton.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="remoteRefreshButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="remoteRefreshButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="remoteRefreshButton.Location" type="System.Drawing.Point, System.Drawing">
<value>78, 21</value>
</data>
<data name="remoteRefreshButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="remoteRefreshButton.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="remoteRefreshButton.ToolTip" xml:space="preserve">
<value>Refresh</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.Name" xml:space="preserve">
<value>remoteRefreshButton</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="remoteUpButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="remoteUpButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="remoteUpButton.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 21</value>
</data>
<data name="remoteUpButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="remoteUpButton.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="remoteUpButton.ToolTip" xml:space="preserve">
<value>Go to parent folder</value>
</data>
<data name="&gt;&gt;remoteUpButton.Name" xml:space="preserve">
<value>remoteUpButton</value>
</data>
<data name="&gt;&gt;remoteUpButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteUpButton.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteUpButton.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="localRefreshButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="localRefreshButton.Location" type="System.Drawing.Point, System.Drawing">
<value>78, 21</value>
</data>
<data name="localRefreshButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="localRefreshButton.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="localRefreshButton.ToolTip" xml:space="preserve">
<value>Refresh</value>
</data>
<data name="&gt;&gt;localRefreshButton.Name" xml:space="preserve">
<value>localRefreshButton</value>
</data>
<data name="&gt;&gt;localRefreshButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;localRefreshButton.Parent" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;localRefreshButton.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="localUpButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="localUpButton.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 21</value>
</data>
<data name="localUpButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="localUpButton.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="localUpButton.ToolTip" xml:space="preserve">
<value>Go to parent folder</value>
</data>
<data name="&gt;&gt;localUpButton.Name" xml:space="preserve">
<value>localUpButton</value>
</data>
<data name="&gt;&gt;localUpButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;localUpButton.Parent" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;localUpButton.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="remoteNewFolderButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="remoteNewFolderButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="remoteNewFolderButton.Location" type="System.Drawing.Point, System.Drawing">
<value>114, 21</value>
</data>
<data name="remoteNewFolderButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="remoteNewFolderButton.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="remoteNewFolderButton.ToolTip" xml:space="preserve">
<value>New Folder</value>
</data>
<data name="&gt;&gt;remoteNewFolderButton.Name" xml:space="preserve">
<value>remoteNewFolderButton</value>
</data>
<data name="&gt;&gt;remoteNewFolderButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteNewFolderButton.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteNewFolderButton.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="remoteRootButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="remoteRootButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="remoteRootButton.Location" type="System.Drawing.Point, System.Drawing">
<value>42, 21</value>
</data>
<data name="remoteRootButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="remoteRootButton.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="remoteRootButton.ToolTip" xml:space="preserve">
<value>Go to root</value>
</data>
<data name="&gt;&gt;remoteRootButton.Name" xml:space="preserve">
<value>remoteRootButton</value>
</data>
<data name="&gt;&gt;remoteRootButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteRootButton.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteRootButton.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="localRootButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="localRootButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="localRootButton.Location" type="System.Drawing.Point, System.Drawing">
<value>42, 21</value>
</data>
<data name="localRootButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="localRootButton.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="localRootButton.ToolTip" xml:space="preserve">
<value>Go to root</value>
</data>
<data name="&gt;&gt;localRootButton.Name" xml:space="preserve">
<value>localRootButton</value>
</data>
<data name="&gt;&gt;localRootButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;localRootButton.Parent" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;localRootButton.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="remoteDeleteButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="remoteDeleteButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="remoteDeleteButton.Location" type="System.Drawing.Point, System.Drawing">
<value>150, 21</value>
</data>
<data name="remoteDeleteButton.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 23</value>
</data>
<data name="remoteDeleteButton.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="remoteDeleteButton.ToolTip" xml:space="preserve">
<value>Delete</value>
</data>
<data name="&gt;&gt;remoteDeleteButton.Name" xml:space="preserve">
<value>remoteDeleteButton</value>
</data>
<data name="&gt;&gt;remoteDeleteButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteDeleteButton.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteDeleteButton.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="topPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
@@ -217,34 +451,34 @@
<value>$this</value>
</data>
<data name="&gt;&gt;topPanel.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>381, 17</value>
</metadata>
<data name="statusStrip1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 503</value>
<data name="statusStrip.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 480</value>
</data>
<data name="statusStrip1.Size" type="System.Drawing.Size, System.Drawing">
<data name="statusStrip.Size" type="System.Drawing.Size, System.Drawing">
<value>690, 22</value>
</data>
<data name="statusStrip1.TabIndex" type="System.Int32, mscorlib">
<data name="statusStrip.TabIndex" type="System.Int32, mscorlib">
<value>13</value>
</data>
<data name="statusStrip1.Text" xml:space="preserve">
<data name="statusStrip.Text" xml:space="preserve">
<value>statusStrip1</value>
</data>
<data name="&gt;&gt;statusStrip1.Name" xml:space="preserve">
<value>statusStrip1</value>
<data name="&gt;&gt;statusStrip.Name" xml:space="preserve">
<value>statusStrip</value>
</data>
<data name="&gt;&gt;statusStrip1.Type" xml:space="preserve">
<data name="&gt;&gt;statusStrip.Type" xml:space="preserve">
<value>System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;statusStrip1.Parent" xml:space="preserve">
<data name="&gt;&gt;statusStrip.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;statusStrip1.ZOrder" xml:space="preserve">
<value>2</value>
<data name="&gt;&gt;statusStrip.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="mainToolStripStatusLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>675, 17</value>
@@ -268,7 +502,7 @@
<value>NoControl</value>
</data>
<data name="consoleMessage.Location" type="System.Drawing.Point, System.Drawing">
<value>17, 393</value>
<value>17, 370</value>
</data>
<data name="consoleMessage.Size" type="System.Drawing.Size, System.Drawing">
<value>70, 25</value>
@@ -297,14 +531,71 @@
<data name="mainTableLayoutPanel.ColumnCount" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="downloadButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="downloadButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="downloadButton.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 132</value>
</data>
<data name="downloadButton.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 38</value>
</data>
<data name="downloadButton.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="downloadButton.ToolTip" xml:space="preserve">
<value>Download Files</value>
</data>
<data name="&gt;&gt;downloadButton.Name" xml:space="preserve">
<value>downloadButton</value>
</data>
<data name="&gt;&gt;downloadButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;downloadButton.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;downloadButton.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="uploadButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="uploadButton.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 88</value>
</data>
<data name="uploadButton.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 38</value>
</data>
<data name="uploadButton.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="uploadButton.ToolTip" xml:space="preserve">
<value>Upload files</value>
</data>
<data name="&gt;&gt;uploadButton.Name" xml:space="preserve">
<value>uploadButton</value>
</data>
<data name="&gt;&gt;uploadButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;uploadButton.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;uploadButton.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
<value>338, 3</value>
<value>333, 3</value>
</data>
<data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>14, 465</value>
<value>24, 442</value>
</data>
<data name="panel1.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -321,6 +612,132 @@
<data name="&gt;&gt;panel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;rightListView.Name" xml:space="preserve">
<value>rightListView</value>
</data>
<data name="&gt;&gt;rightListView.Type" xml:space="preserve">
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;rightListView.Parent" xml:space="preserve">
<value>rightPanel</value>
</data>
<data name="&gt;&gt;rightListView.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;rightTopPanel.Name" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;rightTopPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;rightTopPanel.Parent" xml:space="preserve">
<value>rightPanel</value>
</data>
<data name="&gt;&gt;rightTopPanel.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="rightPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="rightPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>363, 3</value>
</data>
<data name="rightPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>324, 442</value>
</data>
<data name="rightPanel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;rightPanel.Name" xml:space="preserve">
<value>rightPanel</value>
</data>
<data name="&gt;&gt;rightPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;rightPanel.Parent" xml:space="preserve">
<value>mainTableLayoutPanel</value>
</data>
<data name="&gt;&gt;rightPanel.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;leftListView.Name" xml:space="preserve">
<value>leftListView</value>
</data>
<data name="&gt;&gt;leftListView.Type" xml:space="preserve">
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;leftListView.Parent" xml:space="preserve">
<value>leftPanel</value>
</data>
<data name="&gt;&gt;leftListView.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;leftTopPanel.Name" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;leftTopPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;leftTopPanel.Parent" xml:space="preserve">
<value>leftPanel</value>
</data>
<data name="&gt;&gt;leftTopPanel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="leftPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="leftPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="leftPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>324, 442</value>
</data>
<data name="leftPanel.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;leftPanel.Name" xml:space="preserve">
<value>leftPanel</value>
</data>
<data name="&gt;&gt;leftPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;leftPanel.Parent" xml:space="preserve">
<value>mainTableLayoutPanel</value>
</data>
<data name="&gt;&gt;leftPanel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="mainTableLayoutPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="mainTableLayoutPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 32</value>
</data>
<data name="mainTableLayoutPanel.RowCount" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="mainTableLayoutPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>690, 448</value>
</data>
<data name="mainTableLayoutPanel.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.Name" xml:space="preserve">
<value>mainTableLayoutPanel</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="mainTableLayoutPanel.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="panel1" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="rightPanel" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="leftPanel" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,50,Absolute,30,Percent,50" /&gt;&lt;Rows Styles="Percent,100" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<data name="columnHeader3.Text" xml:space="preserve">
<value>Name</value>
</data>
@@ -336,6 +753,18 @@
<data name="columnHeader4.Width" type="System.Int32, mscorlib">
<value>80</value>
</data>
<metadata name="remoteContextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>640, 17</value>
</metadata>
<data name="remoteContextMenuStrip.Size" type="System.Drawing.Size, System.Drawing">
<value>118, 54</value>
</data>
<data name="&gt;&gt;remoteContextMenuStrip.Name" xml:space="preserve">
<value>remoteContextMenuStrip</value>
</data>
<data name="&gt;&gt;remoteContextMenuStrip.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="rightListView.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
@@ -343,7 +772,7 @@
<value>0, 50</value>
</data>
<data name="rightListView.Size" type="System.Drawing.Size, System.Drawing">
<value>325, 411</value>
<value>320, 388</value>
</data>
<metadata name="fileIconImageList.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>497, 17</value>
@@ -353,7 +782,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC+
CQAAAk1TRnQBSQFMAgEBAwEAARABAAEQAQABEAEAARABAAT/AREBAAj/AUIBTQE2BwABNgMAASgDAAFA
CQAAAk1TRnQBSQFMAgEBAwEAAWABAAFgAQABEAEAARABAAT/AREBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABEAMAAQEBAAEQBgABCDoAATABcwHKAWYBygFmAbUBexIAARABQgEQAUIBEAFCARABQgEQAUIBEAFC
ARABQgEQAUIBEAFCARABQgEQAUIBEAFCARABQkYAAcoBZgHKAWYBygFmAcoBZgHKAWYBygFmAcoBZgHK
AWYBygFmAcoBZgHKAWYBygFmATABcwYAARABQgHeAXsB3gF7Ad4BewHeAXsB3gF7Ad4BewHeAXsB3gF7
@@ -412,61 +841,55 @@
<data name="&gt;&gt;rightListView.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="remoteRefreshButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
<data name="renameToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>117, 22</value>
</data>
<data name="remoteRefreshButton.Location" type="System.Drawing.Point, System.Drawing">
<value>58, 21</value>
<data name="renameToolStripMenuItem.Text" xml:space="preserve">
<value>&amp;Rename</value>
</data>
<data name="remoteRefreshButton.Size" type="System.Drawing.Size, System.Drawing">
<value>61, 23</value>
<data name="toolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing">
<value>114, 6</value>
</data>
<data name="remoteRefreshButton.TabIndex" type="System.Int32, mscorlib">
<data name="refreshToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>117, 22</value>
</data>
<data name="refreshToolStripMenuItem.Text" xml:space="preserve">
<value>R&amp;efresh</value>
</data>
<data name="&gt;&gt;remoteLabel.Name" xml:space="preserve">
<value>remoteLabel</value>
</data>
<data name="&gt;&gt;remoteLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteLabel.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteLabel.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="remoteRefreshButton.Text" xml:space="preserve">
<value>Refresh</value>
<data name="rightTopPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.Name" xml:space="preserve">
<value>remoteRefreshButton</value>
<data name="rightTopPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="rightTopPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>320, 50</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.Parent" xml:space="preserve">
<data name="rightTopPanel.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="&gt;&gt;rightTopPanel.Name" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteRefreshButton.ZOrder" xml:space="preserve">
<value>0</value>
<data name="&gt;&gt;rightTopPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="remoteUpButton.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
<data name="&gt;&gt;rightTopPanel.Parent" xml:space="preserve">
<value>rightPanel</value>
</data>
<data name="remoteUpButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="remoteUpButton.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 21</value>
</data>
<data name="remoteUpButton.Size" type="System.Drawing.Size, System.Drawing">
<value>46, 23</value>
</data>
<data name="remoteUpButton.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="remoteUpButton.Text" xml:space="preserve">
<value>Up</value>
</data>
<data name="&gt;&gt;remoteUpButton.Name" xml:space="preserve">
<value>remoteUpButton</value>
</data>
<data name="&gt;&gt;remoteUpButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;remoteUpButton.Parent" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteUpButton.ZOrder" xml:space="preserve">
<data name="&gt;&gt;rightTopPanel.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="remoteLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
@@ -500,55 +923,7 @@
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;remoteLabel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="rightTopPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="rightTopPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="rightTopPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>325, 50</value>
</data>
<data name="rightTopPanel.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="&gt;&gt;rightTopPanel.Name" xml:space="preserve">
<value>rightTopPanel</value>
</data>
<data name="&gt;&gt;rightTopPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;rightTopPanel.Parent" xml:space="preserve">
<value>rightPanel</value>
</data>
<data name="&gt;&gt;rightTopPanel.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="rightPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="rightPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>358, 3</value>
</data>
<data name="rightPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>329, 465</value>
</data>
<data name="rightPanel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;rightPanel.Name" xml:space="preserve">
<value>rightPanel</value>
</data>
<data name="&gt;&gt;rightPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;rightPanel.Parent" xml:space="preserve">
<value>mainTableLayoutPanel</value>
</data>
<data name="&gt;&gt;rightPanel.ZOrder" xml:space="preserve">
<value>1</value>
<value>5</value>
</data>
<data name="columnHeader1.Text" xml:space="preserve">
<value>Name</value>
@@ -572,7 +947,7 @@
<value>0, 50</value>
</data>
<data name="leftListView.Size" type="System.Drawing.Size, System.Drawing">
<value>325, 411</value>
<value>320, 388</value>
</data>
<data name="leftListView.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -589,56 +964,41 @@
<data name="&gt;&gt;leftListView.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="localRefreshButton.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
<data name="&gt;&gt;localLabel.Name" xml:space="preserve">
<value>localLabel</value>
</data>
<data name="localRefreshButton.Location" type="System.Drawing.Point, System.Drawing">
<value>58, 21</value>
<data name="&gt;&gt;localLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="localRefreshButton.Size" type="System.Drawing.Size, System.Drawing">
<value>61, 23</value>
</data>
<data name="localRefreshButton.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="localRefreshButton.Text" xml:space="preserve">
<value>Refresh</value>
</data>
<data name="&gt;&gt;localRefreshButton.Name" xml:space="preserve">
<value>localRefreshButton</value>
</data>
<data name="&gt;&gt;localRefreshButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;localRefreshButton.Parent" xml:space="preserve">
<data name="&gt;&gt;localLabel.Parent" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;localRefreshButton.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="localUpButton.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 21</value>
</data>
<data name="localUpButton.Size" type="System.Drawing.Size, System.Drawing">
<value>46, 23</value>
</data>
<data name="localUpButton.TabIndex" type="System.Int32, mscorlib">
<data name="&gt;&gt;localLabel.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="localUpButton.Text" xml:space="preserve">
<value>Up</value>
<data name="leftTopPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="&gt;&gt;localUpButton.Name" xml:space="preserve">
<value>localUpButton</value>
<data name="leftTopPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="&gt;&gt;localUpButton.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="leftTopPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>320, 50</value>
</data>
<data name="&gt;&gt;localUpButton.Parent" xml:space="preserve">
<data name="leftTopPanel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;leftTopPanel.Name" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;localUpButton.ZOrder" xml:space="preserve">
<value>1</value>
<data name="&gt;&gt;leftTopPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;leftTopPanel.Parent" xml:space="preserve">
<value>leftPanel</value>
</data>
<data name="&gt;&gt;leftTopPanel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="localLabel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
@@ -668,85 +1028,7 @@
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;localLabel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="leftTopPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="leftTopPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="leftTopPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>325, 50</value>
</data>
<data name="leftTopPanel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;leftTopPanel.Name" xml:space="preserve">
<value>leftTopPanel</value>
</data>
<data name="&gt;&gt;leftTopPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;leftTopPanel.Parent" xml:space="preserve">
<value>leftPanel</value>
</data>
<data name="&gt;&gt;leftTopPanel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="leftPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="leftPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="leftPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>329, 465</value>
</data>
<data name="leftPanel.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;leftPanel.Name" xml:space="preserve">
<value>leftPanel</value>
</data>
<data name="&gt;&gt;leftPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;leftPanel.Parent" xml:space="preserve">
<value>mainTableLayoutPanel</value>
</data>
<data name="&gt;&gt;leftPanel.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="mainTableLayoutPanel.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="mainTableLayoutPanel.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 32</value>
</data>
<data name="mainTableLayoutPanel.RowCount" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="mainTableLayoutPanel.Size" type="System.Drawing.Size, System.Drawing">
<value>690, 471</value>
</data>
<data name="mainTableLayoutPanel.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.Name" xml:space="preserve">
<value>mainTableLayoutPanel</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;mainTableLayoutPanel.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="mainTableLayoutPanel.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="panel1" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="rightPanel" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="leftPanel" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,50,Absolute,20,Percent,50" /&gt;&lt;Rows Styles="Percent,100" /&gt;&lt;/TableLayoutSettings&gt;</value>
<value>3</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
@@ -755,7 +1037,7 @@
<value>6, 13</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>690, 525</value>
<value>690, 502</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
@@ -1230,6 +1512,24 @@
<data name="&gt;&gt;columnHeader4.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;renameToolStripMenuItem.Name" xml:space="preserve">
<value>renameToolStripMenuItem</value>
</data>
<data name="&gt;&gt;renameToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;toolStripMenuItem1.Name" xml:space="preserve">
<value>toolStripMenuItem1</value>
</data>
<data name="&gt;&gt;toolStripMenuItem1.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;refreshToolStripMenuItem.Name" xml:space="preserve">
<value>refreshToolStripMenuItem</value>
</data>
<data name="&gt;&gt;refreshToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;fileIconImageList.Name" xml:space="preserve">
<value>fileIconImageList</value>
</data>

127
FilenamePromptForm.Designer.cs generated Normal file
View File

@@ -0,0 +1,127 @@
namespace MeshCentralRouter
{
partial class FilenamePromptForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FilenamePromptForm));
this.mainGroupBox = new System.Windows.Forms.GroupBox();
this.label1 = new System.Windows.Forms.Label();
this.mainTextBox = new System.Windows.Forms.TextBox();
this.cancelButton = new System.Windows.Forms.Button();
this.okButton = new System.Windows.Forms.Button();
this.mainGroupBox.SuspendLayout();
this.SuspendLayout();
//
// mainGroupBox
//
this.mainGroupBox.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.mainGroupBox.Controls.Add(this.label1);
this.mainGroupBox.Controls.Add(this.mainTextBox);
this.mainGroupBox.Location = new System.Drawing.Point(12, 12);
this.mainGroupBox.Name = "mainGroupBox";
this.mainGroupBox.Size = new System.Drawing.Size(315, 52);
this.mainGroupBox.TabIndex = 0;
this.mainGroupBox.TabStop = false;
this.mainGroupBox.Text = "Rename File";
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(6, 22);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(35, 13);
this.label1.TabIndex = 1;
this.label1.Text = "Name";
//
// mainTextBox
//
this.mainTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.mainTextBox.Location = new System.Drawing.Point(125, 19);
this.mainTextBox.Name = "mainTextBox";
this.mainTextBox.Size = new System.Drawing.Size(184, 20);
this.mainTextBox.TabIndex = 0;
this.mainTextBox.TextChanged += new System.EventHandler(this.mainTextBox_TextChanged);
//
// cancelButton
//
this.cancelButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.cancelButton.Location = new System.Drawing.Point(252, 70);
this.cancelButton.Name = "cancelButton";
this.cancelButton.Size = new System.Drawing.Size(75, 23);
this.cancelButton.TabIndex = 1;
this.cancelButton.Text = "Cancel";
this.cancelButton.UseVisualStyleBackColor = true;
this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click);
//
// okButton
//
this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.okButton.Location = new System.Drawing.Point(171, 70);
this.okButton.Name = "okButton";
this.okButton.Size = new System.Drawing.Size(75, 23);
this.okButton.TabIndex = 2;
this.okButton.Text = "OK";
this.okButton.UseVisualStyleBackColor = true;
this.okButton.Click += new System.EventHandler(this.okButton_Click);
//
// FilenamePromptForm
//
this.AcceptButton = this.okButton;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.cancelButton;
this.ClientSize = new System.Drawing.Size(339, 105);
this.Controls.Add(this.okButton);
this.Controls.Add(this.cancelButton);
this.Controls.Add(this.mainGroupBox);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FilenamePromptForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "File Operation";
this.mainGroupBox.ResumeLayout(false);
this.mainGroupBox.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.GroupBox mainGroupBox;
private System.Windows.Forms.Button cancelButton;
private System.Windows.Forms.Button okButton;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox mainTextBox;
}
}

44
FilenamePromptForm.cs Normal file
View File

@@ -0,0 +1,44 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MeshCentralRouter
{
public partial class FilenamePromptForm : Form
{
public string filename
{
get { return mainTextBox.Text; }
set { mainTextBox.Text = value; }
}
public FilenamePromptForm(string operation, string filename)
{
InitializeComponent();
mainGroupBox.Text = operation;
mainTextBox.Text = filename;
okButton.Enabled = (filename.Length > 0);
}
private void mainTextBox_TextChanged(object sender, EventArgs e)
{
okButton.Enabled = (mainTextBox.Text.Length > 0);
}
private void okButton_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.OK;
}
private void cancelButton_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Cancel;
}
}
}

1815
FilenamePromptForm.resx Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -659,7 +659,10 @@ namespace MeshCentralRouter
noDevicesLabel.Visible = true;
if ((meshcentral != null) && (meshcentral.nodes != null))
{
foreach (NodeClass n in meshcentral.nodes.Values) { if (n.desktopViewer != null) { n.desktopViewer.Close(); } }
foreach (NodeClass n in meshcentral.nodes.Values) {
if (n.desktopViewer != null) { n.desktopViewer.Close(); }
if (n.fileViewer != null) { n.fileViewer.Close(); }
}
}
// Clean up the server

View File

@@ -100,6 +100,24 @@
<Compile Include="AppLaunchForm.Designer.cs">
<DependentUpon>AppLaunchForm.cs</DependentUpon>
</Compile>
<Compile Include="FileDeletePromptForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FileDeletePromptForm.Designer.cs">
<DependentUpon>FileDeletePromptForm.cs</DependentUpon>
</Compile>
<Compile Include="FilenamePromptForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FilenamePromptForm.Designer.cs">
<DependentUpon>FilenamePromptForm.cs</DependentUpon>
</Compile>
<Compile Include="FileTransferStatusForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FileTransferStatusForm.Designer.cs">
<DependentUpon>FileTransferStatusForm.cs</DependentUpon>
</Compile>
<Compile Include="FileViewer.cs">
<SubType>Form</SubType>
</Compile>
@@ -398,6 +416,15 @@
<EmbeddedResource Include="DeviceUserControl.zh-chs.resx">
<DependentUpon>DeviceUserControl.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FileDeletePromptForm.resx">
<DependentUpon>FileDeletePromptForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FilenamePromptForm.resx">
<DependentUpon>FilenamePromptForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FileTransferStatusForm.resx">
<DependentUpon>FileTransferStatusForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="FileViewer.resx">
<DependentUpon>FileViewer.cs</DependentUpon>
</EmbeddedResource>
@@ -731,6 +758,13 @@
</ItemGroup>
<ItemGroup>
<Content Include="MeshServer.ico" />
<None Include="Resources\arrowleft16.png" />
<None Include="Resources\arrowright16.png" />
<None Include="Resources\delete16.png" />
<None Include="Resources\folderroot16.png" />
<None Include="Resources\foldernew16.png" />
<None Include="Resources\refresh16.png" />
<None Include="Resources\folderup16.png" />
<None Include="Resources\ZoomToFit.png" />
<None Include="Resources\icon-clipboard-out.png" />
<None Include="Resources\icon-clipboard-in.png" />

View File

@@ -78,6 +78,26 @@ namespace MeshCentralRouter.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap arrowleft16 {
get {
object obj = ResourceManager.GetObject("arrowleft16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap arrowright16 {
get {
object obj = ResourceManager.GetObject("arrowright16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to CIRA.
/// </summary>
@@ -97,6 +117,16 @@ namespace MeshCentralRouter.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap delete16 {
get {
object obj = ResourceManager.GetObject("delete16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to Don&apos;t ask for {0} days..
/// </summary>
@@ -144,6 +174,36 @@ namespace MeshCentralRouter.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap foldernew16 {
get {
object obj = ResourceManager.GetObject("foldernew16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap folderroot16 {
get {
object obj = ResourceManager.GetObject("folderroot16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap folderup16 {
get {
object obj = ResourceManager.GetObject("folderup16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@@ -323,6 +383,16 @@ namespace MeshCentralRouter.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap refresh16 {
get {
object obj = ResourceManager.GetObject("refresh16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized string similar to Relay.
/// </summary>

View File

@@ -117,24 +117,30 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="EmailVerificationRequired" xml:space="preserve">
<value>Email verification required</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="arrowright16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrowright16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Help20" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Help20.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Folder36" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Folder36.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="LanguagesTitle" xml:space="preserve">
<value>Languages</value>
</data>
<data name="SearchPlaceHolder" xml:space="preserve">
<value>Search</value>
</data>
<data name="foldernew16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\foldernew16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="MC2Banner" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MC2-Banner.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="PuttyAppName" xml:space="preserve">
<value>PuTTY SSH client</value>
<data name="iconClipboardIn" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon-clipboard-in.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Stopped2" xml:space="preserve">
<value>Stopped</value>
</data>
<data name="WinscpAppName" xml:space="preserve">
<value>WinSCP client</value>
@@ -148,6 +154,9 @@
<data name="LanguagesChanging" xml:space="preserve">
<value>Changing language will close this tool. Are you sure?</value>
</data>
<data name="PuttyAppName" xml:space="preserve">
<value>PuTTY SSH client</value>
</data>
<data name="UnableToConnect" xml:space="preserve">
<value>Unable to connect</value>
</data>
@@ -160,17 +169,17 @@
<data name="Agent" xml:space="preserve">
<value>Agent</value>
</data>
<data name="iconClipboardOut" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon-clipboard-out.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Stopped" xml:space="preserve">
<value>Stopped.</value>
</data>
<data name="MeshCentral" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\MeshCentral.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="iconClipboardOut" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon-clipboard-out.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Offline" xml:space="preserve">
<value>Offline</value>
<data name="xinstall" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\xinstall.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="SmsSent" xml:space="preserve">
<value>SMS sent</value>
@@ -181,14 +190,17 @@
<data name="Relay" xml:space="preserve">
<value>Relay</value>
</data>
<data name="xinstall" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\xinstall.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="folderroot16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\folderroot16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Computer50" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\50-Computer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="EmailSent" xml:space="preserve">
<value>Email sent</value>
</data>
<data name="EmailVerificationRequired" xml:space="preserve">
<value>Email verification required</value>
<data name="Offline" xml:space="preserve">
<value>Offline</value>
</data>
<data name="SendTokenSMS" xml:space="preserve">
<value>Send token to registered phone number?</value>
@@ -196,52 +208,61 @@
<data name="MeshCentralRouter" xml:space="preserve">
<value>MeshCentral Router</value>
</data>
<data name="Stopped2" xml:space="preserve">
<value>Stopped</value>
<data name="refresh16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\refresh16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ManyConnections" xml:space="preserve">
<value>, {0} connections.</value>
<data name="ZoomToFit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ZoomToFit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Starting" xml:space="preserve">
<value>Starting...</value>
</data>
<data name="Computer50" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\50-Computer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="IndividualDevices" xml:space="preserve">
<value>(Individual Devices)</value>
</data>
<data name="TwoFactorAuthentication" xml:space="preserve">
<value>Two-factor Authentication</value>
</data>
<data name="MeshCentralTitle" xml:space="preserve">
<value>MeshCentral</value>
<data name="DontAskXDays" xml:space="preserve">
<value>Don't ask for {0} days.</value>
</data>
<data name="MQTT" xml:space="preserve">
<value>MQTT</value>
</data>
<data name="MeshCentralTitle" xml:space="preserve">
<value>MeshCentral</value>
</data>
<data name="LanguagesTitle" xml:space="preserve">
<value>Languages</value>
</data>
<data name="EmptyBanner" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Empty-Banner.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons01" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons01.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="OneConnection" xml:space="preserve">
<value>, 1 connection.</value>
<data name="delete16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\delete16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="folderup16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\folderup16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="UnableToBindToLocalPort" xml:space="preserve">
<value>Unable to bind to local port</value>
</data>
<data name="iconClipboardIn" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icon-clipboard-in.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="ManyConnections" xml:space="preserve">
<value>, {0} connections.</value>
</data>
<data name="Folder36" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Folder36.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="InvalidUsernameOrPassword" xml:space="preserve">
<value>Invalid username or password</value>
</data>
<data name="ZoomToFit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ZoomToFit.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="OneConnection" xml:space="preserve">
<value>, 1 connection.</value>
</data>
<data name="DontAskXDays" xml:space="preserve">
<value>Don't ask for {0} days.</value>
<data name="arrowleft16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrowleft16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

BIN
Resources/arrowleft16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

BIN
Resources/arrowright16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

BIN
Resources/delete16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 778 B

BIN
Resources/foldernew16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 636 B

BIN
Resources/folderroot16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 488 B

BIN
Resources/folderup16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 B

BIN
Resources/refresh16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 795 B