### 2024-12-20 星期五更新

------
#### SuperDesign    V3.0.2412.2001
- *.[新增]新增程序更新日志设置和自动发布功能。
- *.[修复]修复Post数据格式不正确时双击文本框会导致软件闪退的BUG。
This commit is contained in:
zilinsoft committed 2024-12-20 08:15:19 +08:00
1 parent 03bcb8c5fd
commit 993f1ca1a9
349 files changed
+81977 -13873

No files matched your search

+28 -6
View File
@@ -42,9 +42,11 @@
this.OlvDesc = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.设置时间戳ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.设置jsonToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.添加参数ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.删除参数ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.复制参数名ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.BtnCancel = new ryControls.ButtonEx();
this.BtnOK = new ryControls.ButtonEx();
this.BtnAddPost = new ryControls.ButtonEx();
@@ -160,9 +162,11 @@
this.LvPostData.UseCompatibleStateImageBehavior = false;
this.LvPostData.View = System.Windows.Forms.View.Details;
this.LvPostData.CellEditFinishing += new BrightIdeasSoftware.CellEditEventHandler(this.LvPostData_CellEditFinishing);
this.LvPostData.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.LvPostData_MouseDoubleClick);
//
// OlvParamName
//
this.OlvParamName.IsEditable = true;
this.OlvParamName.Text = "参数名";
this.OlvParamName.Width = 120;
//
@@ -188,38 +192,54 @@
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.设置时间戳ToolStripMenuItem,
this.设置jsonToolStripMenuItem,
this.toolStripMenuItem1,
this.添加参数ToolStripMenuItem,
this.删除参数ToolStripMenuItem});
this.删除参数ToolStripMenuItem,
this.复制参数名ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(137, 76);
this.contextMenuStrip1.Size = new System.Drawing.Size(149, 120);
//
// 设置时间戳ToolStripMenuItem
//
this.设置时间戳ToolStripMenuItem.Name = "设置时间戳ToolStripMenuItem";
this.设置时间戳ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.设置时间戳ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
this.设置时间戳ToolStripMenuItem.Text = "设置时间戳";
this.设置时间戳ToolStripMenuItem.Click += new System.EventHandler(this.设置时间戳ToolStripMenuItem_Click);
//
// 设置jsonToolStripMenuItem
//
this.设置jsonToolStripMenuItem.Name = "设置jsonToolStripMenuItem";
this.设置jsonToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
this.设置jsonToolStripMenuItem.Text = "设置json文本";
this.设置jsonToolStripMenuItem.Click += new System.EventHandler(this.设置jsonToolStripMenuItem_Click);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(133, 6);
this.toolStripMenuItem1.Size = new System.Drawing.Size(145, 6);
//
// 添加参数ToolStripMenuItem
//
this.添加参数ToolStripMenuItem.Name = "添加参数ToolStripMenuItem";
this.添加参数ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.添加参数ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
this.添加参数ToolStripMenuItem.Text = "添加参数";
this.添加参数ToolStripMenuItem.Click += new System.EventHandler(this.添加参数ToolStripMenuItem_Click);
//
// 删除参数ToolStripMenuItem
//
this.删除参数ToolStripMenuItem.Name = "删除参数ToolStripMenuItem";
this.删除参数ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.删除参数ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
this.删除参数ToolStripMenuItem.Text = "删除参数";
this.删除参数ToolStripMenuItem.Click += new System.EventHandler(this.删除参数ToolStripMenuItem_Click);
//
// 复制参数名ToolStripMenuItem
//
this.复制参数名ToolStripMenuItem.Name = "复制参数名ToolStripMenuItem";
this.复制参数名ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
this.复制参数名ToolStripMenuItem.Text = "复制参数名";
this.复制参数名ToolStripMenuItem.Click += new System.EventHandler(this.复制参数名ToolStripMenuItem_Click);
//
// BtnCancel
//
this.BtnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
@@ -386,5 +406,7 @@
private System.Windows.Forms.ToolStripMenuItem 设置时间戳ToolStripMenuItem;
private System.Windows.Forms.Label label5;
private ryControls.TextBoxEx2 TxtDesc;
private System.Windows.Forms.ToolStripMenuItem 设置jsonToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 复制参数名ToolStripMenuItem;
}
}
@@ -15,6 +15,8 @@ using System.Threading.Tasks;
using System.Windows.Forms;
using 开发辅助工具.Manager;
using 开发辅助工具.Tools;
using SuperDesign.Manager;
using Newtonsoft.Json;
namespace 开发辅助工具.Tools
{
@@ -32,7 +34,15 @@ namespace 开发辅助工具.Tools
{
long time = row.ParamValue.ToInt64();
if (time <= 100000) { return row.ParamValue; }
var dt = time.ToDateTime();
var dt = DateTime.MinValue;
if (row.ParamValue.Length == 13)
{
dt =RyDate.JSTimeToDateTime(time);
}
else
{
dt = time.ToDateTime();
}
if (dt == DateTime.MinValue || dt<=new DateTime(2000,1,1) || dt >= new DateTime(2100, 1, 1)) { return row.ParamValue; }
if (dt == dt.Date) {return dt.ToString("yyyy-MM-dd"); }
return dt.ToString("yyyy-MM-dd HH:mm:ss");
@@ -153,52 +163,7 @@ namespace 开发辅助工具.Tools
}
else
{
switch(item.Key.ToLower())
{
case "starttime":
title = "开始时间";
break;
case "endtime":
title = "结束时间";
break;
case "page":
title = "页码";
break;
case "pagesize":
title = "每页数量";
break;
case "title":
title = "标题";
break;
case "name":
title = "名称";
break;
case "id":
title = "id编号";
break;
case "modelid":
title = "资源类型";
break;
case "packagename":
case "pkgname":
title = "包名";
break;
case "filename":
title = "文件名";
break;
case "url":
title = "网址";
break;
case "username":
title = "用户名";
break;
case "realname":
title = "真实姓名";
break;
case "cooperid":
title = "合作包id";
break;
}
title= APIManager.GetParamTitle(item.Key);
}
list.Add(new PostInfo() { ParamName = item.Key, ParamValue = item.Value,Title=title,Desc=desc });
}
@@ -270,7 +235,7 @@ namespace 开发辅助工具.Tools
}
else
{
post += item.ParamName + "=" +RyWeb.WebDecode.UrlEncode(item.ParamValue);
post += item.ParamName + "=" +RyWeb.WebDecode.UrlEncode(item.ParamValue,Encoding.UTF8);
}
if(dict_post.ContainsKey(item.ParamName))
{
@@ -318,6 +283,10 @@ namespace 开发辅助工具.Tools
{
row.Title = e.NewValue.ToString();
}
else if (e.Column == OlvParamName)
{
row.ParamName = e.NewValue.ToString();
}
else if (e.Column == OlvParamValue)
{
row.ParamValue = e.NewValue.ToString();
@@ -426,15 +395,85 @@ namespace 开发辅助工具.Tools
var text = item.ParamValue;
if (text.Length > 4 && text.IsInt())
{
frm.dateTimePickerEX1.Value = RyDate.UnixTimeToDateTime(text);
if (text.Length == 13)
{
frm.IsJsTime = true;
frm.dateTimePickerEX1.Value = RyDate.JSTimeToDateTime(text);
}
else
{
frm.dateTimePickerEX1.Value = RyDate.UnixTimeToDateTime(text);
}
}
if (frm.ShowDialog() == DialogResult.OK)
{
item.ParamValue= RyDate.DateTimeToUnixTime(frm.dateTimePickerEX1.Value).ToString();
{
if (frm.IsJsTime)
{
item.ParamValue = RyDate.DateTimeToJSTime(frm.dateTimePickerEX1.Value).ToString();
}
else
{
item.ParamValue = RyDate.DateTimeToUnixTime(frm.dateTimePickerEX1.Value).ToString();
}
LvPostData.RefreshObject(item);
}
frm.Dispose();
}
private void LvPostData_MouseDoubleClick(object sender, MouseEventArgs e)
{
设置jsonToolStripMenuItem.PerformClick();
}
private void 设置jsonToolStripMenuItem_Click(object sender, EventArgs e)
{
if (LvPostData.SelectedObject == null) { return; }
var item = (PostInfo)LvPostData.SelectedObject;
try
{
if (item.ParamValue.StartsWith("{") || item.ParamValue.StartsWith("["))
{
JObject jo2 = JObject.Parse(item.ParamValue);
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
{
Icon = Icon
};
frm.highlightEditor1.Visible = true;
frm.richTextBox1.Visible = false;
try
{
frm.highlightEditor1.SetHightlightText(Manager.Json.ConvertJsonString(item.ParamValue), "json");
}
catch
{
frm.highlightEditor1.SetHightlightText(item.ParamValue, "txt");
}
if (frm.ShowDialog() == DialogResult.OK)
{
try
{
JObject jo = (JObject)JsonConvert.DeserializeObject(frm.highlightEditor1.Text);
var aa = Newtonsoft.Json.JsonConvert.SerializeObject(jo, new Newtonsoft.Json.JsonSerializerSettings() { StringEscapeHandling = Newtonsoft.Json.StringEscapeHandling.EscapeNonAscii });
item.ParamValue = aa;
LvPostData.RefreshObject(item);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
}
catch { }
}
private void 复制参数名ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (LvPostData.SelectedObject == null) { return; }
var row = (PostInfo)LvPostData.SelectedObject;
RyFiles.CopyToClip(row.ParamName);
}
}
public class PostInfo
{
@@ -28,15 +28,19 @@
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAddPostParam));
this.LvPostData = new BrightIdeasSoftware.ObjectListView();
this.OlvParamName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvTitle = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvParamValue = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvDesc = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.删除该参数ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.BtnCancel = new ryControls.ButtonEx();
this.BtnOK = new ryControls.ButtonEx();
((System.ComponentModel.ISupportInitialize)(this.LvPostData)).BeginInit();
this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout();
//
// LvPostData
@@ -55,6 +59,7 @@
this.OlvTitle,
this.OlvParamValue,
this.OlvDesc});
this.LvPostData.ContextMenuStrip = this.contextMenuStrip1;
this.LvPostData.Cursor = System.Windows.Forms.Cursors.Default;
this.LvPostData.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.LvPostData.FullRowSelect = true;
@@ -76,7 +81,7 @@
// OlvParamName
//
this.OlvParamName.Text = "参数名";
this.OlvParamName.Width = 100;
this.OlvParamName.Width = 120;
//
// OlvTitle
//
@@ -96,6 +101,20 @@
this.OlvDesc.Text = "备注";
this.OlvDesc.Width = 200;
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.删除该参数ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(181, 48);
//
// 删除该参数ToolStripMenuItem
//
this.删除该参数ToolStripMenuItem.Name = "删除该参数ToolStripMenuItem";
this.删除该参数ToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.删除该参数ToolStripMenuItem.Text = "删除该参数";
this.删除该参数ToolStripMenuItem.Click += new System.EventHandler(this.删除该参数ToolStripMenuItem_Click);
//
// BtnCancel
//
this.BtnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
@@ -133,6 +152,7 @@
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "添加参数";
((System.ComponentModel.ISupportInitialize)(this.LvPostData)).EndInit();
this.contextMenuStrip1.ResumeLayout(false);
this.ResumeLayout(false);
}
@@ -145,5 +165,7 @@
private ryControls.ButtonEx BtnOK;
public BrightIdeasSoftware.ObjectListView LvPostData;
private BrightIdeasSoftware.OLVColumn OlvParamValue;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem 删除该参数ToolStripMenuItem;
}
}
@@ -131,5 +131,44 @@ namespace 开发辅助工具.Tools.API
BtnOK.PerformClick();
}
}
private void 删除该参数ToolStripMenuItem_Click(object sender, EventArgs e)
{
var row = (PostInfo)LvPostData.SelectedObject;
if (row == null) { return; }
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
RyQuickSQL mySQL = new RyQuickSQL("api");
mySQL.AddField("Url", Url);
DataSet ds = db.ReadData("select * from api where Url=@Url", mySQL);
var json_post = "";
if (ds.HaveData())
{
json_post = ds.GetFirstRowData()["Postdata"].ToString();
}
JObject jo;
if (json_post.Length == 0) { jo = new JObject(); }
else { jo = JObject.Parse(json_post); }
if (jo.ContainsKey("list"))
{
JArray jarr = JArray.Parse(jo["list"].ToString());
for (int i = 0; i < jarr.Count; i++)
{
var item = jarr[i];
var param_name = item["paramname"].ToString("");
if(param_name==row.ParamName)
{
jarr.Remove(item);
break;
}
}
jo["list"] = jarr;
}
mySQL.AddField("Postdata", jo.ToString());
db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where Url=@Url", mySQL);
}
db.Free();
}
}
}
@@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>15, 21</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
+8 -2
View File
@@ -69,7 +69,7 @@
// menuRight1
//
this.menuRight1.Name = "menuRight1";
this.menuRight1.Size = new System.Drawing.Size(185, 70);
this.menuRight1.Size = new System.Drawing.Size(185, 92);
this.menuRight1.SourceContent = this;
//
// table1
@@ -87,6 +87,7 @@
this.table1.TabIndex = 16;
this.table1.TableModel = this.tableModel1;
this.table1.Text = "table1";
this.table1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.table1_KeyDown);
//
// columnModel1
//
@@ -118,7 +119,6 @@
//
// tableModel1
//
this.tableModel1.RowHeight = 25;
this.tableModel1.SelectionChanged += new XPTable.Events.SelectionEventHandler(this.TableModel1_SelectionChanged);
//
// label2
@@ -135,7 +135,9 @@
this.TxtType.BackColor = System.Drawing.Color.White;
this.TxtType.EmptyText = "";
this.TxtType.Location = new System.Drawing.Point(47, 397);
this.TxtType.LongTime = 2000;
this.TxtType.MaxLength = 999999999;
this.TxtType.MaxUndoRedoSteps = 50;
this.TxtType.Multiline = false;
this.TxtType.Name = "TxtType";
this.TxtType.OnlyNumeric = false;
@@ -148,6 +150,7 @@
this.TxtType.TabIndex = 18;
this.TxtType.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.TxtType.ToolTip = "";
this.TxtType.WordWrap = true;
//
// label3
//
@@ -163,7 +166,9 @@
this.TxtValue.BackColor = System.Drawing.Color.White;
this.TxtValue.EmptyText = "";
this.TxtValue.Location = new System.Drawing.Point(223, 397);
this.TxtValue.LongTime = 2000;
this.TxtValue.MaxLength = 999999999;
this.TxtValue.MaxUndoRedoSteps = 50;
this.TxtValue.Multiline = false;
this.TxtValue.Name = "TxtValue";
this.TxtValue.OnlyNumeric = false;
@@ -176,6 +181,7 @@
this.TxtValue.TabIndex = 20;
this.TxtValue.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.TxtValue.ToolTip = "";
this.TxtValue.WordWrap = true;
//
// FrmColor
//
+13 -1
View File
@@ -39,7 +39,7 @@ namespace 开发辅助工具.Tools
AddList("RGB颜色值", "rgb(" + color.R + "," + color.G + "," + color.B + ")","");
AddList("RGBA颜色值", "rgba(" + color.R + "," + color.G + "," + color.B + "," + color.A + ")", "HTML5、CSS3常用");
AddList("ARGB颜色值", String.Format("#{0:X2}{1:X2}{2:X2}{3:X2}", color.A, color.R, color.G, color.B), "android常用");
AddList("16进制颜色值", String.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B), "");
AddList("16进制颜色值", String.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B), "HTML5、CSS3常用");
AddList("Delphi颜色值", CSharpColorToDelphiColor(color), "");
AddList("HSL颜色值", "hsl(" + color.GetHue().ToString("0.00") + "," + color.GetSaturation().ToString("0.00%") + "," + (hsl.L / 255m).ToString("0.00%") + ")", "");
AddList("HSV颜色值", "hsv(" + color.GetHue().ToString("0.00") + "," + (hsv.S / 255m).ToString("0.00") + "," + (hsv.V / 255m).ToString("0.00") + ")", "");
@@ -77,5 +77,17 @@ namespace 开发辅助工具.Tools
TxtType.Text = table1.TableModel.Rows[row].Cells[ColTitle.Index].Text;
TxtValue.Text = table1.TableModel.Rows[row].Cells[ColValue.Index].Text;
}
private void table1_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode==Keys.C && e.Control)
{
if (table1.SelectedItems.Length > 0)
{
int row = table1.SelectedItems[0].Index;
RyFiles.CopyToClip(table1.TableModel.Rows[row].Cells[ColValue.Index].Text);
}
}
}
}
}
+2 -4
View File
@@ -238,7 +238,6 @@
this.TxtFromCode.Size = new System.Drawing.Size(926, 174);
this.TxtFromCode.TabIndex = 29;
this.TxtFromCode.Text = "";
this.TxtFromCode.WordWrap = false;
this.TxtFromCode.TextChanged += new System.EventHandler(this.TxtFromCode_TextChanged);
this.TxtFromCode.DoubleClick += new System.EventHandler(this.TxtFromCode_DoubleClick_1);
//
@@ -268,10 +267,9 @@
this.TxtResultCode.Name = "TxtResultCode";
this.TxtResultCode.OnlyInputText = true;
this.TxtResultCode.ReadOnly = true;
this.TxtResultCode.Size = new System.Drawing.Size(926, 204);
this.TxtResultCode.Size = new System.Drawing.Size(926, 273);
this.TxtResultCode.TabIndex = 31;
this.TxtResultCode.Text = "";
this.TxtResultCode.WordWrap = false;
//
// RbBigToSmall
//
@@ -299,7 +297,7 @@
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(950, 450);
this.ClientSize = new System.Drawing.Size(950, 519);
this.Controls.Add(this.RbSmallToBig);
this.Controls.Add(this.RbBigToSmall);
this.Controls.Add(this.TxtResultCode);
@@ -120,6 +120,9 @@
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>43</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
+155
View File
@@ -0,0 +1,155 @@
namespace 开发辅助工具.Tools
{
partial class FrmFileTime
{
/// <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(FrmFileTime));
this.TxtPath = new ryControls.TextBoxEx2();
this.BtnConvert = new ryControls.ButtonEx();
this.BtnBrowser = new ryControls.ButtonEx();
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker();
this.dateTimePicker2 = new System.Windows.Forms.DateTimePicker();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// TxtPath
//
this.TxtPath.BackColor = System.Drawing.Color.White;
this.TxtPath.EmptyText = "";
this.TxtPath.Location = new System.Drawing.Point(45, 117);
this.TxtPath.MaxLength = 999999999;
this.TxtPath.Multiline = false;
this.TxtPath.Name = "TxtPath";
this.TxtPath.OnlyNumeric = false;
this.TxtPath.PasswordChar = '\0';
this.TxtPath.ReadOnly = true;
this.TxtPath.SelectedText = "";
this.TxtPath.SelectionLength = 0;
this.TxtPath.SelectionStart = 0;
this.TxtPath.Size = new System.Drawing.Size(594, 32);
this.TxtPath.TabIndex = 0;
this.TxtPath.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.TxtPath.ToolTip = "";
this.TxtPath.WordWrap = true;
//
// BtnConvert
//
this.BtnConvert.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnConvert.Location = new System.Drawing.Point(247, 291);
this.BtnConvert.Name = "BtnConvert";
this.BtnConvert.Size = new System.Drawing.Size(195, 61);
this.BtnConvert.TabIndex = 1;
this.BtnConvert.Text = "立即修改";
this.BtnConvert.UseVisualStyleBackColor = true;
this.BtnConvert.Click += new System.EventHandler(this.BtnConvert_Click);
//
// BtnBrowser
//
this.BtnBrowser.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnBrowser.Location = new System.Drawing.Point(645, 117);
this.BtnBrowser.Name = "BtnBrowser";
this.BtnBrowser.Size = new System.Drawing.Size(41, 32);
this.BtnBrowser.TabIndex = 3;
this.BtnBrowser.Text = "...";
this.BtnBrowser.UseVisualStyleBackColor = true;
this.BtnBrowser.Click += new System.EventHandler(this.BtnBrowser_Click);
//
// openFileDialog1
//
this.openFileDialog1.Filter = "所有文件|*.*";
//
// dateTimePicker1
//
this.dateTimePicker1.CustomFormat = "yyyy年MM月dd日 HH:mm:ss";
this.dateTimePicker1.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dateTimePicker1.Location = new System.Drawing.Point(137, 166);
this.dateTimePicker1.Name = "dateTimePicker1";
this.dateTimePicker1.Size = new System.Drawing.Size(200, 21);
this.dateTimePicker1.TabIndex = 4;
//
// dateTimePicker2
//
this.dateTimePicker2.CustomFormat = "yyyy年MM月dd日 HH:mm:ss";
this.dateTimePicker2.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
this.dateTimePicker2.Location = new System.Drawing.Point(137, 193);
this.dateTimePicker2.Name = "dateTimePicker2";
this.dateTimePicker2.Size = new System.Drawing.Size(200, 21);
this.dateTimePicker2.TabIndex = 5;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(69, 172);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(53, 12);
this.label1.TabIndex = 6;
this.label1.Text = "创建时间";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(69, 199);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(53, 12);
this.label2.TabIndex = 7;
this.label2.Text = "修改时间";
//
// FrmFileTime
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(744, 533);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Controls.Add(this.dateTimePicker2);
this.Controls.Add(this.dateTimePicker1);
this.Controls.Add(this.BtnBrowser);
this.Controls.Add(this.BtnConvert);
this.Controls.Add(this.TxtPath);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmFileTime";
this.Text = "文件时间修改";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private ryControls.TextBoxEx2 TxtPath;
private ryControls.ButtonEx BtnConvert;
private ryControls.ButtonEx BtnBrowser;
private System.Windows.Forms.OpenFileDialog openFileDialog1;
private System.Windows.Forms.DateTimePicker dateTimePicker1;
private System.Windows.Forms.DateTimePicker dateTimePicker2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
}
}
@@ -0,0 +1,77 @@
using ryCommon;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
namespace 开发辅助工具.Tools
{
public partial class FrmFileTime : DockContent
{
public FrmFileTime()
{
InitializeComponent();
RyFiles.AddDropDrag(TxtPath.Handle).ElevatedDragDrop += FrmImageToIcon_ElevatedDragDrop; ;
}
private void FrmImageToIcon_ElevatedDragDrop(object sender, ElevatedDragDropArgs e)
{
LoadFile(e.Files[0]);
}
private void LoadFile(string path)
{
var dt = RyFiles.GetFileDate(path);
dateTimePicker1.Value = dt.CreateTime;
dateTimePicker2.Value=dt.LastWriteTime;
TxtPath.Text = path;
BtnConvert.Text = "立即修改";
}
private void BtnBrowser_Click(object sender, EventArgs e)
{
if(openFileDialog1.ShowDialog()==DialogResult.OK)
{
LoadFile(openFileDialog1.FileName);
}
}
private void BtnConvert_Click(object sender, EventArgs e)
{
var path = TxtPath.Text;
if (!RyFiles.FileOrDirExist(path)) {
MessageBox.Show("文件不存在", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
BtnConvert.Enabled = false;
//superPictureBox1.Image = icon.ToBitmap();
BtnConvert.Text = "修改成功";
try
{
if(System.IO.File.Exists(path)) {
FileInfo fileInfo = new FileInfo(path);
fileInfo.CreationTime = dateTimePicker1.Value;
fileInfo.LastWriteTime = dateTimePicker2.Value;
}
else if(System.IO.Directory.Exists(path))
{
DirectoryInfo directoryInfo = new DirectoryInfo(path);
directoryInfo.CreationTime = dateTimePicker1.Value;
directoryInfo.LastWriteTime = dateTimePicker2.Value;
}
}
catch
{
BtnConvert.Text = "修改失败";
}
LoadFile(path);
BtnConvert.Enabled = true;
}
}
}
@@ -117,17 +117,21 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="openFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIADCAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAAF5SURBVFhHYxgFhMCEkz9DScUTT313hmqnHEw49fM/KXjZ1d//J576+Z1qjsBm
CT68+sav/zvu/wE64hfQEb/Jc4TT0m+rYBibJfgwyAEPv/4DOwLI/0GWIyCWf/0PwugWEMIwB1DkCGo5
ANkR/cd/uECNJwwodcCx539RMNgRp3+ughpPGFDiAJx4WDogY92b/27TH/43774NpnM2vMOqDoyp7YC8
Te/+S5ZdAlsOwiC2RsP1/51HvmFVT3UH+Mx8BLa0aMt7MD96yQswP3vDWwy1YEzrNBCy4BnYAQkrXmKV
p6kDavZ+/q/bchPsgMLNkBDBwLRyQNfR7/9NOiFpAJQosakBY1o5IHb5S7DloCjAJg/HtHKAw6T7YAdU
7vqIVR6OaZ0ICWJaOSB51av/njMeYZVDwbRyAKw8aNj3Bas8HNMyCloO4Sj9kPGwTQNE4yHrgLJ9PyjC
IIthGGo8YYDsAEox1EjSwCBwwOdQamGokaMAB2BgAABfGBs0y2lIZwAAAABJRU5ErkJggg==
AAABAAEAICAAAAAAIAD+AQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAAG1SURBVFhH7VexSgNBEJ3OylYUbLWwMlraCH5DQBBBGxtL01hZG0jWTZSAnVUg
IHYqWASsbCQI6dNbKChqYbG+3Ux0M3fmLibnCWbgsbtv3u28u50LFxrFnwqjaQXYBPYSwropUYbLdYcT
HJD5BbwYRctcth0gs0KUPEo0x+WdgbuAIHlUuLwzECZIGnUuH8tAPYQbFLEMtMwhzTqNpkWsGyI/CGIY
ULTBEhfgVEDzc8R6AqcscYH1ucj7qMHwmtmncVOmJayrIi8RswcU5Zym9+9EzWnwfmNed1pFUxhXhc5H
X03YE7zHieCb9l23xyj4DoZmIM93HswpunL7a7oIyQ/FQIOvvxS8jyJrWoKPNPAKNHEXT4L/QvuMdwK8
hD0G5RrT53saKOL8pjltH+E2uEehqZoKTWB8F3wQmh64H3Ie/62BLMRjGI94XTMFyuDieczPmLOdPoPx
htfR0HTNtY6ZCzWQRaEFm/Q4i2dssOu0eZpkg2WhiYamAvbvNGyIAU1bGO8/10E0Aftkbj2uP2h643lk
EyaNkYEuA6l/EaX7TWgD3ZneV3EnYCK9/wWj+KdB9AE8n+bbcJtXxQAAAABJRU5ErkJggg==
</value>
</data>
</root>
+103
View File
@@ -0,0 +1,103 @@
namespace SuperDesign.Tools
{
partial class FrmHistoryUrls
{
/// <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.objectListView2 = new BrightIdeasSoftware.ObjectListView();
this.OlvPostData = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvEditTime = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvClickCount = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).BeginInit();
this.SuspendLayout();
//
// objectListView2
//
this.objectListView2.AllColumns.Add(this.OlvPostData);
this.objectListView2.AllColumns.Add(this.OlvEditTime);
this.objectListView2.AllColumns.Add(this.OlvClickCount);
this.objectListView2.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.objectListView2.CellEditUseWholeCell = false;
this.objectListView2.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.OlvPostData,
this.OlvEditTime,
this.OlvClickCount});
this.objectListView2.Cursor = System.Windows.Forms.Cursors.Default;
this.objectListView2.FullRowSelect = true;
this.objectListView2.HideSelection = false;
this.objectListView2.Location = new System.Drawing.Point(12, 12);
this.objectListView2.MultiSelect = false;
this.objectListView2.Name = "objectListView2";
this.objectListView2.ShowItemToolTips = true;
this.objectListView2.Size = new System.Drawing.Size(765, 542);
this.objectListView2.TabIndex = 114;
this.objectListView2.UseCompatibleStateImageBehavior = false;
this.objectListView2.UseHotItem = true;
this.objectListView2.View = System.Windows.Forms.View.Details;
this.objectListView2.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.objectListView2_MouseDoubleClick);
//
// OlvPostData
//
this.OlvPostData.FillsFreeSpace = true;
this.OlvPostData.Text = "名称";
this.OlvPostData.Width = 200;
//
// OlvEditTime
//
this.OlvEditTime.Text = "更新时间";
this.OlvEditTime.Width = 180;
//
// OlvClickCount
//
this.OlvClickCount.Text = "点击量";
this.OlvClickCount.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// FrmHistoryUrls
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(789, 566);
this.Controls.Add(this.objectListView2);
this.Name = "FrmHistoryUrls";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "历史记录";
this.Load += new System.EventHandler(this.FrmHistoryUrls_Load);
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).EndInit();
this.ResumeLayout(false);
}
#endregion
private BrightIdeasSoftware.ObjectListView objectListView2;
private BrightIdeasSoftware.OLVColumn OlvPostData;
private BrightIdeasSoftware.OLVColumn OlvEditTime;
private BrightIdeasSoftware.OLVColumn OlvClickCount;
}
}
@@ -0,0 +1,77 @@
using ryCommon;
using ryCommonDb;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Security.Policy;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using 开发辅助工具.Manager;
namespace SuperDesign.Tools
{
public partial class FrmHistoryUrls : Form
{
public FrmHistoryUrls()
{
InitializeComponent();
OlvPostData.AspectGetter = delegate (object x) { return ((HistoryUrl)x).PostData; };
OlvEditTime.AspectGetter = delegate (object x) {
return ((HistoryUrl)x).EditTimeStr;
};
OlvClickCount.AspectGetter = delegate (object x) { return ((HistoryUrl)x).ClickCount; };
OlvClickCount.AspectToStringConverter = delegate (object row, object x) { return ((HistoryUrl)row).ClickCount+"次"; };
}
class HistoryUrl
{
public int Id { get; set; } = 0;
public string PostData { get; set; } = "";
public string EditTimeStr { get; set; } = "";
public int ClickCount { get; set; } = 0;
}
public void LoadDb(string Url)
{
List<HistoryUrl> list = new List<HistoryUrl>();
IDbInterface db2 = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db2.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
RyQuickSQL mySQL =new RyQuickSQL("HistoryUrl");
mySQL.AddField("Url", Url);
DataSet ds_his = db2.ReadData("select * from HistoryUrl where Url=@Url order by EditTime desc", mySQL);
if (ds_his.HaveData())
{
for (int i = 0; i < ds_his.RowCount(); i++)
{
var row = ds_his.Tables[0].Rows[i];
list.Add(new HistoryUrl()
{
Id = row["Id"].ToInt(),
EditTimeStr = row["editTime"].ToInt64().ToDateTime().ToString(),
PostData = row["Postdata"].ToString(),
ClickCount = row["ClickCount"].ToInt(),
}) ;
}
}
ds_his?.Dispose();
}
db2.Free();
objectListView2.AddObjects(list);
}
private void FrmHistoryUrls_Load(object sender, EventArgs e)
{
}
public int SelectedId { get; set; } = 0;
private void objectListView2_MouseDoubleClick(object sender, MouseEventArgs e)
{
var row = (HistoryUrl)objectListView2.SelectedObject;
if (row == null) { return; }
SelectedId = row.Id;
DialogResult = DialogResult.OK;
}
}
}
@@ -34,6 +34,10 @@
this.superPictureBox1 = new ryControls.SuperPictureBox();
this.BtnBrowser = new ryControls.ButtonEx();
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
this.radioButton1 = new System.Windows.Forms.RadioButton();
this.RbSize32 = new System.Windows.Forms.RadioButton();
this.RbSize128 = new System.Windows.Forms.RadioButton();
this.RbSize256 = new System.Windows.Forms.RadioButton();
((System.ComponentModel.ISupportInitialize)(this.superPictureBox1)).BeginInit();
this.SuspendLayout();
//
@@ -94,11 +98,57 @@
//
this.openFileDialog1.Filter = "图片文件|*.png;*.jpg;*.bmp;*.jpeg";
//
// radioButton1
//
this.radioButton1.AutoSize = true;
this.radioButton1.Checked = true;
this.radioButton1.Location = new System.Drawing.Point(43, 164);
this.radioButton1.Name = "radioButton1";
this.radioButton1.Size = new System.Drawing.Size(47, 16);
this.radioButton1.TabIndex = 4;
this.radioButton1.TabStop = true;
this.radioButton1.Text = "原图";
this.radioButton1.UseVisualStyleBackColor = true;
//
// RbSize32
//
this.RbSize32.AutoSize = true;
this.RbSize32.Location = new System.Drawing.Point(112, 164);
this.RbSize32.Name = "RbSize32";
this.RbSize32.Size = new System.Drawing.Size(53, 16);
this.RbSize32.TabIndex = 5;
this.RbSize32.Text = "32*32";
this.RbSize32.UseVisualStyleBackColor = true;
//
// RbSize128
//
this.RbSize128.AutoSize = true;
this.RbSize128.Location = new System.Drawing.Point(187, 164);
this.RbSize128.Name = "RbSize128";
this.RbSize128.Size = new System.Drawing.Size(65, 16);
this.RbSize128.TabIndex = 6;
this.RbSize128.Text = "128*128";
this.RbSize128.UseVisualStyleBackColor = true;
//
// RbSize256
//
this.RbSize256.AutoSize = true;
this.RbSize256.Location = new System.Drawing.Point(274, 164);
this.RbSize256.Name = "RbSize256";
this.RbSize256.Size = new System.Drawing.Size(65, 16);
this.RbSize256.TabIndex = 7;
this.RbSize256.Text = "256*256";
this.RbSize256.UseVisualStyleBackColor = true;
//
// FrmImageToIcon
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(744, 533);
this.Controls.Add(this.RbSize256);
this.Controls.Add(this.RbSize128);
this.Controls.Add(this.RbSize32);
this.Controls.Add(this.radioButton1);
this.Controls.Add(this.BtnBrowser);
this.Controls.Add(this.superPictureBox1);
this.Controls.Add(this.BtnConvert);
@@ -108,6 +158,7 @@
this.Text = "图片转Icon";
((System.ComponentModel.ISupportInitialize)(this.superPictureBox1)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
@@ -118,5 +169,9 @@
private ryControls.SuperPictureBox superPictureBox1;
private ryControls.ButtonEx BtnBrowser;
private System.Windows.Forms.OpenFileDialog openFileDialog1;
private System.Windows.Forms.RadioButton radioButton1;
private System.Windows.Forms.RadioButton RbSize32;
private System.Windows.Forms.RadioButton RbSize128;
private System.Windows.Forms.RadioButton RbSize256;
}
}
@@ -1,4 +1,5 @@
using ryCommon;
using HttpUpload.Core;
using ryCommon;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -28,7 +29,30 @@ namespace 开发辅助工具.Tools
private void LoadImage(string path)
{
superPictureBox1.Image = RyImage.LoadPic(path);
var ext = HttpUpload.Core.ImgExt.CheckImgFile(path);
Image img = null;
if (ext == HttpUpload.Core.FileExtension.WebP)
{
try
{
var stream = HttpUpload.Core.ImgExt.FileToStream(path);
byte[] array = new byte[stream.Length];
stream.Seek(0L, SeekOrigin.Begin);
stream.Read(array, 0, array.Length);
if (array.Length > 3)
{
using (WebPWrapper.WebP webP = new WebPWrapper.WebP())
{
var bitmap = webP.Decode(array);
img = bitmap;
}
}
}
catch { img = null; }
}
else
{ img = RyImage.LoadPic(path); }
superPictureBox1.Image = img;
TxtImagePath.Text = path;
BtnConvert.Text = "立即转换";
}
@@ -43,14 +67,52 @@ namespace 开发辅助工具.Tools
private void BtnConvert_Click(object sender, EventArgs e)
{
var path = TxtImagePath.Text;
var icon= RyImage.ConvertToIcon(RyImage.LoadPic(path), true);
var ext = HttpUpload.Core.ImgExt.CheckImgFile(path);
Image img = RyImage.LoadPic(path);
if(ext== HttpUpload.Core.FileExtension.WebP)
{
try
{
var stream = HttpUpload.Core.ImgExt.FileToStream(path);
byte[] array = new byte[stream.Length];
stream.Seek(0L, SeekOrigin.Begin);
stream.Read(array, 0, array.Length);
if (array.Length > 3)
{
using (WebPWrapper.WebP webP = new WebPWrapper.WebP())
{
var bitmap = webP.Decode(array);
img = bitmap;
}
}
}
catch { img = null; }
}
if (img == null) {
MessageBox.Show("无效的图片", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
if (RbSize32.Checked)
{
img = img.ReSize(32,32, ResizeMode.HeightFirst);
}
else if (RbSize128.Checked)
{
img = img.ReSize(128, 128, ResizeMode.HeightFirst);
}
else if (RbSize256.Checked)
{
img = img.ReSize(256, 256, ResizeMode.HeightFirst);
}
BtnConvert.Enabled = false;
var icon= RyImage.ConvertToIcon(img, true);
if (icon == null)
{
superPictureBox1.Image = null;
BtnConvert.Text = "转换失败";
BtnConvert.Enabled = true;
return;
}
BtnConvert.Enabled = false;
//superPictureBox1.Image = icon.ToBitmap();
BtnConvert.Text = "转换成功";
var icon_path = System.IO.Path.GetDirectoryName(path) + "\\"+System.IO.Path.GetFileNameWithoutExtension(path) + ".ico";
+206 -24
View File
@@ -31,6 +31,8 @@
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmJson));
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.highlightEditor1 = new ScintillaNETV2.Highlight.HighlightEditor();
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
this.treeView1 = new System.Windows.Forms.TreeView();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.复制键名ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -38,17 +40,30 @@
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.展开ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.折叠ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.TxtValue = new ryControls.Controls.RichTextBox2();
this.BtnApply = new System.Windows.Forms.Button();
this.label3 = new System.Windows.Forms.Label();
this.TxtName = new ryControls.TextBoxEx2();
this.label2 = new System.Windows.Forms.Label();
this.CbbType = new ryControls.RyComboBox();
this.label1 = new System.Windows.Forms.Label();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.BtnSave = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.BtnFormat = new System.Windows.Forms.ToolStripButton();
this.BtnPasteJson = new System.Windows.Forms.ToolStripButton();
this.BtnCopyJson = new System.Windows.Forms.ToolStripButton();
this.CopyJsonByCHS = new System.Windows.Forms.ToolStripButton();
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.highlightEditor1 = new ryControls.HighlightEditor();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
this.splitContainer1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
this.splitContainer2.Panel1.SuspendLayout();
this.splitContainer2.Panel2.SuspendLayout();
this.splitContainer2.SuspendLayout();
this.contextMenuStrip1.SuspendLayout();
this.toolStrip1.SuspendLayout();
this.SuspendLayout();
@@ -65,11 +80,51 @@
//
// splitContainer1.Panel2
//
this.splitContainer1.Panel2.Controls.Add(this.treeView1);
this.splitContainer1.Size = new System.Drawing.Size(800, 491);
this.splitContainer1.SplitterDistance = 400;
this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
this.splitContainer1.Size = new System.Drawing.Size(1035, 581);
this.splitContainer1.SplitterDistance = 517;
this.splitContainer1.TabIndex = 0;
//
// highlightEditor1
//
this.highlightEditor1.AutoMark = true;
this.highlightEditor1.CurHighliteLang = VPKSoft2.ScintillaLexers.LexerEnumerations.LexerType.Text;
this.highlightEditor1.Dock = System.Windows.Forms.DockStyle.Fill;
this.highlightEditor1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.highlightEditor1.LineNumberOn = true;
this.highlightEditor1.Location = new System.Drawing.Point(0, 0);
this.highlightEditor1.Name = "highlightEditor1";
this.highlightEditor1.ReadOnly = false;
this.highlightEditor1.SelectedText = "";
this.highlightEditor1.Size = new System.Drawing.Size(517, 581);
this.highlightEditor1.TabIndex = 0;
this.highlightEditor1.UseCustomGotoLine = false;
this.highlightEditor1.UseCustomShowFindReplace = false;
//
// splitContainer2
//
this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
this.splitContainer2.Location = new System.Drawing.Point(0, 0);
this.splitContainer2.Name = "splitContainer2";
//
// splitContainer2.Panel1
//
this.splitContainer2.Panel1.Controls.Add(this.treeView1);
//
// splitContainer2.Panel2
//
this.splitContainer2.Panel2.Controls.Add(this.TxtValue);
this.splitContainer2.Panel2.Controls.Add(this.BtnApply);
this.splitContainer2.Panel2.Controls.Add(this.label3);
this.splitContainer2.Panel2.Controls.Add(this.TxtName);
this.splitContainer2.Panel2.Controls.Add(this.label2);
this.splitContainer2.Panel2.Controls.Add(this.CbbType);
this.splitContainer2.Panel2.Controls.Add(this.label1);
this.splitContainer2.Size = new System.Drawing.Size(514, 581);
this.splitContainer2.SplitterDistance = 250;
this.splitContainer2.TabIndex = 1;
//
// treeView1
//
this.treeView1.ContextMenuStrip = this.contextMenuStrip1;
@@ -77,11 +132,15 @@
this.treeView1.FullRowSelect = true;
this.treeView1.HideSelection = false;
this.treeView1.HotTracking = true;
this.treeView1.ItemHeight = 20;
this.treeView1.ImageIndex = 0;
this.treeView1.ImageList = this.imageList1;
this.treeView1.ItemHeight = 25;
this.treeView1.Location = new System.Drawing.Point(0, 0);
this.treeView1.Name = "treeView1";
this.treeView1.Size = new System.Drawing.Size(396, 491);
this.treeView1.SelectedImageIndex = 0;
this.treeView1.Size = new System.Drawing.Size(250, 581);
this.treeView1.TabIndex = 0;
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
this.treeView1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.TreeView1_MouseDown);
//
// contextMenuStrip1
@@ -128,46 +187,161 @@
this.折叠ToolStripMenuItem.Text = "折叠";
this.折叠ToolStripMenuItem.Click += new System.EventHandler(this.折叠ToolStripMenuItem_Click);
//
// imageList1
//
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
this.imageList1.Images.SetKeyName(0, "normal");
this.imageList1.Images.SetKeyName(1, "float");
this.imageList1.Images.SetKeyName(2, "int");
this.imageList1.Images.SetKeyName(3, "string");
this.imageList1.Images.SetKeyName(4, "array");
//
// TxtValue
//
this.TxtValue.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TxtValue.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtValue.DetectUrls = false;
this.TxtValue.EmptyText = "请填写值";
this.TxtValue.Font = new System.Drawing.Font("Courier New", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxtValue.ForeColor = System.Drawing.Color.Black;
this.TxtValue.Location = new System.Drawing.Point(6, 115);
this.TxtValue.Name = "TxtValue";
this.TxtValue.OnlyInputText = true;
this.TxtValue.Size = new System.Drawing.Size(248, 405);
this.TxtValue.TabIndex = 144;
this.TxtValue.Text = "";
this.TxtValue.WordWrap = true;
//
// BtnApply
//
this.BtnApply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.BtnApply.Location = new System.Drawing.Point(179, 526);
this.BtnApply.Name = "BtnApply";
this.BtnApply.Size = new System.Drawing.Size(75, 31);
this.BtnApply.TabIndex = 142;
this.BtnApply.Text = "应用";
this.BtnApply.UseVisualStyleBackColor = true;
this.BtnApply.Click += new System.EventHandler(this.BtnApply_Click);
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(7, 100);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(17, 12);
this.label3.TabIndex = 140;
this.label3.Text = "值";
//
// TxtName
//
this.TxtName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TxtName.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
this.TxtName.EmptyText = "";
this.TxtName.Location = new System.Drawing.Point(6, 67);
this.TxtName.MaxLength = 999999999;
this.TxtName.Multiline = false;
this.TxtName.Name = "TxtName";
this.TxtName.OnlyNumeric = false;
this.TxtName.PasswordChar = '\0';
this.TxtName.ReadOnly = false;
this.TxtName.SelectedText = "";
this.TxtName.SelectionLength = 0;
this.TxtName.SelectionStart = 0;
this.TxtName.Size = new System.Drawing.Size(248, 28);
this.TxtName.TabIndex = 139;
this.TxtName.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.TxtName.ToolTip = "";
this.TxtName.WordWrap = true;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(7, 52);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(29, 12);
this.label2.TabIndex = 138;
this.label2.Text = "名称";
//
// CbbType
//
this.CbbType.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.CbbType.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.CbbType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CbbType.Enabled = false;
this.CbbType.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CbbType.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbType.FormattingEnabled = true;
this.CbbType.Location = new System.Drawing.Point(6, 21);
this.CbbType.Name = "CbbType";
this.CbbType.Size = new System.Drawing.Size(248, 27);
this.CbbType.TabIndex = 137;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(7, 6);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(29, 12);
this.label1.TabIndex = 0;
this.label1.Text = "类型";
//
// toolStrip1
//
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.BtnSave,
this.toolStripSeparator1,
this.BtnFormat,
this.BtnPasteJson,
this.BtnCopyJson,
this.CopyJsonByCHS});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(800, 25);
this.toolStrip1.Size = new System.Drawing.Size(1035, 25);
this.toolStrip1.TabIndex = 2;
this.toolStrip1.Text = "toolStrip1";
//
// BtnSave
//
this.BtnSave.Image = ((System.Drawing.Image)(resources.GetObject("BtnSave.Image")));
this.BtnSave.ImageTransparentColor = System.Drawing.Color.Magenta;
this.BtnSave.Name = "BtnSave";
this.BtnSave.Size = new System.Drawing.Size(52, 22);
this.BtnSave.Text = "保存";
this.BtnSave.Click += new System.EventHandler(this.BtnSave_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
//
// BtnFormat
//
this.BtnFormat.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.BtnFormat.Image = ((System.Drawing.Image)(resources.GetObject("BtnFormat.Image")));
this.BtnFormat.ImageTransparentColor = System.Drawing.Color.Magenta;
this.BtnFormat.Name = "BtnFormat";
this.BtnFormat.Size = new System.Drawing.Size(48, 22);
this.BtnFormat.Size = new System.Drawing.Size(64, 22);
this.BtnFormat.Text = "格式化";
this.BtnFormat.Click += new System.EventHandler(this.BtnFormat_Click);
//
// BtnPasteJson
//
this.BtnPasteJson.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.BtnPasteJson.Image = ((System.Drawing.Image)(resources.GetObject("BtnPasteJson.Image")));
this.BtnPasteJson.ImageTransparentColor = System.Drawing.Color.Magenta;
this.BtnPasteJson.Name = "BtnPasteJson";
this.BtnPasteJson.Size = new System.Drawing.Size(62, 22);
this.BtnPasteJson.Size = new System.Drawing.Size(78, 22);
this.BtnPasteJson.Text = "粘贴Json";
this.BtnPasteJson.Click += new System.EventHandler(this.BtnPasteJson_Click);
//
// BtnCopyJson
//
this.BtnCopyJson.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
this.BtnCopyJson.Image = ((System.Drawing.Image)(resources.GetObject("BtnCopyJson.Image")));
this.BtnCopyJson.ImageTransparentColor = System.Drawing.Color.Magenta;
this.BtnCopyJson.Name = "BtnCopyJson";
this.BtnCopyJson.Size = new System.Drawing.Size(62, 22);
this.BtnCopyJson.Size = new System.Drawing.Size(78, 22);
this.BtnCopyJson.Text = "复制Json";
this.BtnCopyJson.Click += new System.EventHandler(this.BtnCopyJson_Click);
//
@@ -187,19 +361,11 @@
this.menuRight1.Size = new System.Drawing.Size(185, 92);
this.menuRight1.SourceContent = this;
//
// highlightEditor1
//
this.highlightEditor1.Dock = System.Windows.Forms.DockStyle.Fill;
this.highlightEditor1.Location = new System.Drawing.Point(0, 0);
this.highlightEditor1.Name = "highlightEditor1";
this.highlightEditor1.Size = new System.Drawing.Size(400, 491);
this.highlightEditor1.TabIndex = 0;
//
// FrmJson
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 516);
this.ClientSize = new System.Drawing.Size(1035, 606);
this.Controls.Add(this.splitContainer1);
this.Controls.Add(this.toolStrip1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
@@ -211,6 +377,11 @@
this.splitContainer1.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
this.splitContainer1.ResumeLayout(false);
this.splitContainer2.Panel1.ResumeLayout(false);
this.splitContainer2.Panel2.ResumeLayout(false);
this.splitContainer2.Panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
this.splitContainer2.ResumeLayout(false);
this.contextMenuStrip1.ResumeLayout(false);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
@@ -230,11 +401,22 @@
private System.Windows.Forms.ToolStripButton BtnFormat;
private System.Windows.Forms.ToolStripButton BtnPasteJson;
private System.Windows.Forms.ToolStripButton BtnCopyJson;
private ryPaiban.Model.MenuRight menuRight1;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem 展开ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 折叠ToolStripMenuItem;
private System.Windows.Forms.ToolStripButton CopyJsonByCHS;
private ryControls.HighlightEditor highlightEditor1;
private System.Windows.Forms.SplitContainer splitContainer2;
public ryControls.RyComboBox CbbType;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private ryControls.TextBoxEx2 TxtName;
private System.Windows.Forms.Button BtnApply;
public System.Windows.Forms.ToolStripButton BtnSave;
public System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
public ScintillaNETV2.Highlight.HighlightEditor highlightEditor1;
private System.Windows.Forms.ImageList imageList1;
public ryPaiban.Model.MenuRight menuRight1;
private ryControls.Controls.RichTextBox2 TxtValue;
}
}
+282 -6
View File
@@ -1,5 +1,6 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using ryCommon;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -18,6 +19,8 @@ namespace 开发辅助工具.Tools
public FrmJson()
{
InitializeComponent();
BtnSave.Visible = false;
toolStripSeparator1.Visible = false;
}
private void LoadTreeList(TreeNodeCollection nodes,JObject jo)
{
@@ -36,6 +39,8 @@ namespace 开发辅助工具.Tools
{
var node1 = node.Nodes.Add(i.ToString());
node.Tag = new JsonInfo() { name = item.Key.ToString(), value = item.Value.ToString() };
node.ImageKey = "array";
node.SelectedImageKey = "array";
LoadTreeList(node1.Nodes, (JObject)JsonConvert.DeserializeObject(jar[i].ToString()));
//TreeNode new_child = new TreeNode();
//new_child.Text = jar[i].ToString();
@@ -65,10 +70,11 @@ namespace 开发辅助工具.Tools
}
}
}
private void Format(string text)
public void Format(string text)
{
string json_text = text;
treeView1.Nodes.Clear();
var max_nodes_count = 0;
//if (Manager.Json.IsJson(json_text))
{
try
@@ -79,6 +85,9 @@ namespace 开发辅助工具.Tools
if (Manager.Json.IsArray(json_text))
{
var node2 = treeView1.Nodes.Add("0");
node2.Tag = new JsonInfo() { name = "0", value = "", JsonType= JTokenType.Array };
node2.ImageKey = "array";
node2.SelectedImageKey = "array";
JArray jar = JArray.Parse(json_text);
ScanArray(node2.Nodes, jar);
}
@@ -95,23 +104,30 @@ namespace 开发辅助工具.Tools
if (item.Value.Type == JTokenType.Array)
{
var node2 = nodes.Add(item.Name);
node2.Tag = new JsonInfo() { name = item.Name, value = item.Value.ToString() };
node2.Tag = new JsonInfo() { Property = item, name = item.Name, value = item.Value.ToString(), JsonType= JTokenType.Array };
node2.ImageKey = "array";
node2.SelectedImageKey = "array";
JArray jar = JArray.Parse(item.Value.ToString());
ScanArray(node2.Nodes, jar);
}
else if (item.Value.Type == JTokenType.Object)
{
var node2 = nodes.Add(item.Name);
node2.Tag = new JsonInfo() { name = item.Name, value = item.Value.ToString() };
var tag_json= new JsonInfo() { Property = item, name = item.Name, value = item.Value.ToString(), JsonType = JTokenType.Object };
node2.Tag = tag_json;
node2.ImageKey = node2.SelectedImageKey= tag_json.ImageKey;
Scan(node2.Nodes, (JObject)JsonConvert.DeserializeObject(item.Value.ToString()));
}
else
{
var node = nodes.Add(item.Name + ":" + item.Value + "|" + item.Value.Type.ToString());
node.Tag = new JsonInfo() { name = item.Name, value = item.Value.ToString() };
var tag_json = new JsonInfo() { Property = item, name = item.Name, value = item.Value.ToString(), JsonType = item.Value.Type };
node.Tag = tag_json;
node.ImageKey = node.SelectedImageKey = tag_json.ImageKey;
}
//Console.WriteLine(item.Name + ":" + item.Value);
}
if(nodes.Count> max_nodes_count && treeView1.Nodes!= nodes) { max_nodes_count = nodes.Count; }
//var values = _jo.Values<JProperty>();
//foreach (var item in values)
//{
@@ -128,16 +144,19 @@ namespace 开发辅助工具.Tools
for (int i = 0; i < jar.Count; i++)
{
var node3 = nodes.Add(i.ToString());
node3.Tag = new JsonInfo() { name = i.ToString(), value = "", JsonType = JTokenType.Array };
node3.ImageKey = "array";
node3.SelectedImageKey= "array";
if (jar[i].Type == JTokenType.Object)
{
Scan(node3.Nodes, (JObject)jar[i]);
}
else
{
node3.Nodes.Add(jar[i].ToString());
node3.Tag = new JsonInfo() { name = jar[i].ToString() };
node3.Nodes.Add(jar[i].ToString()).Tag = new JsonInfo() {IsNoValue=true, Property = new JProperty(jar[i].ToString(),null), name = jar[i].ToString(), value = "", JsonType = jar[i].Type };
}
}
if (nodes.Count > max_nodes_count && treeView1.Nodes != nodes) { max_nodes_count = nodes.Count; }
}
}
//if (Manager.Json.IsArray(json_text))
@@ -170,6 +189,13 @@ namespace 开发辅助工具.Tools
MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
if (max_nodes_count < 5)
{ treeView1.ExpandAll(); }
else
{
if (treeView1.Nodes.Count > 0)
treeView1.Nodes[0].Expand();
}
//else
//{
// MessageBox.Show("无效的Json内容", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
@@ -191,6 +217,7 @@ namespace 开发辅助工具.Tools
{
if (treeView1.SelectedNode == null) { return; }
JsonInfo item = (JsonInfo)treeView1.SelectedNode.Tag;
if(item == null ) { return; }
ryCommon.RyFiles.CopyToClip(item.name);
}
@@ -214,6 +241,11 @@ namespace 开发辅助工具.Tools
private void FrmJson_Load(object sender, EventArgs e)
{
foreach (JTokenType day in Enum.GetValues(typeof(JTokenType)))
{
CbbType.Items.Add(day);
}
CbbType.SelectedIndex = 0;
}
private void TreeView1_MouseDown(object sender, MouseEventArgs e)
@@ -251,10 +283,254 @@ namespace 开发辅助工具.Tools
MessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if(e.Node==null)
{
CbbType.SelectedIndex = 0;
TxtName.Text = "";
TxtValue.Text = "";
BtnApply.Enabled = false;
return;
}
var item = (JsonInfo)e.Node.Tag;
if (item == null) { BtnApply.Enabled = false; return; }
CbbType.SelectedItem = item.JsonType;
TxtName.Text = item.name;
TxtValue.Text = item.value;
if(item.JsonType== JTokenType.Object || item.JsonType== JTokenType.Array)
{
BtnApply.Enabled = false;
}
else
{
BtnApply.Enabled = true;
}
}
private void ConvertTreeToJson()
{
JArray jarr= new JArray();
JObject jo = new JObject();
jo=Scan(treeView1.Nodes);
if (treeView1.Nodes.Count == 1 && treeView1.Nodes[0].Tag is JsonInfo ji2 && ji2.JsonType == JTokenType.Array && ji2.name == "0")
{
highlightEditor1.Text = jo.GetJsonValue("0","");
}
else
{
highlightEditor1.Text = jo.ToString();
}
JObject Scan(TreeNodeCollection nodes)
{
var jo_result=new JObject();
for (int i = 0; i < nodes.Count; i++)
{
var item = (JsonInfo)nodes[i].Tag;
switch (item.JsonType)
{
case JTokenType.Array:
var kk = ScanArray(nodes[i].Nodes);
jo_result.Add(item.name,kk);
break;
case JTokenType.Object:
jo_result.Add(new JProperty(item.name, Scan(nodes[i].Nodes)));
break;
case JTokenType.Integer:
jo_result.Add(item.Property.Name,item.Property.Value.ToInt64());
break;
case JTokenType.Boolean:
jo_result.Add(item.Property.Name, item.Property.Value.ToBool());
break;
case JTokenType.Float:
jo_result.Add(item.Property.Name, item.Property.Value.ToDouble());
break;
case JTokenType.Date:
jo_result.Add(item.Property.Name, item.Property.Value.ToDateTime());
break;
case JTokenType.String:
jo_result.Add(item.Property.Name, item.Property.Value.ToString());
break;
case JTokenType.Null:
jo_result.Add(item.Property.Name,null);
break;
default:
jo_result.Add(item.Property);
break;
}
}
return jo_result;
}
JArray ScanArray(TreeNodeCollection nodes)
{
JArray jarr_result = new JArray();
for (int i = 0; i < nodes.Count; i++)
{
var item = (JsonInfo)nodes[i].Tag;
switch (item.JsonType)
{
case JTokenType.Array:
if (item.Property == null)
{
if (nodes[i].Nodes[0].Tag is JsonInfo ji && ji.IsNoValue)
{
switch(ji.JsonType)
{
case JTokenType.Integer:
jarr_result.Add(ji.Property.Name.ToInt64());
break;
case JTokenType.Boolean:
jarr_result.Add(ji.Property.Name.ToBool());
break;
case JTokenType.Float:
jarr_result.Add(ji.Property.Name.ToDouble());
break;
default:
jarr_result.Add(ji.Property.Name);
break;
}
}
else
jarr_result.Add(Scan(nodes[i].Nodes));
}
else
{
//jarr_result.Add(Scan(nodes[i].Nodes));
}
break;
case JTokenType.Object:
break;
default:
if (item.IsNoValue)
{
jarr_result.Add(item.Property.Name);
}
else
{
jarr_result.Add(new JObject(item.Property));
}
break;
}
}
return jarr_result;
}
}
private void BtnApply_Click(object sender, EventArgs e)
{
var node = treeView1.SelectedNode;
if (node == null) { return; }
var item = (JsonInfo)node.Tag;
if (item.Property == null) { return; }
if(item.IsNoValue && TxtValue.Text.Length>0)
{
item.IsNoValue = false;
}
switch(item.JsonType)
{
case JTokenType.Array:
MessageBox.Show("不支持修改Array", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
case JTokenType.Object:
MessageBox.Show("不支持修改Object", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
case JTokenType.Float:
item.Property.Value = TxtValue.Text.ToDouble();
break;
case JTokenType.Boolean:
item.Property.Value = TxtValue.Text.ToBool();
break;
case JTokenType.Integer:
item.Property.Value = TxtValue.Text.ToInt64();
break;
case JTokenType.Date:
item.Property.Value = TxtValue.Text.ToDateTime();
break;
case JTokenType.Null:
if (TxtValue.Text.Length > 0)
{
if (TxtValue.Text.IsInt())
{
item.Property.Value = TxtValue.Text.ToInt64();
item.JsonType = JTokenType.Integer;
}
else if (TxtValue.Text.IsDouble())
{
item.Property.Value = TxtValue.Text.ToDouble();
item.JsonType = JTokenType.Float;
}
else if (TxtValue.Text.IsBool())
{
item.Property.Value = TxtValue.Text.ToBool();
item.JsonType = JTokenType.Boolean;
}
else
{
item.Property.Value = TxtValue.Text;
item.JsonType = JTokenType.String;
}
}
else
{
//item.Property.Value = TxtValue.Text.ToDateTime();
}
break;
default:
item.Property.Value = TxtValue.Text;
break;
}
item.value = TxtValue.Text;
node.Text = item.ToString();
ConvertTreeToJson();
}
private void BtnSave_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.OK;
}
}
public enum JsonType
{
JArray=0,
JObject=1,
String=2,
Int=3,
Double=4
}
public class JsonInfo
{
public string name = "";
public string value = "";
public bool IsNoValue = false;
public JProperty Property = null;
public JTokenType JsonType = JTokenType.None;
public override string ToString()
{
if(JsonType== JTokenType.Array || JsonType== JTokenType.Object)
{
return name;
}
else
{
return name + ":" + value + "|" + JsonType.ToString();
}
}
public string ImageKey
{
get
{
switch(JsonType)
{
case JTokenType.String:
return "string";
case JTokenType.Integer:
return "int";
case JTokenType.Float:
return "float";
case JTokenType.Array:
return "array";
}
return "normal";
}
}
}
}
+111 -36
View File
@@ -118,55 +118,130 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>262, 17</value>
<value>146, 20</value>
</metadata>
<metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>-5, 23</value>
</metadata>
<data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABY
DwAAAk1TRnQBSQFMAgEBBQEAAVABAAFQAQABFAEAARQBAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFQ
AwABKAMAAQEBAAEgBgABMv8A/wCcAAMMAQ8DPgFrA08BmQNPAZkDTgGVAzMBUBAAAyABLgNKAYoDTwGZ
A08BmQNHAYIDEgEX/wABAAMTARoDVgGzAwAB/wNdAcwDXAHLA0MBdhAAAyYBOANWAbIDXQHMAwAB/wNc
AdkDGwEm/wABAAMTARoDVgGzAwAB/ysAAf8DXAHZAxsBJv8AAQADEwEaA1YBswMAAf8rAAH/A1wB2QMb
ASb/AAEAAxMBGgNWAbMDAAH/KwAB/wNcAdkDGwEm/wABAAMTARoDVgGzAwAB/ysAAf8DXAHZAxsBJv8A
AQADEwEaA1YBswMAAf8rAAH/A1wB2QMbASb/AAEAAxMBGgNWAbMDAAH/KwAB/wNcAdkDGwEm/wABAAMT
ARoDVgGzAwAB/ysAAf8DXAHZAxsBJv8AAQADEwEaA1YBswMAAf8rAAH/A1wB2QMbASb/AAEAAxMBGgNW
AbMDAAH/KwAB/wNcAdkDGwEm/wABAAMTARoDVgGzAwAB/ysAAf8DXAHZAxsBJv8AAQADEwEaA1YBswMA
Af8rAAH/A1wB2QMbASb/AAEAAxMBGgNWAbMDAAH/AxsBJgMbASUDDwETEAADCgENAxoBJAMbASYDAAH/
A1wB2QMbASb/AAEAAxMBGgNWAbMDAAH/A1wB2QNdAdIDQAFvEAADLQFFA1oBxwNcAdkDAAH/A1wB2QMb
ASb/AAEAAwgBCgMuAUcDPAFmAzwBZgM7AWMDJQE2EAADFwEfAzgBXAM8AWYDPAFmAzYBVwMMAQ//AP8A
/wCbAAMIAQoDWQG8A20B5wMKAQ3/ADEAAwwBEANhAdEDmQH/AxEBFv8AMQADDAEQA2EB0QOZAf8DEQEW
/wAxAAMPARMDXwHSA5kB/wMTARl0AAMpAT0DPAFmAzwBZgM8AWYDPAFmAzwBZgM8AWYDPAFmAzwBZgM8
AWYDPAFmAzwBZgM8AWYDPAFmAzwBZgM8AWYDPAFmAy4BRwMIAQp0AAMqAT8DMgFPeAADTwSZAf8DmQH/
A5kB/wOZAf8DmQH/A5kB/wOZAf8DmQH/A5kB/wOZAf8DmQH/A5kB/wOZAf8DmQH/A5kB/wOZAf8DVwGy
AxMBGXAAAwYBCAMYASEDIAEtAw8BFCgAAyMBMwNRAZ4DQgF1BAADFwEfAzYBVwM8AWYDPAFmAzwBZgM4
AV0DGQEiBAADKwFCAzEBTQMaASQUAAMEAQUDDwEUAw8BFAMKAQ0DDwETAw8BEwMPARMDDwETAw8BEwMI
AQoEAAMDAQQDDQERAxMBGQMIAQoQAAMZASIDGwElAwsBDgQBAxgBIAMdASkDDgESAwIBAwgAAwwBDwMM
AQ8IAAMKAQ0DDwEUKAADDAEPAzwBZANWAasDWQG5A1ABmwMbASYkAAMdASkDTgGUA0IBdQQAA0oBigNX
AeYDXQHPA1EB7QNIAfIDXAHiAzkBXwQAA0YBfwMAAf8DMQFNFAADFwEfA0sBigNJAYUDMQFNA1IBoANS
AaADUgGgA1IBoANSAaADKgFAAxUBHAM5AV0DTgGYA1cBsgNJAYUDMQFNAwwBDwgAAlkBVwG5AmMBXwHV
A0kBiAMRARYDVQGsAWsBZgFfAeACUAFPAZsDIQEwCAADKwFCAkwBSwGPAxoBJAQAAxsBJgNSAaADKgFA
AwgBChwAAwkBDANAAW8DWgG3AzYBVwMjATMDUQGcA1QBqAMbASYgAAMIAQoDEwEaAxMBGgQAAzgBXANX
AeYDWAG3Az4BawM2AVkDNAFUAxsBJgQAA0YBfwMAAf8DMQFNFAADGwEmA1oBvwNXAbIDMQFNA4QB9wNa
AcIDUgGgA1IBoANSAaADKAE8A0UBfANjAd8DXAG+A0sBjANaAcIDagHmAzEBTQgAA10BzAH/AZABGAH/
Aa0BgAE+AfcDMgFPA1oBvwH/AZABGAL/AZABGAH/A0oBiQMJAQwEAAMYASACXAFZAcECVAFTAaYDEgEX
BAADVgGwAl8BXQHJAyYBOAgAAxMBGgMTARoDCAEKCAADPgFqA1wBwwM4AVwDQQFwA1cBsgMuAUgDUQGc
A1ABmwMPARQEAAMTARoDEwEaAxMBGgMEAQUYAAMPARQDUgGjAzQB9wNUAasQAANGAX8DAAH/AzEBTRQA
AxsBJgNaAb8DVwGyAwoBDQNfAdMDTwGZAw8BEwMPARMDDwETAxIBGANLAYsDSwGLAx0BKAMKAQ0DKQE9
A2YB4ANOAZQDDAEPBAADXQHMAf8BkAEYAv8BkAEYAf8DRAF7A1oBvwH/AZABGAL/AZABGAH/AlYBVQGu
AxIBGAQAAwMBBAM0AVMBYgFhAVwB2QJAAT8BbgQAAyMBMwNdAcwCTAFLAY8DDAEPA1oBvwOZAf8DmQH/
A5kB/wMxAU0EAANZAbkDOQFfA0IBcwN5AfIDmQH/A1cBsgMbASYDWgG/AyMBMwMYASADmQH/A5kB/wOZ
Af8DXQHMHAADCgENA1MBpgNeAeUDOgFgAxMBGggAAzwBZgNGAX8DEwEaFAADGwEmA1oBvwNXAbIEAAMx
AU0DaQHlAzEBTBwAAxsBJgNhAdkDSwGMAwoBDQQAA10BzAFwAWcBXgHlA1oBvwM2AVkDWgG/AZMBcwFM
AfIDWgG/A0kBhgMPARMIAAMbASYDWgG/AlcBVgGyBAADDwETA1IBoAJdAVsBxQMYASADVwGyA18B0gNf
AdIDWgG/AzEBTQQAA10BxwNBAXADQgF0A3kB8QOLAfkDVAGpAycBOgNYAbgDIQEwAyMBMwNfAdIDXwHS
A18B0gNZAbkgAAMMAQ8DQwF1AwAB/wNRAaQDDQERAz0BaANXAcIDAAH/A1EBogMnAToQAAMbASYDWgG/
A1cBsgQAAwwBDwNJAYcDZQHjAzMBUgMKAQ0IAAMSARcDLQFFAzEBTQNOAZUDYgHXAzABSggAAlQBUgGo
AloBWAG6AxgBIQQAA00BkgFpAWUBWwHdAyMBMgwAA0QBewNdAcwBfAFsAVgB6wNdAcwDLgFGA10BzAFr
AWYBXwHgAmEBXAHZAxsBJgQAAw8BEwMPARMDBgEICAADPgFrA1oBwgM0AVMDTAGOA00BkwM5AV0DUAGa
A1EBngMSARcEAAMPARMDDwETAw8BEwMDAQQYAAMjATMDOAFcAxcBHwMXAR8DSAHyA14B1QMaASMDRAF7
A1sB3gMAAf8DWwHFAz0BZxAAAxsBJgNaAb8DVwGyCAADEgEXA0cBggNmAeADQgFzCAADFwEfA1oBtwNd
AcwDdQHzA0kBiAMOARIIAAM4AVwBYgFhAVwB2QM8AWYDBgEIAycBOgFnAWMBXAHfAksBSgGLAw8BFAgA
AkwBSwGPAf8BkAEYAv8BkAEYAf8DXQHMAzoBYAH/AZABGAL/AZABGAH/AmEBXAHZAxsBJhgAAwwBDwNI
AYQDWgHCAz4BawMuAUYDUwGiA1QBqQMaASQwAANGAYADNgH1A0YBfgMeASoDSAHyA1wB2QMbASYDEgEX
A0wBkQMAAf8DOQFeAxIBFxAAAxsBJgNaAb8DVwGyAw8BEwMXAR8EAAMMAQ8DUgGjA2kB5QMMAQ8EAAMG
AQgDJAE1AyMBMwNJAYUDZgHgAy4BRwgAAw8BEwNMAZACXwFdAckDJQE2BAADRAF4Al8BWwHTAjkBOAFd
AwMBBAQAAzEBTgGTAXEBTAHzAf8BkAEYAf8DXQHMAxsBJgGCAWoBTwHwAf8BkAEYAf8CYQFcAdkDGwEm
HAADDAEPAz4BawNjAdYDZQHfA1MBpwMUARs0AAMmATgDXQHgA1EB7ANeAdoDAAH/A1MBpgMGAQgEAAM2
AVcDAAH/A1wB1gM+AWsQAAMbASYDWgG/A1cBsgM0AVMDWgG9AyABLgQAAz4BawOZAf8DJgE4AzMBUgMz
AVIDCAEKBAADHQEpA2YB4ANDAXUDBAEFBAAEAQMPARMDPgFrAzEBTQQAAwoBDQM0AVQDOgFgAwkBDAQA
AwsBDgM9AWcCXQFaAccCXQFaAccEAAM2AVcCWgFYAbcCYAFdAc4DGwEmJAADEwEaRAADIwEzA1IBpQNc
AdkDRgF/EAADRgF/A1sBxQNJAYYMAAMuAUYDPwFsA10BzANXAbIEAAOIAfkDVQGsAzoBYANcAcYDYwHf
AwoBDQNLAYwDmQH/A08BmQMYASADTwGZA3YB8gM2AVl4AAMxAU0DMQFNeAADSQGIA2MB3wNjAd8DUQGd
BAADNAFTA2MB2gNlAeIDXAHGAzwBZgQAAxcBHwNRAZ0DZQHdA2sB5QNhAdYDRwGAAw8BFHQAAwYBCANa
Ab8DmQH/AwgBCnQAAx4BKgMnAToDJwE6Ax4BKgQAAwMBBAMeASoDKwFBAx4BKgwAAwkBDAMjATIDMQFM
AyABLnwAAw8BEwNfAdIDmQH/AxMBGv8AMQADDwETA18B0gOZAf8DEwEa/wA1AANXAbIDWgG//wAVAAFC
AU0BPgcAAT4DAAEoAwABUAMAASgDAAEBAQABAQUAAeABARYAA/8BAAL/AfAJAAL/AfAJAAHAAfABMAkA
AcAB8AEwCQABxwH+ATAJAAHHAf4BMAkAAccB/gEwCQABxwH+ATAJAAHHAf4BMAkAAccB/gEwCQABxwH+
ATAJAAHHAf4BMAkAAccB/gEwCQABxwH+ATAJAAHHAf4BMAkAAcAB8AEwCQABwAHwATAJAAHAAfABMAkA
Av8B8AkAAv8B8AkAAf8BDwj/AgAB/wEPCP8CAAH/AQ8I/wIAAf8BDwP/AYABAAEPAv8CAAH/AZ8D/wGA
AQABDwL/AgAB/wEPAfwBQAFHAcABCAF4AQYBZwIAAf4BBwH8AUABRwHAAQABGAEGASECAAH8AQMB/AFA
AUcBwAEAARgBAgERAgABjAEBAQ8BwwHHAcABAAEIAQIBEAIAAQQBAAEPAeABxwHEAX8BCAEDARACAAEE
AQABDwHwAQMBxAIYAY4DAAGMAQEBDwHAAQMBxgIYAQYDAAH8AQMB/wHAAQMBwQEIARgBQgMAAf4BBwH/
AcABQwHAAYEBCAFCARACAAH/Ab8B/wHhAeMBhAEAAR8C/wIAAf8BnwP/AYQBEAEfAv8CAAH/AQ8D/wGE
ATgBfwL/AgAB/wEPCP8CAAH/AQ8I/wIAAf8Bnwj/AgAL
</value>
</data>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>427, 17</value>
<value>311, 20</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="BtnSave.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEjSURBVFhH7ZfBDYJAEEUpxdiI1uHJTqzAGmzBm0cPXjzY
gCfLMPGi86KfoO7iDIjBhJ/8SFb/zBuEJRR908g8b+mpuZEIXr/khTksgiezptg+1jiOmObkVma3aEqI
T4kCrDVRGEIATCC1AUAhiC4AkBuiKwDkgkgBKFhda6qPECkAjj+SB1QLkQJACnF7EvSYTE5ZiBwAOyMh
7QkevxV/Ed/zu6deOYAupL+WnqUGgN4CcBHqoomaOwdToyo3AEEVA6KJBVKFcAPkzkpEalbdG9wAmqDU
bHcez/aXjfngtcWoQS2pBcC9+TVii30VgKmSjXK22AAwAPwHgBZ/AaBhnwC07da+mEyW62PUjxrUUh3V
fX1GlGS/MCBJQQVIl+6TiuIGFMOBkRFjN2oAAAAASUVORK5CYII=
</value>
</data>
<data name="BtnFormat.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEISURBVFhH7ZbRDcIwDEQ7CqMwCpswCqMwCqOAH9JJV7eQ
oLgfSHnSCanYlyNpXZbJZIdT6B56mi6hX6HHPfDEu8kt5I2oIgC6hpqo+BEiDDqHfoUe9eMl3yYqpLEK
vGaAGaArAM/p0QG+zgKe06MDbGYBAwPl6dc1NDrJQ4lAWnf1hVS5uMDTB5K0uUDRO1kxHwNoK/ycUGUI
vNx7dQQOKb2oCvdtHu8RAXx3m+wF4M3G+Xl6/W/I73m2lVp/gw4H0BZiLFhAtb6YbjQPOxyAX4ihLwRc
yzcSNfT6rgwHGOW/AugM+aQR5a3vQUeB3LOJbjjXZmB0QE/24YnpwlOjigB4TiaJZXkBmvm3+bkbB3UA
AAAASUVORK5CYII=
</value>
</data>
<data name="BtnPasteJson.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF1SURBVFhH7ZXrbcMwDIQ9SkfpKP3hxxgZJaN0lI6S8pij
oegViVICFOgBB0OySH56WF56dRzHh5ld79W+7zfztm0/AvLJV6/Tuq5fYeHYAJHnhcPni4WuKJKzAHwD
gsP9YsJkhjBWgcMSlVaoa2WCJLmZtgI8xAEAbjqwDLqxeQrBlqhkxOHJkFM4oHjXdFBLABAg+B6rk/Ml
N8upAFjmXhNOtybsz8HWtkBnMdPYLoCwxF3yIgtg+wwQkM+w5Es/2xqA9F/ZnCLk+wdwA+T2tMUMVw0B
YIzHYUFp+wHC77nH4SoMAczQ3waQtl4iJSMPhxblBsA+clz8MzqN/dbAijDOBTBLbwEIViux5Hz9v4Bx
2TsBBgSH3iWd0wBwDpArvgGlrb/2ZPaQAcRBHgDLxaaqWhzinumA0OgTDwE8LW4iRPxpDQE0Fy+Jq+AC
GC4OSTA+mccT+0QGMFwckiR6aRhIo/Xs4Mk0fvFcnJdHj5miomX5Bduh+L5XBebMAAAAAElFTkSuQmCC
</value>
</data>
<data name="BtnCopyJson.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAD9SURBVFhH7ZfRDcIwEEM7CqMwCpswCqMwCqNA/HFS4rp1
jwaKRJ7kj6aWe00uVToNNnAuenbQo+hWdCpK0auAEIo4BLw5CsBMHEbMwiKoElMUxj1Sax73FrkX1SE9
VK95jC1iDQnUmn+1AMB5Nt8aknCezVeGaxF6Y4vgreE8ld+gDAiOcSfe4zEe8PUMZUAz4Wu4RQznqfwG
a0jCeTbfGpJwns1XhtGEown3wHk2XxnWmpCbjuE8ld+gDHhQjLPc6SZ8AV/PUIa1JnRwnspvsIYknHcp
Wi380wVYfqaA+iD5LnEkSxXQ60RcK/Ujgqqxt1VQVtii7jvx90zTC8XzK727gWy4AAAAAElFTkSuQmCC
</value>
</data>
<data name="CopyJsonByCHS.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -185,7 +260,7 @@
</value>
</data>
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>537, 17</value>
<value>421, 20</value>
</metadata>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
+74
View File
@@ -0,0 +1,74 @@
namespace 开发辅助工具.Tools
{
partial class FrmKeyBroad
{
/// <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(FrmKeyBroad));
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.TxtKeys = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// menuRight1
//
this.menuRight1.Name = "menuRight1";
this.menuRight1.Size = new System.Drawing.Size(185, 92);
this.menuRight1.SourceContent = this;
//
// TxtKeys
//
this.TxtKeys.BackColor = System.Drawing.Color.White;
this.TxtKeys.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.TxtKeys.Location = new System.Drawing.Point(299, 218);
this.TxtKeys.Name = "TxtKeys";
this.TxtKeys.ReadOnly = true;
this.TxtKeys.Size = new System.Drawing.Size(198, 26);
this.TxtKeys.TabIndex = 1;
this.TxtKeys.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtKeys_KeyDown);
//
// FrmKeyBroad
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(836, 495);
this.Controls.Add(this.TxtKeys);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmKeyBroad";
this.TabPageContextMenuStrip = this.menuRight1;
this.Text = "按键获取";
this.Load += new System.EventHandler(this.FrmStrCount_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private ryPaiban.Model.MenuRight menuRight1;
private System.Windows.Forms.TextBox TxtKeys;
}
}
@@ -0,0 +1,31 @@
using ryCommon;
using ryControls;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
namespace 开发辅助工具.Tools
{
public partial class FrmKeyBroad : DockContent
{
public FrmKeyBroad()
{
InitializeComponent();
}
private void FrmStrCount_Load(object sender, EventArgs e)
{
}
private void TxtKeys_KeyDown(object sender, KeyEventArgs e)
{
TxtKeys.Text =e.KeyCode.ToString()+"["+e.KeyValue.ToString()+"]";
}
}
}
@@ -117,73 +117,75 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>39, 27</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="收藏该文件ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAA0ZJREFUWEfV
V8tLVFEcPlKNDGrj2Ivei8oyLPEBIUJ/QKuWQasWtYhWLloVtGhTix6GjhOJZlhqZb4ig9SpRgV10pLC
DDV7mxQGFUrBr++c+5szM3qa7qgj9MEH957z/b7vd+89594Z8d+CSkUWSIpekcPDiweEntMNeEQJDy8O
EL4JwVNhd2CaLot0no4/cMUnOXhC0WrkAk/HF1QskhH2TYU2rvCB7dzAdzTjYln8gKs/pgK9YpLGct+D
73A+yWNnWBY/oIHPKqwu9SFNFJBifWqbGisVX1kWHyD8sAryiJ80nP1aNzCcPYrxH9xEIcsXHjB/q0Ju
u0JXH2SdK7gWxlk+d1CZWAejfFzpAfA4jovBZg74TYO7h2Y1MJQ1qOYsjdQWq1rpIb3gyfaRwMLZA8F5
COtw3Ivj4LYyszbl0azwIOWcqSZEuW17VZaVWSBvq0lo0ZvwhioTfXTH1UJtG1qpb0evMTicT7YHqHV9
Bx5JF111DMBj3OjNlA3U6IHmle3Us7WDxvJGjObz4Uj2J+re0qMyQg3UWI+hVFzTg/XudqPBQrDB7dM5
yFThQeDZlOlJuaJNBvPhreWh9YEsjo0EJj1aVJviMxrNhTdTHmtfZHCcGViZF7X4RtLfV7xdVif7tR+8
OSY6ID6ri6qcfqOxHV53dmgfeLK9PeA5ndbFjWndxoBovLuqSdfDi21jA4r7lUGVs9MYEo3yzlkN9LFd
7EDxtDK5tzr2tdCy5gE3MMV2sYGuiDQ2IAps6zeGRGMgvUvXlwg329oHCvdqg9Hcj8aQaBzLs76cFvPZ
1j5QdFQVexM+GAMGMp5T+bI+xYGdAaPGmxBs4hDb2gf27CVVXOGINH+W8ZLKHc/YOMSKRD+9yIz8WFU6
gtswti0ogaL7qrjBbS1AGVzlDLChRY+QAeFvObn6W9GI1XRjWnAhNrGtfaBI/swi6tzsx9sstKAkPeIV
9vZ+lkrtPpw/jdBUJ7WRH7WWfpil9kCnxNIIsxAnEXSEZbOAoIPQWI3PZK1YwrJ/AyG7DCYneDoqZBC0
heCXsFp5FzJZYg9hxUVUJBJ52Db4d6X8pvySPjxsH7gLa/EvaCOfzhnwyZFefDoDQvwBzM2Z9yEoPakA
AAAASUVORK5CYII=
</value>
</data>
<data name="比对FTP上的对应文件ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAActJREFUWEft
l79Kw1AYxTMXXMUncHD1BbqJaZrSwVHo5CA4Ca7uDr6Ag7iKiG/QXaRTdyfBt6jnC+cmN8k911gjFfQH
B/L9Ofe7uTVpTf5pkmXZ5Xg8XkIroTlbE7sOxCGPacm1B2xv0zAo+QOLHMPPNuC0SNN0h5YK7s41nTEd
BX21E4iB9YfsX+H6kekKFF5YHDLVO9yE3eAbUxUslMfZBfR3PgGHnCMLEXr19LpYBOlZc7FnE8NOyDmy
EGE6ne6aGHai1w2g/9bEsBNyjirYAOiaYQ3lMey9kuf5FcMS6VEF5F5Zu2GqRHlsOGut5115Yhs4drXm
HYU83nDTjOmSkKdAFgAGn7s6VC6K6xMTQ+s7cn24vmC6hqszrJAF4N+VDWG6tQFcH3p9rc/fcHWGFaqg
hhshT+MU7pguCXkKQgUMd18ereFGyGP4m7A1mC5QHllA7nQ0Gh0wrCEXA8hn0Ayb2WKqQHpkIQL6f/5F
FOM3vIo3+2XUq6fXxSJIz5qL3ZsYdkLOQXKzP0q9N94cz/0+01Gs18QwymQy2fNmPDFdgeQAWrAhpu/+
Y6I/ZjzT22h4gN59Q0P+BmonwDjkMdmaX/p7+QskyQf+0wEv1pXK+QAAAABJRU5ErkJggg==
</value>
</data>
<data name="查看历史记录ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAABFNJREFUWEft
l39sFEUUxy/xD+KP3t6eJUrVBOR291o5RZrYUG93D7FFio0/SEtRowVjNKDYEHNaQzh/hAQEW7327pqm
BFGixsQYBNveHqaJGg2B6D8GE1FJKnJ7LdEQ+Uf+Gd8b3p17u3PttZH/+CQvnZk3875v5mZmp76rzIea
1eEbZSMcCRrhZqk5tHRhrOEGcl05/FHtAdnQ9kqGmg8YKhPYD7KpvirpoRU05P/BH1WaJF39sCSkq78E
TPUDENsim6H2gKG8KRtKFnx/Up9/MNFgLHQrhZg/sq72loQNdTCohxrI5aXDd03QDK2EFfqC+v8aiIZi
5J07ECBBgc7CjB+h5qpwjGW4gtRcPZKpdVCAhN+oV4p/yc3BPmhUFQLjjmOcGVfOjRxTHiTx77GO4lRP
8A5EQFcm0KgqpK6x7jo+1lR/rNXrF1HzzAQM7XMcVLNK00Cgu9IKVJMA4tfVLtEEhMDOXoudJVOJ47JB
+VKlgdUmgEim+hHE+UOKRmRqEgNHLIkdsSzryh4oX5Rj9cu408VcEgia4ZUQi8EJ2UBNYqDTafwJfGtD
C2S4cOD87yKXh7kkgEDs82AjVPVSe69Wg1mCJSRDW4JlWdfuJLeHYgJ9v397bcbOdmUKuUTKzh1K562j
advalcpb3YPT46VbES6nbMBUTlLVS000rPIE4PLgBmVyCUHxm1sjJ0BsAowJrZC7BAm9zfvDxMD4zyvE
KVosS9FwI3cKWNrZfGbFc+vEwi7L2JY966SKKwDH5p7rm5bchOWArvWQu4yhwvhdKF5tAmj3v9H9FcSs
vALFPQCbbyvW4e/HsGtHudMFBPwGxbH/+oEeoaDbovFOtqht+c8UQgzeWBD0IJZlU9kIZc8dAJttPQZM
Th5l6/Y8y5OIPN3K4hNpoXDRFj/axMzejXkKIwaPHcz6J6oKSRes3c7AO48f4LPDRB5+Zxt7FxJz+tES
J97j/heO7L1IYcT49fAa7AiJPENNHlK2hTvfI7L18FsssrmVLdvUAkL7ynwtr29it7U3sr7fDsPJOHY7
hRLDz7ehTlPVAwT8yxncaalzWdY1HGd6fEOp7bGRV/js2/dt4fVBOzvz5xluws18FeBhQU1lpO3cZ8Xg
s1ny7BgXR8OfCttGLowHKVRlYMAADoKT0EZNJdJT1stuoUrW8NRqLt59KHG5LZ+dpDCzAwP5OwCu0CH8
rlOzL1WwWt1Cbuv9epgtbLmDi2+3kv/58tanFKY6HC+jc/hdp2bYiNn9TkGndaS2c2H1cZO9dvJgmS9z
/stbKET1uF7Fk2AW2MCT7+/8+8XRPtY59BJbteMJuAvWsLq2u1ntffV8w+0+9UmZ+EB+bP4PVAT3A7yS
h0F8mpIpM6VLZw/1P892fLe/TBjujQsp+9jM74C54vzPqGesv7f/zJFTZaKXbRK+hunk6dEFNOzKksmP
Lc5M5TrhbbAtNWUtp+arzILP9y8yNz1BYtUGSQAAAABJRU5ErkJggg==
</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIAC4AAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAABvSURBVFhH7dcxCoAwDIXhDp7cqSfIbbRLzqFHUeLgUFuIFAzC/+BBh8D71iYR
KTnnI6K2neyhqiG17RvwdQAAcAOmdRlqLwDcgHnfmq2HWjfWXtyAXmrA2wAAAAAAAAD/B4wGAIAHIKIX
IPZ7LuUEMfZJSzkseGcAAAAASUVORK5CYII=
AAABAAEAIBwAAAEAIACYDgAAFgAAACgAAAAgAAAAOAAAAAEAIAAAAAAAAA4AAKdrAACnawAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAA
AKAAAABbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAsAAAA7AAAANgAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAIAAACUAAAA/wAAAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAADoAAAA2wAAACEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAI4AAAD/AAAAfwAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAOUAAADfAAAAJQAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAB6AAAAYgAAAAIAAAAAAAAAiQAA
AP8AAACFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE4AAACGAAAAHgAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjAAAArwAAAP8AAACvAAAABgAA
AAAAAAAoAAAA4gAAAOIAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjwAAAP8AAADDAAAANAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAMwAAAD/AAAAtgAA
ACgAAAAAAAAAAAAAAAAAAACDAAAA/wAAAIoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAoAAA
AP8AAADdAAAAUQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAFsAAADkAAAA/QAA
AJYAAAAVAAAAAAAAAAAAAAAAAAAAAAAAACQAAADeAAAA5gAAAC0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAALAAAAfgAAAPUAAADwAAAAcgAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAB8AAAA8wAA
AO8AAABzAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH4AAAD/AAAAjwAAAAEAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAACAAAAXAAAAOMAAAD7AAAAlAAAABMAAAAAAAAAAAAAAAAAAAAAAAAASQAA
APoAAAD8AAAAbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAANoAAADpAAAAMQAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUgAAAPIAAAD/AAAAVgAAAAAAAAAAAAAAAAAA
AAAAAAAfAAAAuAAAAP8AAADGAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAA
AP8AAACVAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcAAACyAAAA/wAAAMwAAAAsAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAXAAAAmgAAAP4AAADhAAAAVwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAdAAAA1gAAAOwAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABCAAAA0QAAAP8AAACxAAAAJQAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAeAAAAPMAAADzAAAAeAAAAAoAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAByAAAA/wAAAJsAAAADAAAAAAAAAAAAAAAEAAAAYQAAAOgAAAD7AAAAjwAA
ABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAVgAAAOEAAAD/AAAAigAA
AAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAADSAAAA7wAAADkAAAAAAAAAAAAAAG0AAAD5AAAA7gAA
AG0AAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOQAA
AL8AAACXAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG0AAAD/AAAAoAAAAAQAAAAAAAAAfAAA
AMsAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAADgAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFwAAAM4AAADyAAAAPQAA
AAAAAAAIAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZwAA
AP8AAAClAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAUAAAAyQAAAPQAAABCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAABiAAAA/wAAAKsAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAADEAAAA9gAAAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFwAAAD/AAAAoQAAAAEAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAH8AAABXAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8H////A////wH///8B
////AP///wD///wAeD/4AHAf8AAwD+AAMAfAABABgAAQAYAACAGAMA4BgDgEAYAIAAGADAABwAwAA/AO
AAf4DgAf/A8AP///AP///4B///+Af///wH///8B////gf///4P8=
</value>
</data>
</root>
+232 -54
View File
@@ -1,33 +1,33 @@
namespace 开发辅助工具.Tools
{
partial class FrmProject
{
/// <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()
{
namespace 开发辅助工具.Tools
{
partial class FrmProject
{
/// <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();
this.BtnCustomMessageBox = new ryControls.ButtonEx();
this.BtnCopyCMD = new System.Windows.Forms.Button();
@@ -52,11 +52,15 @@
this.RbCompany = new System.Windows.Forms.RadioButton();
this.RbPersonal = new System.Windows.Forms.RadioButton();
this.RbGeneral = new System.Windows.Forms.RadioButton();
this.BtnUploadProject = new ryControls.ButtonEx();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.ChkPackByLite = new System.Windows.Forms.CheckBox();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.chromeTabControl1 = new ryControls.ChromeTabControl();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.TxtUploadName = new ryControls.TextBoxEx2();
this.label6 = new System.Windows.Forms.Label();
this.TxtProjectVer = new ryControls.TextBoxEx2();
this.label5 = new System.Windows.Forms.Label();
this.BtnSave = new ryControls.ButtonEx();
@@ -72,6 +76,13 @@
this.tabPage3 = new System.Windows.Forms.TabPage();
this.BtnSave2 = new ryControls.ButtonEx();
this.panel1 = new System.Windows.Forms.Panel();
this.tabPage4 = new System.Windows.Forms.TabPage();
this.BtnSaveLog = new ryControls.ButtonEx();
this.LvUpdateLogList = new BrightIdeasSoftware.ObjectListView();
this.BtnPublishLogs = new ryControls.ButtonEx();
this.OlvUpVer = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvUpdateDate = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.tabControl1 = new System.Windows.Forms.TabControl();
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
this.groupBox1.SuspendLayout();
this.groupBox2.SuspendLayout();
@@ -80,6 +91,8 @@
this.tabPage1.SuspendLayout();
this.tabPage3.SuspendLayout();
this.panel1.SuspendLayout();
this.tabPage4.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.LvUpdateLogList)).BeginInit();
this.SuspendLayout();
//
// BtnCustomMessageBox
@@ -321,10 +334,25 @@
this.toolTip1.SetToolTip(this.RbGeneral, "工作室项目将采用默认设置,不会植入编译条件。");
this.RbGeneral.UseVisualStyleBackColor = true;
//
// BtnUploadProject
//
this.BtnUploadProject.BaseColor = System.Drawing.Color.Navy;
this.BtnUploadProject.ColorGradient = true;
this.BtnUploadProject.Location = new System.Drawing.Point(15, 95);
this.BtnUploadProject.Name = "BtnUploadProject";
this.BtnUploadProject.Size = new System.Drawing.Size(126, 34);
this.BtnUploadProject.TabIndex = 32;
this.BtnUploadProject.Text = "上传项目到服务端";
this.toolTip1.SetToolTip(this.BtnUploadProject, "一键混淆并打包当前项目生成的文件。");
this.BtnUploadProject.UseDefSkin = false;
this.BtnUploadProject.UseVisualStyleBackColor = true;
this.BtnUploadProject.Click += new System.EventHandler(this.BtnUploadProject_Click);
//
// groupBox1
//
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox1.Controls.Add(this.ChkPackByLite);
this.groupBox1.Controls.Add(this.BtnRepairFolder);
this.groupBox1.Controls.Add(this.BtnUpdateDllVer);
this.groupBox1.Controls.Add(this.BtnUpdateVer);
@@ -339,6 +367,18 @@
this.groupBox1.TabStop = false;
this.groupBox1.Text = "项目管理";
//
// ChkPackByLite
//
this.ChkPackByLite.AutoSize = true;
this.ChkPackByLite.Checked = true;
this.ChkPackByLite.CheckState = System.Windows.Forms.CheckState.Checked;
this.ChkPackByLite.Location = new System.Drawing.Point(753, 30);
this.ChkPackByLite.Name = "ChkPackByLite";
this.ChkPackByLite.Size = new System.Drawing.Size(84, 16);
this.ChkPackByLite.TabIndex = 31;
this.ChkPackByLite.Text = "最简化打包";
this.ChkPackByLite.UseVisualStyleBackColor = true;
//
// groupBox2
//
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
@@ -362,6 +402,7 @@
this.chromeTabControl1.Controls.Add(this.tabPage2);
this.chromeTabControl1.Controls.Add(this.tabPage1);
this.chromeTabControl1.Controls.Add(this.tabPage3);
this.chromeTabControl1.Controls.Add(this.tabPage4);
this.chromeTabControl1.Cursor = System.Windows.Forms.Cursors.Default;
this.chromeTabControl1.ItemSize = new System.Drawing.Size(100, 25);
this.chromeTabControl1.Location = new System.Drawing.Point(12, 205);
@@ -388,6 +429,9 @@
//
// tabPage1
//
this.tabPage1.Controls.Add(this.BtnUploadProject);
this.tabPage1.Controls.Add(this.TxtUploadName);
this.tabPage1.Controls.Add(this.label6);
this.tabPage1.Controls.Add(this.TxtProjectVer);
this.tabPage1.Controls.Add(this.label5);
this.tabPage1.Controls.Add(this.BtnSave);
@@ -408,12 +452,45 @@
this.tabPage1.Text = "项目信息";
this.tabPage1.UseVisualStyleBackColor = true;
//
// TxtUploadName
//
this.TxtUploadName.BackColor = System.Drawing.Color.White;
this.TxtUploadName.EmptyText = "";
this.TxtUploadName.Location = new System.Drawing.Point(354, 61);
this.TxtUploadName.LongTime = 2000;
this.TxtUploadName.MaxLength = 999999999;
this.TxtUploadName.MaxUndoRedoSteps = 50;
this.TxtUploadName.Multiline = false;
this.TxtUploadName.Name = "TxtUploadName";
this.TxtUploadName.OnlyNumeric = false;
this.TxtUploadName.PasswordChar = '\0';
this.TxtUploadName.ReadOnly = false;
this.TxtUploadName.SelectedText = "";
this.TxtUploadName.SelectionLength = 0;
this.TxtUploadName.SelectionStart = 0;
this.TxtUploadName.Size = new System.Drawing.Size(193, 28);
this.TxtUploadName.TabIndex = 31;
this.TxtUploadName.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.TxtUploadName.ToolTip = "";
this.TxtUploadName.WordWrap = true;
//
// label6
//
this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(271, 70);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(65, 12);
this.label6.TabIndex = 30;
this.label6.Text = "升级包名称";
//
// TxtProjectVer
//
this.TxtProjectVer.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
this.TxtProjectVer.EmptyText = "";
this.TxtProjectVer.Location = new System.Drawing.Point(72, 61);
this.TxtProjectVer.LongTime = 2000;
this.TxtProjectVer.MaxLength = 999999999;
this.TxtProjectVer.MaxUndoRedoSteps = 50;
this.TxtProjectVer.Multiline = false;
this.TxtProjectVer.Name = "TxtProjectVer";
this.TxtProjectVer.OnlyNumeric = false;
@@ -466,7 +543,9 @@
this.Txtproglang.BackColor = System.Drawing.Color.White;
this.Txtproglang.EmptyText = "";
this.Txtproglang.Location = new System.Drawing.Point(754, 6);
this.Txtproglang.LongTime = 2000;
this.Txtproglang.MaxLength = 999999999;
this.Txtproglang.MaxUndoRedoSteps = 50;
this.Txtproglang.Multiline = false;
this.Txtproglang.Name = "Txtproglang";
this.Txtproglang.OnlyNumeric = false;
@@ -495,7 +574,9 @@
this.Txtusqver.BackColor = System.Drawing.Color.White;
this.Txtusqver.EmptyText = "";
this.Txtusqver.Location = new System.Drawing.Point(627, 6);
this.Txtusqver.LongTime = 2000;
this.Txtusqver.MaxLength = 999999999;
this.Txtusqver.MaxUndoRedoSteps = 50;
this.Txtusqver.Multiline = false;
this.Txtusqver.Name = "Txtusqver";
this.Txtusqver.OnlyNumeric = false;
@@ -524,7 +605,9 @@
this.TxtEngName.BackColor = System.Drawing.Color.White;
this.TxtEngName.EmptyText = "";
this.TxtEngName.Location = new System.Drawing.Point(354, 6);
this.TxtEngName.LongTime = 2000;
this.TxtEngName.MaxLength = 999999999;
this.TxtEngName.MaxUndoRedoSteps = 50;
this.TxtEngName.Multiline = false;
this.TxtEngName.Name = "TxtEngName";
this.TxtEngName.OnlyNumeric = false;
@@ -553,7 +636,9 @@
this.TxtName.BackColor = System.Drawing.Color.White;
this.TxtName.EmptyText = "";
this.TxtName.Location = new System.Drawing.Point(72, 6);
this.TxtName.LongTime = 2000;
this.TxtName.MaxLength = 999999999;
this.TxtName.MaxUndoRedoSteps = 50;
this.TxtName.Multiline = false;
this.TxtName.Name = "TxtName";
this.TxtName.OnlyNumeric = false;
@@ -614,6 +699,84 @@
this.panel1.Size = new System.Drawing.Size(363, 23);
this.panel1.TabIndex = 14;
//
// tabPage4
//
this.tabPage4.Controls.Add(this.tabControl1);
this.tabPage4.Controls.Add(this.BtnSaveLog);
this.tabPage4.Controls.Add(this.LvUpdateLogList);
this.tabPage4.Controls.Add(this.BtnPublishLogs);
this.tabPage4.Location = new System.Drawing.Point(1, 29);
this.tabPage4.Name = "tabPage4";
this.tabPage4.Padding = new System.Windows.Forms.Padding(3);
this.tabPage4.Size = new System.Drawing.Size(903, 380);
this.tabPage4.TabIndex = 3;
this.tabPage4.Text = "更新日志";
this.tabPage4.UseVisualStyleBackColor = true;
//
// BtnSaveLog
//
this.BtnSaveLog.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnSaveLog.Location = new System.Drawing.Point(261, 6);
this.BtnSaveLog.Name = "BtnSaveLog";
this.BtnSaveLog.Size = new System.Drawing.Size(75, 33);
this.BtnSaveLog.TabIndex = 11;
this.BtnSaveLog.Text = "临时保存";
this.BtnSaveLog.UseVisualStyleBackColor = true;
this.BtnSaveLog.Click += new System.EventHandler(this.BtnSaveLog_Click);
//
// LvUpdateLogList
//
this.LvUpdateLogList.AllColumns.Add(this.OlvUpVer);
this.LvUpdateLogList.AllColumns.Add(this.OlvUpdateDate);
this.LvUpdateLogList.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.LvUpdateLogList.CellEditUseWholeCell = false;
this.LvUpdateLogList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.OlvUpVer,
this.OlvUpdateDate});
this.LvUpdateLogList.Cursor = System.Windows.Forms.Cursors.Default;
this.LvUpdateLogList.FullRowSelect = true;
this.LvUpdateLogList.HideSelection = false;
this.LvUpdateLogList.Location = new System.Drawing.Point(3, 6);
this.LvUpdateLogList.Name = "LvUpdateLogList";
this.LvUpdateLogList.Size = new System.Drawing.Size(252, 368);
this.LvUpdateLogList.TabIndex = 10;
this.LvUpdateLogList.UseCompatibleStateImageBehavior = false;
this.LvUpdateLogList.View = System.Windows.Forms.View.Details;
//
// BtnPublishLogs
//
this.BtnPublishLogs.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.BtnPublishLogs.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnPublishLogs.Location = new System.Drawing.Point(822, 6);
this.BtnPublishLogs.Name = "BtnPublishLogs";
this.BtnPublishLogs.Size = new System.Drawing.Size(75, 33);
this.BtnPublishLogs.TabIndex = 9;
this.BtnPublishLogs.Text = "发布日志";
this.BtnPublishLogs.UseVisualStyleBackColor = true;
this.BtnPublishLogs.Click += new System.EventHandler(this.BtnPublishLogs_Click);
//
// OlvUpVer
//
this.OlvUpVer.Text = "版本";
this.OlvUpVer.Width = 150;
//
// OlvUpdateDate
//
this.OlvUpdateDate.Text = "更新时间";
this.OlvUpdateDate.Width = 150;
//
// tabControl1
//
this.tabControl1.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.tabControl1.Location = new System.Drawing.Point(261, 39);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(636, 335);
this.tabControl1.TabIndex = 12;
//
// FrmProject
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
@@ -629,9 +792,11 @@
this.Controls.Add(this.BtnOpenOutput);
this.Name = "FrmProject";
this.Text = "项目";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmProject_FormClosing);
this.Load += new System.EventHandler(this.FrmProject_Load);
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.groupBox2.ResumeLayout(false);
this.chromeTabControl1.ResumeLayout(false);
this.tabPage2.ResumeLayout(false);
@@ -641,32 +806,34 @@
this.tabPage3.PerformLayout();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.tabPage4.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.LvUpdateLogList)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private ryControls.ButtonEx BtnCustomMessageBox;
private System.Windows.Forms.Button BtnCopyCMD;
private System.Windows.Forms.Button BtnOpenOutput;
private ryControls.ButtonEx BtnMessageBox;
private XPTable.Models.Table table1;
private XPTable.Models.ColumnModel columnModel1;
private XPTable.Models.TextColumn ColName;
private XPTable.Models.TextColumn ColPath;
private XPTable.Models.TextColumn ColDes;
private XPTable.Models.TableModel tableModel1;
private ryControls.ButtonEx BtnClean;
private ryControls.ButtonEx BtnBatchZip;
private System.Windows.Forms.Label LblState;
private ryControls.ButtonEx BtnInsertUpdate;
private ryControls.ButtonEx BtnUpdateDll;
private System.Windows.Forms.ToolTip toolTip1;
private System.Windows.Forms.GroupBox groupBox1;
private ryControls.ButtonEx BtnUpdateVer;
private System.Windows.Forms.GroupBox groupBox2;
}
#endregion
private ryControls.ButtonEx BtnCustomMessageBox;
private System.Windows.Forms.Button BtnCopyCMD;
private System.Windows.Forms.Button BtnOpenOutput;
private ryControls.ButtonEx BtnMessageBox;
private XPTable.Models.Table table1;
private XPTable.Models.ColumnModel columnModel1;
private XPTable.Models.TextColumn ColName;
private XPTable.Models.TextColumn ColPath;
private XPTable.Models.TextColumn ColDes;
private XPTable.Models.TableModel tableModel1;
private ryControls.ButtonEx BtnClean;
private ryControls.ButtonEx BtnBatchZip;
private System.Windows.Forms.Label LblState;
private ryControls.ButtonEx BtnInsertUpdate;
private ryControls.ButtonEx BtnUpdateDll;
private System.Windows.Forms.ToolTip toolTip1;
private System.Windows.Forms.GroupBox groupBox1;
private ryControls.ButtonEx BtnUpdateVer;
private System.Windows.Forms.GroupBox groupBox2;
private ryControls.ButtonEx BtnUpdateDllVer;
private ryControls.ButtonEx BtnRepairFolder;
private ryControls.ChromeTabControl chromeTabControl1;
@@ -691,5 +858,16 @@
private ryControls.ButtonEx BtnSave2;
private ryControls.TextBoxEx2 TxtProjectVer;
private System.Windows.Forms.Label label5;
}
private System.Windows.Forms.CheckBox ChkPackByLite;
private ryControls.TextBoxEx2 TxtUploadName;
private System.Windows.Forms.Label label6;
private ryControls.ButtonEx BtnUploadProject;
private System.Windows.Forms.TabPage tabPage4;
private BrightIdeasSoftware.ObjectListView LvUpdateLogList;
private ryControls.ButtonEx BtnPublishLogs;
private ryControls.ButtonEx BtnSaveLog;
private BrightIdeasSoftware.OLVColumn OlvUpVer;
private BrightIdeasSoftware.OLVColumn OlvUpdateDate;
private System.Windows.Forms.TabControl tabControl1;
}
}
+488 -6
View File
@@ -1,13 +1,14 @@
using Microsoft.Win32;
using Newtonsoft.Json.Linq;
using ryCommon;
using ryCommonDb;
using ryControls.Controls;
using SuperDesign.Manager.FTP;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Windows.Forms;
@@ -19,6 +20,7 @@ namespace 开发辅助工具.Tools
{
public partial class FrmProject : DockContent
{
public string ProjectName { get; set; } = "";
public FrmProject(string ProjectPath)
{
_ProjectPath = ProjectPath;
@@ -33,6 +35,7 @@ namespace 开发辅助工具.Tools
var root = @"d:Project//d:PropertyGroup//d:";
var project_name = GetValue("AssemblyName");
if (project_name != "") { Text = project_name; }
ProjectName = project_name;
#region 读取图标
var ApplicationIcon = GetValue("ApplicationIcon");
ApplicationIcon = System.IO.Path.GetDirectoryName(_ProjectPath) + "\\" + ApplicationIcon;
@@ -78,6 +81,8 @@ namespace 开发辅助工具.Tools
}
}
catch { }
OlvUpVer.AspectGetter = delegate (object x) { return ((UpLogItem)x).Version; };
OlvUpdateDate.AspectGetter = delegate (object x) { return ((UpLogItem)x).AddTime.ToDateTime().ToString(); };
}
/// <summary>
/// 获取毕方标准项目根路径
@@ -112,6 +117,7 @@ namespace 开发辅助工具.Tools
Txtusqver.Text = ini.ReadIni("project", "usqver");
Txtproglang.Text = ini.ReadIni("project", "proglang");
ChkConfuse.Checked = ini.ReadIni("project", "confuse", false);
TxtUploadName.Text = ini.ReadIni("project", "UploadName");
AddPath(true,"Debug输出目录", "Bin\\Debug","包含调试信息的输出目录");
AddPath(true, "Release输出目录", "Bin\\Release", "不包含调试信息的输出目录");
AddPath(true,"源代码目录", "Source", "含有项目源码");
@@ -275,12 +281,196 @@ namespace 开发辅助工具.Tools
CloseApp();
}
}
public List<string> GetAllProjectFiles()
{
var result = new List<string>();
var _path = GetBFFolderPath();
if (_path.Length > 0)
{
var files = System.IO.Directory.GetFiles(_path+ "\\Source","*.sln");
var sln_path = "";
if(files==null || files.Length==0)
{
var dirs = System.IO.Directory.GetDirectories(_path + "\\Source");
if(dirs!=null)
{
for (int i = 0; i < dirs.Length; i++)
{
files = System.IO.Directory.GetFiles(dirs[i], "*.sln");
if(files!=null && files.Length>0)
{
sln_path = files[0];
break;
}
}
}
}
else
{
sln_path = files[0];
}
if(sln_path.Length>0)
{
var lines = RyFiles.ReadAllLines(sln_path);
if(lines!=null)
{
for (int i = 0; i < lines.Length; i++)
{
if (lines[i].StartsWith("Project("))
{
var project_path = lines[i].GetStr(",", ",").Trim().Trim('"');
if(project_path.Length>0)
{
project_path = System.IO.Path.GetDirectoryName(sln_path).TrimEnd('\\') + "\\" + project_path;
if(System.IO.File.Exists(project_path))
{
result.Add(project_path);
}
}
}
}
}
}
}
return result;
}
private void FrmProject_Load(object sender, EventArgs e)
{
var _path = GetBFFolderPath();
if (_path.Length>0)
{
IDbInterface db = new SQLiteDataProvider();
if (db.ConnDb(_path+ "\\Res\\Setting\\UpdateLogs.dat") == 1)
{
RyQuickSQL mySQL = new RyQuickSQL("UpdateLogs");
mySQL.AddField("VerStr", "");
mySQL.AddField("LogText", "");
mySQL.AddField("LogJson", "");
mySQL.AddField("editTime", DateTime.Now.ToInt64());
mySQL.AddField("addTime", DateTime.Now.ToInt64());
db.CreateDb(mySQL);
#region 项目当前日志表
mySQL.Clear();
mySQL.TableName = "ProjectNowLogs";
mySQL.AddField("Name", "");
mySQL.AddField("Value", "");//值
mySQL.AddField("editTime", DateTime.Now.ToInt64());
mySQL.AddField("addTime", DateTime.Now.ToInt64());
if (db.CreateDb(mySQL) == 1)
{
db.ExecuteNonQuery("CREATE INDEX index_Name ON ProjectNowLogs(Name); ");
}
#endregion
#region 设置表
mySQL.Clear();
mySQL.TableName = "Settings";
mySQL.AddField("Name", "");
mySQL.AddField("Value", "");//值
mySQL.AddField("addTime", DateTime.Now);
if (db.CreateDb(mySQL) == 1)
{
db.ExecuteNonQuery("CREATE INDEX index_Name ON Settings(Name); ");
}
#endregion
var ds_logs = db.ReadData("select * from UpdateLogs order by addTime desc");
if(ds_logs.HaveData())
{
List<UpLogItem> list = new List<UpLogItem>();
for (int i = 0; i < ds_logs.RowCount(); i++)
{
var row = ds_logs.GetRow(i);
list.Add(new UpLogItem() {
Version = row["VerStr"].ToString(),
LogText = row["LogText"].ToString(),
AddTime = row["addTime"].ToInt64(),
});
}
LvUpdateLogList.AddObjects(list);
}
ds_logs?.Dispose();
var all_project_path= GetAllProjectFiles();
for (int i = 0; i < all_project_path.Count; i++)
{
var p_name = "";
try
{
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
xml.Load(all_project_path[i]);
var xmlnsm = new XmlNamespaceManager(xml.NameTable);
xmlnsm.AddNamespace("d", xml.DocumentElement.NamespaceURI);
var root = @"d:Project//d:PropertyGroup//d:";
p_name = GetValue("AssemblyName");
string GetValue(string name)
{
var node = xml.SelectSingleNode(root + name, xmlnsm);
if (node != null)
{
return node.InnerText;
}
return "";
}
}
catch { }
if (p_name.Length == 0) { continue; }
ProjectLogItem projectLogItem = new ProjectLogItem
{
ProjectName = p_name,
ProjectPath = all_project_path[i],
VersionPath= System.IO.Path.GetDirectoryName(all_project_path[i]) + "\\Properties\\AssemblyInfo.cs",
};
TabPage tab = new TabPage()
{
Text = p_name,
Tag= projectLogItem
};
Label label = new Label
{
Parent = tab,
Location = new Point(1, 4),
AutoSize=true,
Text = "版本号:" + projectLogItem.Version
};
label.Refresh();
RichTextBox2 rich = new RichTextBox2
{
Parent = tab,
Dock = DockStyle.Fill,
Location = new Point(label.Left, label.Top + label.Height+2),
Size = new Size(tab.ClientSize.Width,tab.ClientSize.Height-(label.Top + label.Height+4)),
Anchor= AnchorStyles.Left | AnchorStyles.Top | AnchorStyles.Right | AnchorStyles.Bottom
};
var ds_now_up = db.ReadData("select * from ProjectNowLogs where Name='" + p_name + "'");
if (ds_now_up.HaveData())
{
rich.Text = ds_now_up.GetRow(0)["Value"].ToString();
}
ds_now_up?.Dispose();
tabControl1.TabPages.Add(tab);
}
}
db.Free();
}
}
class ProjectLogItem
{
public string ProjectName { get; set; } = "";
public string ProjectPath { get; set; } = "";
public string Version
{
get
{
return RyProject.GetVerInfo(VersionPath).Version;
}
}
/// <summary>
///更新版本号
/// </summary>
public void UpdateVer()
{
Manager.RyProject.UpdateVer(VersionPath);
}
public string VersionPath { get; set; } = "";
}
private void table1_DoubleClick(object sender, EventArgs e)
{
if (table1.SelectedItems.Length == 0) { return; }
@@ -369,13 +559,14 @@ namespace 开发辅助工具.Tools
private void BtnBatchZip_Click(object sender, EventArgs e)
{
BtnBatchZip.Enabled = false;
bool PackByLite = ChkPackByLite.Checked;
Thread th = new Thread(Start);
th.Start();
void Start()
{
RyProject project = new RyProject();
project.OnStateChanged += Project_OnStateChanged;
project.Pack(GetBFFolderPath());
project.Pack(GetBFFolderPath(), PackByLite);
this.Invoke(new Action(() =>
{
BtnBatchZip.Enabled = true;
@@ -518,6 +709,11 @@ namespace 开发辅助工具.Tools
{
error += project.UpdateDlls(bf_folder + "\\Bin",out _error_str);
}
var debug_path = GetDebugPath();
if(debug_path.IndexOfEx(bf_folder + "\\Bin")<0)
{
error += project.UpdateDlls(debug_path, out _error_str);
}
BtnUpdateDllVer.Enabled = true;
if (error == 0)
{
@@ -561,6 +757,7 @@ namespace 开发辅助工具.Tools
ini.WriteIni("project", "usqver", Txtusqver.Text);
ini.WriteIni("project", "proglang", Txtproglang.Text);
ini.WriteIni("project", "confuse", ChkConfuse.Checked);
ini.WriteIni("project", "UploadName", TxtUploadName.Text);
MessageBox.Show("保存成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
@@ -609,5 +806,290 @@ namespace 开发辅助工具.Tools
}
#endregion
}
private void BtnUploadProject_Click(object sender, EventArgs e)
{
List<UploadInfo> list = new List<UploadInfo>();
var _path = GetBFFolderPath();
if (_path.Length > 0)
{
string ftp_setting_path = _path + "\\FTPUploadData.jryp";
if(System.IO.File.Exists(ftp_setting_path))
{
ryCommon.Ini ini = new ryCommon.Ini(_path + "\\查看项目.ryp");
var eng_name = ini.ReadIni("project", "engname");
var com_mode = "Debug";
var ouput_folder = _path + "\\Bin\\" + com_mode + "\\" + eng_name;
if (!System.IO.Directory.Exists(ouput_folder))
{
ouput_folder = _path + "\\Bin\\" + com_mode;
}
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
var lines = RyFiles.ReadAllLines(ftp_setting_path);
if (lines != null && lines.Length > 0)
{
for (int i = 0; i < lines.Length; i++)
{
var line = lines[i].Split('=');
if (line.Length < 2) { continue; }
var item = line[0];
if (item.Contains("<") && item.Contains(">"))
{
DataSet ds_var = db.ReadData("select * from VarInfo");
if (ds_var.HaveData())
{
for (int n = 0; n < ds_var.Tables[0].Rows.Count; n++)
{
DataRow row_var = ds_var.Tables[0].Rows[n];
item = item.Replace("<" + row_var["VarName"].ToString() + ">", row_var["VarValue"].ToString());
if (!item.Contains("<") || !item.Contains(">"))
{
break;
}
}
}
}
if (item.IndexOfEx(":") < 0 && item.IndexOfEx("<") < 0)
{
item = ouput_folder + "\\" + item;
}
if(System.IO.File.Exists(item))
list.Add(new UploadInfo() { FromPath = item, ToPath = line[1] });
}
}
}
db.Free();
}
}
if(list.Count>0)
{
FrmUploadFilesToFtp frm= new FrmUploadFilesToFtp();
frm.UploadInfos.AddRange(list);
if(frm.ShowDialog()==DialogResult.OK)
{
}
frm.Dispose();
}
}
private bool SaveUpdateLog(bool clean=false)
{
var _path = GetBFFolderPath();
if (_path.Length > 0)
{
IDbInterface db = new SQLiteDataProvider();
if (db.ConnDb(_path + "\\Res\\Setting\\UpdateLogs.dat") == 1)
{
if (clean)
{
db.ExecuteNonQuery("delete from ProjectNowLogs");
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
var tab = tabControl1.TabPages[i];
for (int c = 0; c < tab.Controls.Count; c++)
{
var ctl = tab.Controls[c];
if (ctl is RichTextBox2 rich && tab.Tag is ProjectLogItem p_item)
{
rich.Text = "";
}
}
}
}
else
{
#region 当前日志表
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
var tab = tabControl1.TabPages[i];
for (int c = 0; c < tab.Controls.Count; c++)
{
var ctl = tab.Controls[c];
if (ctl is RichTextBox2 rich && tab.Tag is ProjectLogItem p_item)
{
RyQuickSQL mySQL = new RyQuickSQL("ProjectNowLogs");
mySQL.AddField("Name", p_item.ProjectName);
mySQL.AddField("Value", rich.Text);//值
mySQL.AddField("editTime", DateTime.Now.ToInt64());
if (db.Update(mySQL, "Name=@Name") == 0)
{
mySQL.AddField("addTime", DateTime.Now.ToInt64());
db.Insert(mySQL);
}
}
}
}
db.Free();
return true;
#endregion
}
}
db.Free();
}
return false;
}
private void BtnSaveLog_Click(object sender, EventArgs e)
{
if (SaveUpdateLog())
{
MessageBox.Show("保存成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
private void FrmProject_FormClosing(object sender, FormClosingEventArgs e)
{
SaveUpdateLog();
}
private string GetLogText(JArray jarr,DateTime dt)
{
string log_text = "### " + DateTime.Now.ToString("yyyy-MM-dd dddd") + "更新";
log_text += "\r\n------";
for (int i = 0; i < jarr.Count; i++)
{
var item = jarr[i];
log_text += "\r\n#### "+ item.GetJsonValue("ProjectName", "")+ " V"+ item.GetJsonValue("VerStr", "");
var logs = item.GetJsonValue("LogText", "").Replace("\r", "\n").Replace("\n\n", "\n").Split('\n');
for (int m = 0; m < logs.Length; m++)
{
if (logs[m].Length == 0) { continue; }
var log_item = logs[m];
if (log_item.StartsWith("- *."))
{
log_text += "\r\n" + log_item;
}
else if (log_item.StartsWith("*."))
{
log_text += "\r\n- " + log_item;
}
else
{
log_text += "\r\n- *." + log_item;
}
}
}
return log_text;
}
private void BtnPublishLogs_Click(object sender, EventArgs e)
{
var _path = GetBFFolderPath();
if (_path.Length > 0)
{
IDbInterface db = new SQLiteDataProvider();
if (db.ConnDb(_path + "\\Res\\Setting\\UpdateLogs.dat") == 1)
{
Ini ini = new Ini(_path+ "\\查看项目.ryp");
var Main_Project = ini.ReadIni("project", "MainProject", "");
var Main_Version = "";
ProjectLogItem first_tag = null;
JArray jarr = new JArray();
var index = 0;
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
var tab = tabControl1.TabPages[i];
for (int c = 0; c < tab.Controls.Count; c++)
{
var ctl = tab.Controls[c];
if (ctl is RichTextBox2 rich && tab.Tag is ProjectLogItem p_item)
{
if (rich.Text.Length == 0) { continue; }
p_item.UpdateVer();
var Version = p_item.Version;
if (Main_Project.Length == 0) {
if (index == 0) {
Main_Version = Version;
}
}
else
{
if(Main_Project== p_item.ProjectName)
{
Main_Version = Version;
}
}
if (index == 0) { first_tag = p_item; }
JObject jo_item = new JObject
{
{ "ProjectName", p_item.ProjectName },
{ "VerStr", Version },
{ "LogText",rich.Text }
};
if (Main_Version.Length > 0)
{
jarr.Insert(0,jo_item);
}
else
{
jarr.Add(jo_item);
}
index++;
}
}
}
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
var tab = tabControl1.TabPages[i];
for (int c = 0; c < tab.Controls.Count; c++)
{
var ctl = tab.Controls[c];
if (ctl is Label txt && tab.Tag is ProjectLogItem p_item)
{
txt.Text = "版本号:"+p_item.Version;
}
}
}
if (Main_Version.Length==0 && first_tag!=null)
{
Main_Version = first_tag.Version;
}
#region 日志表
var log_text = GetLogText(jarr, DateTime.Now);
var CHANGELOG = RyFiles.ReadAllText(_path+ "\\CHANGELOG.md").Trim();
CHANGELOG = log_text + "\r\n\r\n" + CHANGELOG;
RyFiles.WriteAllText(_path + "\\CHANGELOG.md", CHANGELOG);
RyQuickSQL mySQL = new RyQuickSQL("UpdateLogs");
var folder = System.IO.Path.GetDirectoryName(_ProjectPath);
mySQL.AddField("VerStr", Main_Version);
mySQL.AddField("LogText", log_text);
mySQL.AddField("LogJson", jarr.ToString());
mySQL.AddField("editTime", DateTime.Now.ToInt64());
if (db.Update(mySQL, "VerStr=@VerStr") == 0)
{
mySQL.AddField("addTime", DateTime.Now.ToInt64());
db.Insert(mySQL);
}
SaveUpdateLog(true);
LvUpdateLogList.ClearObjects();
var ds_logs = db.ReadData("select * from UpdateLogs order by addTime desc");
if (ds_logs.HaveData())
{
List<UpLogItem> list = new List<UpLogItem>();
for (int i = 0; i < ds_logs.RowCount(); i++)
{
var row = ds_logs.GetRow(i);
list.Add(new UpLogItem()
{
Version = row["VerStr"].ToString(),
LogText = row["LogText"].ToString(),
AddTime = row["addTime"].ToInt64(),
});
}
LvUpdateLogList.AddObjects(list);
}
ds_logs?.Dispose();
MessageBox.Show("发布成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
#endregion
}
db.Free();
}
}
}
class UpLogItem
{
public string Version { get; set; } = "";
public string LogText { get; set; } = "";
public long AddTime { get; set; } = 0;
}
}
@@ -126,4 +126,7 @@
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>285, 17</value>
</metadata>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>285, 17</value>
</metadata>
</root>
+13 -9
View File
@@ -32,7 +32,7 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmStrCount));
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.TxtFromCode = new ryControls.Controls.RichTextBox2();
this.highlightEditor1 = new ryControls.HighlightEditor();
this.htmlPanel1 = new TheArtOfDev.HtmlRenderer.WinForms.HtmlPanel();
this.SuspendLayout();
//
// menuRight1
@@ -59,22 +59,26 @@
this.TxtFromCode.WordWrap = false;
this.TxtFromCode.TextChanged += new System.EventHandler(this.TxtFromCode_TextChanged);
//
// highlightEditor1
// htmlPanel1
//
this.highlightEditor1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
this.htmlPanel1.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.highlightEditor1.Location = new System.Drawing.Point(12, 216);
this.highlightEditor1.Name = "highlightEditor1";
this.highlightEditor1.Size = new System.Drawing.Size(812, 258);
this.highlightEditor1.TabIndex = 31;
this.htmlPanel1.AutoScroll = true;
this.htmlPanel1.BackColor = System.Drawing.SystemColors.Window;
this.htmlPanel1.BaseStylesheet = null;
this.htmlPanel1.Cursor = System.Windows.Forms.Cursors.IBeam;
this.htmlPanel1.Location = new System.Drawing.Point(12, 216);
this.htmlPanel1.Name = "htmlPanel1";
this.htmlPanel1.Size = new System.Drawing.Size(812, 258);
this.htmlPanel1.TabIndex = 32;
//
// FrmStrCount
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(836, 495);
this.Controls.Add(this.highlightEditor1);
this.Controls.Add(this.htmlPanel1);
this.Controls.Add(this.TxtFromCode);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmStrCount";
@@ -88,6 +92,6 @@
#endregion
private ryPaiban.Model.MenuRight menuRight1;
private ryControls.Controls.RichTextBox2 TxtFromCode;
private ryControls.HighlightEditor highlightEditor1;
private TheArtOfDev.HtmlRenderer.WinForms.HtmlPanel htmlPanel1;
}
}
+12 -12
View File
@@ -1,4 +1,5 @@
using ryControls;
using ryCommon;
using ryControls;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -16,23 +17,22 @@ namespace 开发辅助工具.Tools
public FrmStrCount()
{
InitializeComponent();
highlightEditor1.ReadOnly = true;
}
private void TxtFromCode_TextChanged(object sender, EventArgs e)
{
Manager.TotalCount totalCount = new Manager.TotalCount();
string fromText = TxtFromCode.Text;
int iCount = totalCount.GetByteLength(fromText, out int HanziCount, out int engCount, out int NumCount);
var count_info = fromText.GetCountInfo();
string resultStr;
resultStr = "字节数: " + iCount.ToString() + "个(汉字算两个字符)";
resultStr += "\r\n字数: " + fromText.Length.ToString() + "个(汉字算一个字符)";
resultStr += "\r\n汉字数: " + HanziCount.ToString() + "个(汉字算一个字符)";
resultStr += "\r\n英文数量: " + engCount.ToString() + "个";
resultStr += "\r\n数字数量: " + NumCount.ToString() + "个";
highlightEditor1.ReadOnly = false;
highlightEditor1.Text = resultStr;
highlightEditor1.ReadOnly = true;
resultStr =System.Web.HttpUtility.HtmlEncode("字节数: ") + "<span style='color:blue'><strong>" + count_info.TotalByteCount + "</strong></span>个(<span style='color:gray'>汉字算两个字符</span>)";
resultStr += "<br>"+ System.Web.HttpUtility.HtmlEncode("全部字数: ") + "<span style='color:blue'><strong>" + fromText.Length + "</strong></span>个(<span style='color:gray'>汉字算一个字符</span>)";
resultStr += "<br>" + System.Web.HttpUtility.HtmlEncode("可见字数: ") + "<span style='color:blue'><strong>" + count_info.VisibleTotalCount + "</strong></span>个(<span style='color:gray'>汉字算一个字符</span>)";
resultStr += "<br>" + System.Web.HttpUtility.HtmlEncode("汉字数: ") + "<span style='color:blue'><strong>" + count_info.HanziCount + "</strong></span>个(<span style='color:gray'>汉字算一个字符</span>)";
resultStr += "<br>" + System.Web.HttpUtility.HtmlEncode("英文单词数量: ") + "<span style='color:blue'><strong>" + count_info.EngWordCount + "</strong></span>个";
resultStr += "<br>" + System.Web.HttpUtility.HtmlEncode("英文字母数量: ") + "<span style='color:blue'><strong>" + count_info.EngLetterCount + "</strong></span>个";
resultStr += "<br>" + System.Web.HttpUtility.HtmlEncode("数字组数量: ") + "<span style='color:blue'><strong>" + count_info.NumWordCount + "</strong></span>个(<span style='color:gray'>一串数字算一个字符</span>)";
resultStr += "<br>" + System.Web.HttpUtility.HtmlEncode("数字字符数量: ") + "<span style='color:blue'><strong>" + count_info.NumCount + "</strong></span>个(<span style='color:gray'>一个数字算一个字符</span>)";
htmlPanel1.Text = resultStr;
}
private void FrmStrCount_Load(object sender, EventArgs e)
+2 -2
View File
@@ -34,7 +34,7 @@
this.RbStrToQuickJS = new System.Windows.Forms.RadioButton();
this.RbStrToASP = new System.Windows.Forms.RadioButton();
this.TxtFromCode = new ryControls.Controls.RichTextBox2();
this.highlightEditor1 = new ryControls.HighlightEditor();
this.highlightEditor1 = new ScintillaNETV2.Highlight.HighlightEditor();
this.SuspendLayout();
//
// RbStrToC
@@ -137,6 +137,6 @@
private System.Windows.Forms.RadioButton RbStrToQuickJS;
private System.Windows.Forms.RadioButton RbStrToASP;
private ryControls.Controls.RichTextBox2 TxtFromCode;
private ryControls.HighlightEditor highlightEditor1;
private ScintillaNETV2.Highlight.HighlightEditor highlightEditor1;
}
}
+271 -107
View File
@@ -35,7 +35,7 @@
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.RichHtml = new ryControls.Controls.RichTextBox2();
this.tabPage12 = new System.Windows.Forms.TabPage();
this.highlightEditor1 = new ryControls.HighlightEditor();
this.highlightEditor1 = new ScintillaNETV2.Highlight.HighlightEditor();
this.tabPage4 = new System.Windows.Forms.TabPage();
this.RichCookie = new ryControls.Controls.RichTextBox2();
this.tabPage5 = new System.Windows.Forms.TabPage();
@@ -46,18 +46,19 @@
this.extendedWebBrowser1 = new ExtendedWebBrowser2.ExtendedWebBrowser();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.TxtPost = new ryControls.HighlightEditor();
this.label1 = new System.Windows.Forms.Label();
this.TxtPost = new ScintillaNETV2.Highlight.HighlightEditor();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.TxtCookie = new ryControls.Controls.RichTextBox2();
this.tabPage7 = new System.Windows.Forms.TabPage();
this.TxtInputHeader = new ryControls.Controls.RichTextBox2();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.CbbReferer = new ryControls.RyComboBox();
this.CbbIp = new ryControls.RyComboBox();
this.CbbContentType = new ryControls.ComboBoxEx2();
this.CbbUserAgent = new ryControls.ComboBoxEx2();
this.CbbReferer = new ryControls.TextBoxEx2();
this.CbbIp = new ryControls.TextBoxEx2();
this.label6 = new System.Windows.Forms.Label();
this.CbbUserAgent = new ryControls.RyComboBox();
this.label7 = new System.Windows.Forms.Label();
this.CbbContentType = new ryControls.RyComboBox();
this.label11 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.groupBox1 = new System.Windows.Forms.GroupBox();
@@ -81,14 +82,22 @@
this.设置备注ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.TxtUrl = new ryControls.TextBoxEx2();
this.BtnCtreateCShape = new ryControls.ButtonEx();
this.BtnRunHtml = new ryControls.ButtonEx();
this.objectListView2 = new BrightIdeasSoftware.ObjectListView();
this.objectListView2 = new BrightIdeasSoftware.FastObjectListView();
this.OlvUrl = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.BtnMore = new ryControls.SuperPictureBox();
this.MenuMore = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.BtnSetting = new ryControls.SuperPictureBox();
this.BtnShare = new ryControls.SuperPictureBox();
this.RbHead = new System.Windows.Forms.RadioButton();
this.MenuSetting = new System.Windows.Forms.ContextMenuStrip(this.components);
this.生成代码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.生成curl代码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
this.导出当前设置ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.导入当前设置ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tabControl2.SuspendLayout();
this.tabPage3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
@@ -106,6 +115,9 @@
this.contextMenuStrip1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.BtnMore)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.BtnSetting)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.BtnShare)).BeginInit();
this.MenuSetting.SuspendLayout();
this.SuspendLayout();
//
// tabControl2
@@ -122,7 +134,7 @@
this.tabControl2.Location = new System.Drawing.Point(8, 288);
this.tabControl2.Name = "tabControl2";
this.tabControl2.SelectedIndex = 0;
this.tabControl2.Size = new System.Drawing.Size(889, 332);
this.tabControl2.Size = new System.Drawing.Size(896, 332);
this.tabControl2.TabIndex = 108;
//
// tabPage3
@@ -132,7 +144,7 @@
this.tabPage3.Location = new System.Drawing.Point(4, 22);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Padding = new System.Windows.Forms.Padding(3);
this.tabPage3.Size = new System.Drawing.Size(881, 306);
this.tabPage3.Size = new System.Drawing.Size(888, 306);
this.tabPage3.TabIndex = 0;
this.tabPage3.Text = "HTML";
this.tabPage3.UseVisualStyleBackColor = true;
@@ -142,7 +154,7 @@
this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.pictureBox1.Location = new System.Drawing.Point(3, 3);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(875, 300);
this.pictureBox1.Size = new System.Drawing.Size(882, 300);
this.pictureBox1.TabIndex = 1;
this.pictureBox1.TabStop = false;
this.pictureBox1.Visible = false;
@@ -158,10 +170,11 @@
this.RichHtml.Location = new System.Drawing.Point(3, 3);
this.RichHtml.Name = "RichHtml";
this.RichHtml.OnlyInputText = true;
this.RichHtml.Size = new System.Drawing.Size(875, 300);
this.RichHtml.ReadOnly = true;
this.RichHtml.Size = new System.Drawing.Size(882, 300);
this.RichHtml.TabIndex = 3;
this.RichHtml.Text = "";
this.RichHtml.WordWrap = false;
this.RichHtml.WordWrap = true;
//
// tabPage12
//
@@ -169,7 +182,7 @@
this.tabPage12.Location = new System.Drawing.Point(4, 22);
this.tabPage12.Name = "tabPage12";
this.tabPage12.Padding = new System.Windows.Forms.Padding(3);
this.tabPage12.Size = new System.Drawing.Size(881, 306);
this.tabPage12.Size = new System.Drawing.Size(888, 306);
this.tabPage12.TabIndex = 4;
this.tabPage12.Text = "HTML格式化";
this.tabPage12.UseVisualStyleBackColor = true;
@@ -177,6 +190,7 @@
// highlightEditor1
//
this.highlightEditor1.AutoMark = true;
this.highlightEditor1.CurHighliteLang = VPKSoft2.ScintillaLexers.LexerEnumerations.LexerType.Text;
this.highlightEditor1.Dock = System.Windows.Forms.DockStyle.Fill;
this.highlightEditor1.Font = new System.Drawing.Font("Consolas", 11.25F);
this.highlightEditor1.LineNumberOn = true;
@@ -184,7 +198,7 @@
this.highlightEditor1.Name = "highlightEditor1";
this.highlightEditor1.ReadOnly = true;
this.highlightEditor1.SelectedText = "";
this.highlightEditor1.Size = new System.Drawing.Size(875, 300);
this.highlightEditor1.Size = new System.Drawing.Size(882, 300);
this.highlightEditor1.TabIndex = 0;
this.highlightEditor1.UseCustomGotoLine = false;
this.highlightEditor1.UseCustomShowFindReplace = false;
@@ -195,7 +209,7 @@
this.tabPage4.Location = new System.Drawing.Point(4, 22);
this.tabPage4.Name = "tabPage4";
this.tabPage4.Padding = new System.Windows.Forms.Padding(3);
this.tabPage4.Size = new System.Drawing.Size(881, 306);
this.tabPage4.Size = new System.Drawing.Size(888, 306);
this.tabPage4.TabIndex = 1;
this.tabPage4.Text = "Cookie";
this.tabPage4.UseVisualStyleBackColor = true;
@@ -211,10 +225,11 @@
this.RichCookie.Location = new System.Drawing.Point(3, 3);
this.RichCookie.Name = "RichCookie";
this.RichCookie.OnlyInputText = true;
this.RichCookie.Size = new System.Drawing.Size(875, 300);
this.RichCookie.ReadOnly = true;
this.RichCookie.Size = new System.Drawing.Size(882, 300);
this.RichCookie.TabIndex = 4;
this.RichCookie.Text = "";
this.RichCookie.WordWrap = false;
this.RichCookie.WordWrap = true;
//
// tabPage5
//
@@ -222,7 +237,7 @@
this.tabPage5.Location = new System.Drawing.Point(4, 22);
this.tabPage5.Name = "tabPage5";
this.tabPage5.Padding = new System.Windows.Forms.Padding(3);
this.tabPage5.Size = new System.Drawing.Size(881, 306);
this.tabPage5.Size = new System.Drawing.Size(888, 306);
this.tabPage5.TabIndex = 2;
this.tabPage5.Text = "Status";
this.tabPage5.UseVisualStyleBackColor = true;
@@ -238,10 +253,11 @@
this.RichStatus.Location = new System.Drawing.Point(3, 3);
this.RichStatus.Name = "RichStatus";
this.RichStatus.OnlyInputText = true;
this.RichStatus.Size = new System.Drawing.Size(875, 300);
this.RichStatus.ReadOnly = true;
this.RichStatus.Size = new System.Drawing.Size(882, 300);
this.RichStatus.TabIndex = 5;
this.RichStatus.Text = "";
this.RichStatus.WordWrap = false;
this.RichStatus.WordWrap = true;
//
// tabPage6
//
@@ -249,7 +265,7 @@
this.tabPage6.Location = new System.Drawing.Point(4, 22);
this.tabPage6.Name = "tabPage6";
this.tabPage6.Padding = new System.Windows.Forms.Padding(3);
this.tabPage6.Size = new System.Drawing.Size(881, 306);
this.tabPage6.Size = new System.Drawing.Size(888, 306);
this.tabPage6.TabIndex = 3;
this.tabPage6.Text = "Header";
this.tabPage6.UseVisualStyleBackColor = true;
@@ -265,10 +281,11 @@
this.RichHeader.Location = new System.Drawing.Point(3, 3);
this.RichHeader.Name = "RichHeader";
this.RichHeader.OnlyInputText = true;
this.RichHeader.Size = new System.Drawing.Size(875, 300);
this.RichHeader.ReadOnly = true;
this.RichHeader.Size = new System.Drawing.Size(882, 300);
this.RichHeader.TabIndex = 6;
this.RichHeader.Text = "";
this.RichHeader.WordWrap = false;
this.RichHeader.WordWrap = true;
//
// tabPreview
//
@@ -276,7 +293,7 @@
this.tabPreview.Location = new System.Drawing.Point(4, 22);
this.tabPreview.Name = "tabPreview";
this.tabPreview.Padding = new System.Windows.Forms.Padding(3);
this.tabPreview.Size = new System.Drawing.Size(881, 306);
this.tabPreview.Size = new System.Drawing.Size(888, 306);
this.tabPreview.TabIndex = 5;
this.tabPreview.Text = "预览";
this.tabPreview.UseVisualStyleBackColor = true;
@@ -289,7 +306,7 @@
this.extendedWebBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
this.extendedWebBrowser1.Name = "extendedWebBrowser1";
this.extendedWebBrowser1.ScriptErrorsSuppressed = true;
this.extendedWebBrowser1.Size = new System.Drawing.Size(875, 300);
this.extendedWebBrowser1.Size = new System.Drawing.Size(882, 300);
this.extendedWebBrowser1.TabIndex = 2;
//
// tabControl1
@@ -302,27 +319,42 @@
this.tabControl1.Location = new System.Drawing.Point(10, 171);
this.tabControl1.Name = "tabControl1";
this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(887, 115);
this.tabControl1.Size = new System.Drawing.Size(894, 115);
this.tabControl1.TabIndex = 6;
//
// tabPage1
//
this.tabPage1.Controls.Add(this.label1);
this.tabPage1.Controls.Add(this.TxtPost);
this.tabPage1.Location = new System.Drawing.Point(4, 22);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(879, 89);
this.tabPage1.Size = new System.Drawing.Size(886, 89);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = "Post数据";
this.tabPage1.UseVisualStyleBackColor = true;
//
// label1
//
this.label1.AutoSize = true;
this.label1.BackColor = System.Drawing.Color.White;
this.label1.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.ForeColor = System.Drawing.Color.Gray;
this.label1.Location = new System.Drawing.Point(314, 39);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(189, 14);
this.label1.TabIndex = 4;
this.label1.Text = "当前模式下无法修改Post数据";
this.label1.Visible = false;
//
// TxtPost
//
this.TxtPost.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.TxtPost.AutoMark = true;
this.TxtPost.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.TxtPost.BorderStyle = ScintillaNETV2.BorderStyle.FixedSingle;
this.TxtPost.CurHighliteLang = VPKSoft2.ScintillaLexers.LexerEnumerations.LexerType.Text;
this.TxtPost.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.TxtPost.ImeMode = System.Windows.Forms.ImeMode.Close;
this.TxtPost.LineNumberOn = true;
@@ -330,10 +362,11 @@
this.TxtPost.Name = "TxtPost";
this.TxtPost.ReadOnly = false;
this.TxtPost.SelectedText = "";
this.TxtPost.Size = new System.Drawing.Size(873, 83);
this.TxtPost.Size = new System.Drawing.Size(880, 83);
this.TxtPost.TabIndex = 3;
this.TxtPost.UseCustomGotoLine = false;
this.TxtPost.UseCustomShowFindReplace = false;
this.TxtPost.EnabledChanged += new System.EventHandler(this.TxtPost_EnabledChanged);
this.TxtPost.TextChanged += new System.EventHandler(this.TxtPost_TextChanged);
this.TxtPost.DoubleClick += new System.EventHandler(this.TxtPost_DoubleClick);
//
@@ -343,7 +376,7 @@
this.tabPage2.Location = new System.Drawing.Point(4, 22);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(879, 89);
this.tabPage2.Size = new System.Drawing.Size(886, 89);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = "Cookie";
this.tabPage2.UseVisualStyleBackColor = true;
@@ -361,10 +394,10 @@
this.TxtCookie.Location = new System.Drawing.Point(2, 3);
this.TxtCookie.Name = "TxtCookie";
this.TxtCookie.OnlyInputText = true;
this.TxtCookie.Size = new System.Drawing.Size(862, 83);
this.TxtCookie.Size = new System.Drawing.Size(881, 83);
this.TxtCookie.TabIndex = 6;
this.TxtCookie.Text = "";
this.TxtCookie.WordWrap = false;
this.TxtCookie.WordWrap = true;
this.TxtCookie.TextChanged += new System.EventHandler(this.TxtCookie_TextChanged);
this.TxtCookie.DoubleClick += new System.EventHandler(this.TxtCookie_DoubleClick);
//
@@ -374,7 +407,7 @@
this.tabPage7.Location = new System.Drawing.Point(4, 22);
this.tabPage7.Name = "tabPage7";
this.tabPage7.Padding = new System.Windows.Forms.Padding(3);
this.tabPage7.Size = new System.Drawing.Size(879, 89);
this.tabPage7.Size = new System.Drawing.Size(886, 89);
this.tabPage7.TabIndex = 2;
this.tabPage7.Text = "Header";
this.tabPage7.UseVisualStyleBackColor = true;
@@ -392,10 +425,10 @@
this.TxtInputHeader.Location = new System.Drawing.Point(2, 3);
this.TxtInputHeader.Name = "TxtInputHeader";
this.TxtInputHeader.OnlyInputText = true;
this.TxtInputHeader.Size = new System.Drawing.Size(862, 83);
this.TxtInputHeader.Size = new System.Drawing.Size(881, 83);
this.TxtInputHeader.TabIndex = 7;
this.TxtInputHeader.Text = "";
this.TxtInputHeader.WordWrap = false;
this.TxtInputHeader.WordWrap = true;
this.TxtInputHeader.TextChanged += new System.EventHandler(this.TxtInputHeader_TextChanged);
this.TxtInputHeader.DoubleClick += new System.EventHandler(this.TxtCookie_DoubleClick);
//
@@ -403,12 +436,12 @@
//
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox2.Controls.Add(this.CbbContentType);
this.groupBox2.Controls.Add(this.CbbUserAgent);
this.groupBox2.Controls.Add(this.CbbReferer);
this.groupBox2.Controls.Add(this.CbbIp);
this.groupBox2.Controls.Add(this.label6);
this.groupBox2.Controls.Add(this.CbbUserAgent);
this.groupBox2.Controls.Add(this.label7);
this.groupBox2.Controls.Add(this.CbbContentType);
this.groupBox2.Controls.Add(this.label11);
this.groupBox2.Controls.Add(this.label8);
this.groupBox2.Location = new System.Drawing.Point(10, 90);
@@ -418,29 +451,91 @@
this.groupBox2.TabStop = false;
this.groupBox2.Text = "高级配置";
//
// CbbContentType
//
this.CbbContentType.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.CbbContentType.ButtonRoundBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.CbbContentType.EmptyText = "";
this.CbbContentType.Items.Add("text/html");
this.CbbContentType.Items.Add("application/x-www-form-urlencoded");
this.CbbContentType.Items.Add("application/json");
this.CbbContentType.Items.Add("text/json");
this.CbbContentType.Location = new System.Drawing.Point(86, 18);
this.CbbContentType.MaxPopupHeight = 0;
this.CbbContentType.MaxPopupWidth = 250;
this.CbbContentType.Name = "CbbContentType";
this.CbbContentType.SelectedIndex = -1;
this.CbbContentType.SelectedItem = null;
this.CbbContentType.Size = new System.Drawing.Size(205, 23);
this.CbbContentType.TabIndex = 304;
//
// CbbUserAgent
//
this.CbbUserAgent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.CbbUserAgent.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.CbbUserAgent.ButtonRoundBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.CbbUserAgent.EmptyText = "";
this.CbbUserAgent.Items.Add("Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)");
this.CbbUserAgent.Items.Add("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0");
this.CbbUserAgent.Items.Add("Mozilla/4.0 (compatible; MSIE 8.0; Windows NT6.0)");
this.CbbUserAgent.Items.Add("Opera/9.27 (Windows NT 5.2; U; zh-cn)");
this.CbbUserAgent.Location = new System.Drawing.Point(360, 18);
this.CbbUserAgent.MaxPopupHeight = 0;
this.CbbUserAgent.MaxPopupWidth = 0;
this.CbbUserAgent.Name = "CbbUserAgent";
this.CbbUserAgent.SelectedIndex = -1;
this.CbbUserAgent.SelectedItem = null;
this.CbbUserAgent.Size = new System.Drawing.Size(520, 23);
this.CbbUserAgent.TabIndex = 303;
//
// CbbReferer
//
this.CbbReferer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.CbbReferer.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.CbbReferer.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CbbReferer.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbReferer.FormattingEnabled = true;
this.CbbReferer.Location = new System.Drawing.Point(360, 45);
this.CbbReferer.BackColor = System.Drawing.Color.White;
this.CbbReferer.EmptyText = "引用页(可选)";
this.CbbReferer.ImeMode = System.Windows.Forms.ImeMode.Close;
this.CbbReferer.Location = new System.Drawing.Point(360, 46);
this.CbbReferer.LongTime = 2000;
this.CbbReferer.MaxLength = 999999999;
this.CbbReferer.MaxUndoRedoSteps = 50;
this.CbbReferer.Multiline = false;
this.CbbReferer.Name = "CbbReferer";
this.CbbReferer.Size = new System.Drawing.Size(520, 24);
this.CbbReferer.TabIndex = 6;
this.CbbReferer.OnlyNumeric = false;
this.CbbReferer.PasswordChar = '\0';
this.CbbReferer.ReadOnly = false;
this.CbbReferer.SelectedText = "";
this.CbbReferer.SelectionLength = 0;
this.CbbReferer.SelectionStart = 0;
this.CbbReferer.Size = new System.Drawing.Size(520, 23);
this.CbbReferer.TabIndex = 302;
this.CbbReferer.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.CbbReferer.ToolTip = "";
this.CbbReferer.WordWrap = true;
//
// CbbIp
//
this.CbbIp.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.CbbIp.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CbbIp.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbIp.FormattingEnabled = true;
this.CbbIp.BackColor = System.Drawing.Color.White;
this.CbbIp.EmptyText = "代理IP可为空";
this.CbbIp.ImeMode = System.Windows.Forms.ImeMode.Close;
this.CbbIp.Location = new System.Drawing.Point(86, 46);
this.CbbIp.LongTime = 2000;
this.CbbIp.MaxLength = 999999999;
this.CbbIp.MaxUndoRedoSteps = 50;
this.CbbIp.Multiline = false;
this.CbbIp.Name = "CbbIp";
this.CbbIp.Size = new System.Drawing.Size(205, 22);
this.CbbIp.TabIndex = 5;
this.CbbIp.OnlyNumeric = false;
this.CbbIp.PasswordChar = '\0';
this.CbbIp.ReadOnly = false;
this.CbbIp.SelectedText = "";
this.CbbIp.SelectionLength = 0;
this.CbbIp.SelectionStart = 0;
this.CbbIp.Size = new System.Drawing.Size(205, 23);
this.CbbIp.TabIndex = 301;
this.CbbIp.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.CbbIp.ToolTip = "";
this.CbbIp.WordWrap = true;
//
// label6
//
@@ -451,24 +546,6 @@
this.label6.TabIndex = 4;
this.label6.Text = "代理IP";
//
// CbbUserAgent
//
this.CbbUserAgent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.CbbUserAgent.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.CbbUserAgent.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CbbUserAgent.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbUserAgent.FormattingEnabled = true;
this.CbbUserAgent.Items.AddRange(new object[] {
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0",
"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT6.0)",
"Opera/9.27 (Windows NT 5.2; U; zh-cn)"});
this.CbbUserAgent.Location = new System.Drawing.Point(360, 18);
this.CbbUserAgent.Name = "CbbUserAgent";
this.CbbUserAgent.Size = new System.Drawing.Size(520, 22);
this.CbbUserAgent.TabIndex = 300;
//
// label7
//
this.label7.AutoSize = true;
@@ -478,22 +555,6 @@
this.label7.TabIndex = 2;
this.label7.Text = "UserAgent";
//
// CbbContentType
//
this.CbbContentType.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.CbbContentType.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CbbContentType.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbContentType.FormattingEnabled = true;
this.CbbContentType.Items.AddRange(new object[] {
"text/html",
"application/x-www-form-urlencoded",
"application/json",
"text/json"});
this.CbbContentType.Location = new System.Drawing.Point(86, 18);
this.CbbContentType.Name = "CbbContentType";
this.CbbContentType.Size = new System.Drawing.Size(205, 22);
this.CbbContentType.TabIndex = 1;
//
// label11
//
this.label11.AutoSize = true;
@@ -593,6 +654,7 @@
"10秒",
"5秒"});
this.CbbWriteTimeout.Location = new System.Drawing.Point(393, 18);
this.CbbWriteTimeout.MaxUndoRedoSteps = 50;
this.CbbWriteTimeout.Name = "CbbWriteTimeout";
this.CbbWriteTimeout.Size = new System.Drawing.Size(74, 22);
this.CbbWriteTimeout.TabIndex = 5;
@@ -620,6 +682,7 @@
"10秒",
"5秒"});
this.CbbTimeout.Location = new System.Drawing.Point(256, 18);
this.CbbTimeout.MaxUndoRedoSteps = 50;
this.CbbTimeout.Name = "CbbTimeout";
this.CbbTimeout.Size = new System.Drawing.Size(74, 22);
this.CbbTimeout.TabIndex = 3;
@@ -648,6 +711,7 @@
"Unicode",
"iso-8859-1"});
this.CbbEncoding.Location = new System.Drawing.Point(70, 18);
this.CbbEncoding.MaxUndoRedoSteps = 50;
this.CbbEncoding.Name = "CbbEncoding";
this.CbbEncoding.Size = new System.Drawing.Size(121, 22);
this.CbbEncoding.TabIndex = 1;
@@ -743,7 +807,9 @@
this.TxtUrl.EmptyText = "请填写请求url";
this.TxtUrl.ImeMode = System.Windows.Forms.ImeMode.Close;
this.TxtUrl.Location = new System.Drawing.Point(45, 6);
this.TxtUrl.LongTime = 2000;
this.TxtUrl.MaxLength = 999999999;
this.TxtUrl.MaxUndoRedoSteps = 50;
this.TxtUrl.Multiline = false;
this.TxtUrl.Name = "TxtUrl";
this.TxtUrl.OnlyNumeric = false;
@@ -761,21 +827,10 @@
this.TxtUrl.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtUrl_KeyDown);
this.TxtUrl.Leave += new System.EventHandler(this.TxtUrl_Leave);
//
// BtnCtreateCShape
//
this.BtnCtreateCShape.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnCtreateCShape.Location = new System.Drawing.Point(812, 6);
this.BtnCtreateCShape.Name = "BtnCtreateCShape";
this.BtnCtreateCShape.Size = new System.Drawing.Size(82, 26);
this.BtnCtreateCShape.TabIndex = 111;
this.BtnCtreateCShape.Text = "生成代码";
this.BtnCtreateCShape.UseVisualStyleBackColor = true;
this.BtnCtreateCShape.Click += new System.EventHandler(this.BtnCtreateCShape_Click);
//
// BtnRunHtml
//
this.BtnRunHtml.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnRunHtml.Location = new System.Drawing.Point(723, 6);
this.BtnRunHtml.Location = new System.Drawing.Point(735, 6);
this.BtnRunHtml.Name = "BtnRunHtml";
this.BtnRunHtml.Size = new System.Drawing.Size(82, 26);
this.BtnRunHtml.TabIndex = 104;
@@ -798,13 +853,14 @@
this.objectListView2.Location = new System.Drawing.Point(45, 30);
this.objectListView2.MultiSelect = false;
this.objectListView2.Name = "objectListView2";
this.objectListView2.RowHeight = 25;
this.objectListView2.ShowGroups = false;
this.objectListView2.ShowItemToolTips = true;
this.objectListView2.Size = new System.Drawing.Size(653, 323);
this.objectListView2.TabIndex = 113;
this.objectListView2.UseCompatibleStateImageBehavior = false;
this.objectListView2.UseHotItem = true;
this.objectListView2.View = System.Windows.Forms.View.Details;
this.objectListView2.VirtualMode = true;
this.objectListView2.Visible = false;
this.objectListView2.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Table1_KeyDown);
this.objectListView2.Leave += new System.EventHandler(this.Table1_Leave);
@@ -840,15 +896,102 @@
this.MenuMore.Name = "MenuMore";
this.MenuMore.Size = new System.Drawing.Size(61, 4);
//
// BtnSetting
//
this.BtnSetting.Cursor = System.Windows.Forms.Cursors.Hand;
this.BtnSetting.Image = ((System.Drawing.Image)(resources.GetObject("BtnSetting.Image")));
this.BtnSetting.ImageDomain = null;
this.BtnSetting.ImageResFolder = null;
this.BtnSetting.Location = new System.Drawing.Point(823, 11);
this.BtnSetting.Name = "BtnSetting";
this.BtnSetting.Size = new System.Drawing.Size(20, 18);
this.BtnSetting.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.BtnSetting.TabIndex = 116;
this.BtnSetting.TabStop = false;
this.toolTip1.SetToolTip(this.BtnSetting, "更多选项");
this.BtnSetting.Click += new System.EventHandler(this.BtnSetting_Click);
//
// BtnShare
//
this.BtnShare.Cursor = System.Windows.Forms.Cursors.Hand;
this.BtnShare.Image = ((System.Drawing.Image)(resources.GetObject("BtnShare.Image")));
this.BtnShare.ImageDomain = null;
this.BtnShare.ImageResFolder = null;
this.BtnShare.Location = new System.Drawing.Point(849, 11);
this.BtnShare.Name = "BtnShare";
this.BtnShare.Size = new System.Drawing.Size(20, 18);
this.BtnShare.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.BtnShare.TabIndex = 117;
this.BtnShare.TabStop = false;
this.toolTip1.SetToolTip(this.BtnShare, "分享当前页面数据给别人");
this.BtnShare.Click += new System.EventHandler(this.BtnShare_Click);
//
// RbHead
//
this.RbHead.AutoSize = true;
this.RbHead.Location = new System.Drawing.Point(682, 10);
this.RbHead.Name = "RbHead";
this.RbHead.Size = new System.Drawing.Size(47, 16);
this.RbHead.TabIndex = 115;
this.RbHead.Text = "Head";
this.RbHead.UseVisualStyleBackColor = true;
this.RbHead.CheckedChanged += new System.EventHandler(this.RbHead_CheckedChanged);
//
// MenuSetting
//
this.MenuSetting.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.生成代码ToolStripMenuItem,
this.生成curl代码ToolStripMenuItem,
this.toolStripMenuItem2,
this.导出当前设置ToolStripMenuItem,
this.导入当前设置ToolStripMenuItem});
this.MenuSetting.Name = "MenuMore";
this.MenuSetting.Size = new System.Drawing.Size(185, 98);
//
// 生成代码ToolStripMenuItem
//
this.生成代码ToolStripMenuItem.Name = "生成代码ToolStripMenuItem";
this.生成代码ToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
this.生成代码ToolStripMenuItem.Text = "生成C#代码";
this.生成代码ToolStripMenuItem.Click += new System.EventHandler(this.生成代码ToolStripMenuItem_Click);
//
// 生成curl代码ToolStripMenuItem
//
this.生成curl代码ToolStripMenuItem.Name = "生成curl代码ToolStripMenuItem";
this.生成curl代码ToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
this.生成curl代码ToolStripMenuItem.Text = "生成curl代码";
this.生成curl代码ToolStripMenuItem.Click += new System.EventHandler(this.生成curl代码ToolStripMenuItem_Click);
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(181, 6);
//
// 导出当前设置ToolStripMenuItem
//
this.导出当前设置ToolStripMenuItem.Name = "导出当前设置ToolStripMenuItem";
this.导出当前设置ToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
this.导出当前设置ToolStripMenuItem.Text = "分享当前设置给别人";
this.导出当前设置ToolStripMenuItem.Click += new System.EventHandler(this.导出当前设置ToolStripMenuItem_Click);
//
// 导入当前设置ToolStripMenuItem
//
this.导入当前设置ToolStripMenuItem.Name = "导入当前设置ToolStripMenuItem";
this.导入当前设置ToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
this.导入当前设置ToolStripMenuItem.Text = "导入别人的分享链接";
this.导入当前设置ToolStripMenuItem.Click += new System.EventHandler(this.导入当前设置ToolStripMenuItem_Click);
//
// FrmWebGet
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(909, 620);
this.Controls.Add(this.BtnShare);
this.Controls.Add(this.BtnSetting);
this.Controls.Add(this.RbHead);
this.Controls.Add(this.tabControl1);
this.Controls.Add(this.BtnMore);
this.Controls.Add(this.TxtUrl);
this.Controls.Add(this.BtnCtreateCShape);
this.Controls.Add(this.tabControl2);
this.Controls.Add(this.groupBox2);
this.Controls.Add(this.groupBox1);
@@ -857,10 +1000,18 @@
this.Controls.Add(this.RbGet);
this.Controls.Add(this.label2);
this.Controls.Add(this.objectListView2);
this.DockAreas = ((WeifenLuo.WinFormsUI.Docking.DockAreas)((((((WeifenLuo.WinFormsUI.Docking.DockAreas.Float | WeifenLuo.WinFormsUI.Docking.DockAreas.DockLeft)
| WeifenLuo.WinFormsUI.Docking.DockAreas.DockRight)
| WeifenLuo.WinFormsUI.Docking.DockAreas.DockTop)
| WeifenLuo.WinFormsUI.Docking.DockAreas.DockBottom)
| WeifenLuo.WinFormsUI.Docking.DockAreas.Document)));
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmWebGet";
this.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Unknown;
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show;
this.TabPageContextMenuStrip = this.menuRight1;
this.Text = "网页抓取工具";
this.Activated += new System.EventHandler(this.FrmWebGet_Activated);
this.Load += new System.EventHandler(this.FrmWebGet_Load);
this.Click += new System.EventHandler(this.FrmWebGet_Click);
this.tabControl2.ResumeLayout(false);
@@ -873,6 +1024,7 @@
this.tabPreview.ResumeLayout(false);
this.tabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false);
this.tabPage1.PerformLayout();
this.tabPage2.ResumeLayout(false);
this.tabPage7.ResumeLayout(false);
this.groupBox2.ResumeLayout(false);
@@ -882,6 +1034,9 @@
this.contextMenuStrip1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.BtnMore)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.BtnSetting)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.BtnShare)).EndInit();
this.MenuSetting.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
@@ -896,12 +1051,8 @@
private System.Windows.Forms.TabPage tabPage5;
private System.Windows.Forms.TabPage tabPage6;
private System.Windows.Forms.GroupBox groupBox2;
private ryControls.RyComboBox CbbReferer;
private ryControls.RyComboBox CbbIp;
private System.Windows.Forms.Label label6;
private ryControls.RyComboBox CbbUserAgent;
private System.Windows.Forms.Label label7;
private ryControls.RyComboBox CbbContentType;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.GroupBox groupBox1;
@@ -919,7 +1070,6 @@
private ryControls.TextBoxEx2 TxtUrl;
private System.Windows.Forms.Label label2;
private ryPaiban.Model.MenuRight menuRight1;
private ryControls.ButtonEx BtnCtreateCShape;
private System.Windows.Forms.TabControl tabControl1;
private System.Windows.Forms.TabPage tabPage1;
private System.Windows.Forms.TabPage tabPage2;
@@ -930,7 +1080,7 @@
private ExtendedWebBrowser2.ExtendedWebBrowser extendedWebBrowser1;
private System.Windows.Forms.CheckBox ChkHtmlPreview;
private System.Windows.Forms.CheckBox ChkNoPreview;
private BrightIdeasSoftware.ObjectListView objectListView2;
private BrightIdeasSoftware.FastObjectListView objectListView2;
private BrightIdeasSoftware.OLVColumn OlvUrl;
private BrightIdeasSoftware.OLVColumn OlvName;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
@@ -942,10 +1092,24 @@
private System.Windows.Forms.ToolStripMenuItem 删除该项ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem 设置备注ToolStripMenuItem;
private ryControls.HighlightEditor highlightEditor1;
private ScintillaNETV2.Highlight.HighlightEditor highlightEditor1;
private ryControls.SuperPictureBox BtnMore;
private System.Windows.Forms.ContextMenuStrip MenuMore;
private System.Windows.Forms.ToolTip toolTip1;
private ryControls.HighlightEditor TxtPost;
private ScintillaNETV2.Highlight.HighlightEditor TxtPost;
private System.Windows.Forms.RadioButton RbHead;
private ryControls.SuperPictureBox BtnSetting;
private System.Windows.Forms.ContextMenuStrip MenuSetting;
private System.Windows.Forms.ToolStripMenuItem 生成代码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 导出当前设置ToolStripMenuItem;
public System.Windows.Forms.ToolStripMenuItem 导入当前设置ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
private ryControls.SuperPictureBox BtnShare;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ToolStripMenuItem 生成curl代码ToolStripMenuItem;
private ryControls.TextBoxEx2 CbbIp;
private ryControls.TextBoxEx2 CbbReferer;
private ryControls.ComboBoxEx2 CbbUserAgent;
private ryControls.ComboBoxEx2 CbbContentType;
}
}
File diff suppressed because it is too large. Load diff
+42 -10
View File
@@ -126,16 +126,16 @@
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="BtnMore.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAfJJREFUWEe9
VU1LxDAQ7dVf4GUvy+ZrFQWxTVwEEcGDIHgQj4InD/4JURQEUURRFARBUPQXeRAEwYMgeBAED4JO6my6
29Zs2m32wUAzL8m8adK+QGO00SKETDbigWfU62qYczVeq7WG4gQhaoQz+aODMbkZJz1B0HA5qRVtxEnd
eTvpUwR0vcSo/E7qqFWkgkAX9SlCULkI+34lNdQdUgl8iWAsXOBUfpq9ubxBKouqRTSpmod9Pjr2vEbq
f1QlAjqdg/XvyT7qCqne6FdEk0YzsO6tY49LpNxRVgTn4TTc9tdkXXSBVHEUFUHplIJ5L2YNlWdIlYer
CDjzEOK5Y94JUv2jlwhCwgnIP5k5VB0hVR3+EyFEawyeH9t5weRBvMAH8kTAX+3B5Hi0j1OLQZBwVgcO
rUiLMEHlHk6xQpufoNEaDvUrlKy9iWDRFqatyHkTu0hZAZd0xdSiaj1Opt0QJu3ERA8YEVRtY8qKzuI6
rG7o+jr1Ony0Il3cyQ1LX6gUMsWLuCF8UodIlUK283JueIxUIeSceXk3hDM7RcoJOZ3374aw6TlSVmQ7
r9ANIaydZDr344b5Z5nt3KMbQnTd5mzng3HDW51PFx+oG0Lcd40r+nlZkSPiLxx/35Ug5zic3LBSGBGO
bugFWgQ+lkQQ/AJUtHba3NGRcAAAAABJRU5ErkJggg==
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAeFJREFUWEe9
ldErBFEYxefVX+BlX7Rzv+8iSma+a1OS8qCUB3lUnjz4J0SUEomIUkoRf5EHpZQHpTwo5UHRLDszzt7d
vbPu7K+mdr85954zs7NzgiAIguFqLQzD8WryuWwGBkw/sxmtVGp99UEYmiEm+UoOIlnHBT7RKlrMvOK1
+jC58sawzBDMZoGUfGY+Zjk9mZiWGUIrmWeSj8zD3KCmtBBE0RwreU/3ZrlCTYrvEIPKzDLJW27PS9Q0
4SsEs8wwyWu2j7lATUv+G2JQxVNM8pLb4xw1Hek2BHM0SUqes3XxGWqcKRpCqQnDJE/pGiUnqCmMawhm
iZjlMac7Qk3XdAoRhtEYkzxkV24O8ue90CqE1rURIrlvzDXJHq71hi0Ek7lLZxzv4hondBhNJwfObWCI
7LbLDmptJOWnVbySDrQWym5fvPFH3QIMQSTbqLHBLEuplzKr9SG2IbNs4UIbaQhlNvGcjbz5T+g2beh6
O/Hf0Ao0d2rDrh8ooMm8SBtqkn3UFKHJvMs2PESNC2j+rzZkMseoaQeae2lDZjlFjQ0099qGna4EzUtq
Q/tviealtiE+zWjeqza8TuZo3tM2ZJLbP989vbzaYgnxe9vdXt9ewBCubeiVom1YCq5t2I5vVLR22kys
XlkAAAAASUVORK5CYII=
</value>
</data>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@@ -144,6 +144,38 @@
<metadata name="MenuMore.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>306, 17</value>
</metadata>
<data name="BtnSetting.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAj9JREFUWEft
lkuoTVEcxn/yHChiQl2lGFCUMFCkqy4DypRkYCBGYiBMlCgxcIuJjOQO7uBmxERCEiVJJMqjGEhRyCtJ
Hn21zmn19d/nrr3O1K++wdnn+397rbXXC8qYCGwHHgJ/gdNuSEwArgAvgVPAWjfUcie9ONd6NwFbAt9e
N9XwKQj+BuwBZqWe6+V65r6LHlbD/SC4VLs8rIZnQXCptnpYWzTEHtpGZz2wDWuymV+rP8BOD46YCjwH
fgK3gHtBWD96BJwE7qbfo96AQ0FRk94A+4FBYAYwAGwEjgHfA3+TNucNKJ1o54HpeaGhxtwM6iIpq8uP
wOAazgt6oJ3zWlDvepAXHQ8MuV4Ak/KCcZg7Tqd+RZNzJfAkMEu73VzAuSBHegUscHOHpUGBNMeNBWhi
eo60wo3OayvQ0qxhcfByTfaeTA6+nTYTTay2LA8aoE/ck4NBkbTIjQVsC3KkVW4UU4DDgbmjo15QwOUg
R3oHrHbz7cCY6zMw24t6oBXlGa59ecHXwOC6DkzLixrQitFS83qXzpwuusu5IdJjYFleaGh/fx/URdLh
1GVdYGiSVsWFtM51IEm6eFwNvE36DSzJGyBOpGHWrfcIMBYU1kjLWsevMkeAG+mWXcSZILCNPgILPbQN
Ono1XB5cKi3tvvkSBJdKm1FfzA9Ccz0F3gbPO+p7BHYEoZLuj9psOmwCPgS+S5mnCm08frvRJ5nnxnSL
zn1q0AY31aIeqje67w35nxkHkkdnx0z/8z/OP/FHzL6w8yGpAAAAAElFTkSuQmCC
</value>
</data>
<data name="BtnShare.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAAglJREFUaEPt
mettwzAMhD1KR8koziQdpSMEcAbwKB6lBcU8HIqUdBKlGEU+gH/aUrqjaVp2p+nDh07M1+9pXn6m87JN
5+W3IDbOuXzJpcYyX0+KuPIgE61UF4E2l4JqopVwJdFCkGsppC42uTTMvZBQS56XVRGDB1w5hX0nFJnw
qr6HeCJu5TVtwr5xabKc5J+7QsLmZX70PU8+rRsSJmLHvhWVBMHQiL7HppsYYYCuJIuO98FCMdHbgN4S
LSFM9DJArSLX9IyHiR4G/KuuxcqbeRrgkTxQfNjUyQCLRycLHjQMXjd2MjCi8qomDwP14tdQ0RC3h5m1
Fg0FlVYDVr4WLHaOZ/kObb3kiUBL4KS8gZJzFFc3IUAg9WRzZQJiwLrcD+GJSlvs9WTFE7UG7ENg4uBV
AOsBDpK1BrSRmcspgU+nheKJGgNx7wMV86bKwEvO7qn4DmoMHEY8gRp4tk/7C7wLsIH7lGiYNCU8XzUz
9xZqgH+XWbQR+XyxtAQQA+ElXPm5J/GEu+nxOAuZizhi6rH2NhM0A537nkD0BOCEzsB64ITOwHrghM7A
euCEzsB64ITOwHrghM7AeqwvaNHni0FY31BtA+abFcUaEkeFPEK8GkgcX7S3q6NFEnYfJx0lSF+W416F
wveOUd82saB7MNH7GtxO7zdS1DYpwr+FlEnRNTKfHf8bf6XooWOz/B1WAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="MenuSetting.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>524, 17</value>
</metadata>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIABiAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
+130 -50
View File
@@ -31,13 +31,17 @@
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmXpath));
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.TxtXML = new ryControls.Controls.RichTextBox2();
this.TxtXML = new ScintillaNETV2.Highlight.HighlightEditor();
this.panelEx1 = new ryControls.PanelEx();
this.RySearchXpath = new ryControls.rySearch();
this.htmlPanel1 = new TheArtOfDev.HtmlRenderer.WinForms.HtmlPanel();
this.label1 = new System.Windows.Forms.Label();
this.CbbXMLType = new ryControls.RyComboBox();
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.highlightEditor1 = new ryControls.HighlightEditor();
this.treeRenderer1 = new BrightIdeasSoftware.TreeListView.TreeRenderer();
this.BtnGet = new ryControls.ButtonEx();
this.label2 = new System.Windows.Forms.Label();
this.RichXpath = new ryControls.TextBoxEx2();
this.RichAttr = new ryControls.TextBoxEx2();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
@@ -50,7 +54,7 @@
this.splitContainer1.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.splitContainer1.Location = new System.Drawing.Point(10, 33);
this.splitContainer1.Location = new System.Drawing.Point(10, 41);
this.splitContainer1.Name = "splitContainer1";
this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
//
@@ -61,29 +65,27 @@
// splitContainer1.Panel2
//
this.splitContainer1.Panel2.Controls.Add(this.panelEx1);
this.splitContainer1.Size = new System.Drawing.Size(875, 471);
this.splitContainer1.SplitterDistance = 143;
this.splitContainer1.Size = new System.Drawing.Size(955, 463);
this.splitContainer1.SplitterDistance = 140;
this.splitContainer1.SplitterWidth = 2;
this.splitContainer1.TabIndex = 13;
//
// TxtXML
//
this.TxtXML.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.TxtXML.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtXML.DetectUrls = false;
this.TxtXML.EmptyText = "待匹配的XML、HTML或Json内容";
this.TxtXML.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtXML.ForeColor = System.Drawing.Color.Black;
this.TxtXML.Location = new System.Drawing.Point(3, 3);
this.TxtXML.AutoMark = true;
this.TxtXML.CurHighliteLang = VPKSoft2.ScintillaLexers.LexerEnumerations.LexerType.Text;
this.TxtXML.Dock = System.Windows.Forms.DockStyle.Fill;
this.TxtXML.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.TxtXML.LineNumberOn = true;
this.TxtXML.Location = new System.Drawing.Point(0, 0);
this.TxtXML.Name = "TxtXML";
this.TxtXML.OnlyInputText = true;
this.TxtXML.Size = new System.Drawing.Size(868, 137);
this.TxtXML.TabIndex = 32;
this.TxtXML.Text = "";
this.TxtXML.WordWrap = false;
this.TxtXML.DoubleClick += new System.EventHandler(this.TxtXML_DoubleClick);
this.TxtXML.ReadOnly = false;
this.TxtXML.SelectedText = "";
this.TxtXML.Size = new System.Drawing.Size(955, 140);
this.TxtXML.TabIndex = 33;
this.TxtXML.UseCustomGotoLine = false;
this.TxtXML.UseCustomShowFindReplace = false;
this.TxtXML.TextChanged += new System.EventHandler(this.TxtXML_TextChanged);
//
// panelEx1
//
@@ -91,33 +93,32 @@
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panelEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(213)))), ((int)(((byte)(216)))), ((int)(((byte)(223)))));
this.panelEx1.Controls.Add(this.highlightEditor1);
this.panelEx1.Controls.Add(this.htmlPanel1);
this.panelEx1.Location = new System.Drawing.Point(2, 3);
this.panelEx1.Name = "panelEx1";
this.panelEx1.Padding = new System.Windows.Forms.Padding(2);
this.panelEx1.RoundeStyle = ryControls.RoundStyle.None;
this.panelEx1.Size = new System.Drawing.Size(869, 328);
this.panelEx1.Size = new System.Drawing.Size(949, 347);
this.panelEx1.TabIndex = 8;
this.panelEx1.TileBackColor = System.Drawing.Color.White;
//
// RySearchXpath
// htmlPanel1
//
this.RySearchXpath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.RySearchXpath.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.RySearchXpath.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.RySearchXpath.ButtonRoundBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.RySearchXpath.EmptyText = "";
this.RySearchXpath.Location = new System.Drawing.Point(179, 3);
this.RySearchXpath.Name = "RySearchXpath";
this.RySearchXpath.Size = new System.Drawing.Size(707, 25);
this.RySearchXpath.TabIndex = 12;
this.RySearchXpath.OnSearch += new System.EventHandler(this.RySearchXpath_OnSearch);
this.htmlPanel1.AutoScroll = true;
this.htmlPanel1.BackColor = System.Drawing.SystemColors.Window;
this.htmlPanel1.BaseStylesheet = null;
this.htmlPanel1.Cursor = System.Windows.Forms.Cursors.IBeam;
this.htmlPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.htmlPanel1.Location = new System.Drawing.Point(2, 2);
this.htmlPanel1.Name = "htmlPanel1";
this.htmlPanel1.Size = new System.Drawing.Size(945, 343);
this.htmlPanel1.TabIndex = 1;
this.htmlPanel1.Text = null;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(102, 8);
this.label1.Location = new System.Drawing.Point(116, 15);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(71, 12);
this.label1.TabIndex = 11;
@@ -128,15 +129,15 @@
this.CbbXMLType.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.CbbXMLType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CbbXMLType.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.CbbXMLType.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbXMLType.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.CbbXMLType.FormattingEnabled = true;
this.CbbXMLType.Items.AddRange(new object[] {
"XML内容",
"Html内容",
"JSon内容"});
this.CbbXMLType.Location = new System.Drawing.Point(11, 3);
this.CbbXMLType.Location = new System.Drawing.Point(11, 8);
this.CbbXMLType.Name = "CbbXMLType";
this.CbbXMLType.Size = new System.Drawing.Size(85, 24);
this.CbbXMLType.Size = new System.Drawing.Size(99, 27);
this.CbbXMLType.TabIndex = 10;
this.CbbXMLType.SelectedIndexChanged += new System.EventHandler(this.CbbXMLType_SelectedIndexChanged);
//
@@ -146,21 +147,96 @@
this.menuRight1.Size = new System.Drawing.Size(185, 92);
this.menuRight1.SourceContent = this;
//
// highlightEditor1
// treeRenderer1
//
this.highlightEditor1.Dock = System.Windows.Forms.DockStyle.Fill;
this.highlightEditor1.Location = new System.Drawing.Point(2, 2);
this.highlightEditor1.Name = "highlightEditor1";
this.highlightEditor1.Size = new System.Drawing.Size(865, 324);
this.highlightEditor1.TabIndex = 0;
this.treeRenderer1.IsShowGlyphs = true;
this.treeRenderer1.IsShowLines = true;
this.treeRenderer1.UseTriangles = false;
//
// BtnGet
//
this.BtnGet.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.BtnGet.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnGet.Location = new System.Drawing.Point(896, 5);
this.BtnGet.Name = "BtnGet";
this.BtnGet.Size = new System.Drawing.Size(70, 32);
this.BtnGet.TabIndex = 35;
this.BtnGet.Text = "获取";
this.BtnGet.UseVisualStyleBackColor = true;
this.BtnGet.Click += new System.EventHandler(this.BtnGet_Click);
//
// label2
//
this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(748, 15);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(29, 12);
this.label2.TabIndex = 36;
this.label2.Text = "属性";
//
// RichXpath
//
this.RichXpath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.RichXpath.BackColor = System.Drawing.Color.White;
this.RichXpath.EmptyText = "";
this.RichXpath.Location = new System.Drawing.Point(193, 8);
this.RichXpath.LongTime = 2000;
this.RichXpath.MaxLength = 999999999;
this.RichXpath.MaxUndoRedoSteps = 50;
this.RichXpath.Multiline = false;
this.RichXpath.Name = "RichXpath";
this.RichXpath.OnlyNumeric = false;
this.RichXpath.PasswordChar = '\0';
this.RichXpath.ReadOnly = false;
this.RichXpath.SelectedText = "";
this.RichXpath.SelectionLength = 0;
this.RichXpath.SelectionStart = 0;
this.RichXpath.Size = new System.Drawing.Size(549, 27);
this.RichXpath.TabIndex = 34;
this.RichXpath.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.RichXpath.ToolTip = "";
this.RichXpath.WordWrap = true;
this.RichXpath.LongTimeNoChanged += new System.EventHandler(this.RichXpath_LongTimeNoChanged);
this.RichXpath.TextChanged2 += new System.EventHandler(this.RichXpath_TextChanged);
this.RichXpath.KeyDown += new System.Windows.Forms.KeyEventHandler(this.RichXpath_KeyDown);
//
// RichAttr
//
this.RichAttr.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.RichAttr.BackColor = System.Drawing.Color.White;
this.RichAttr.EmptyText = "";
this.RichAttr.Location = new System.Drawing.Point(783, 8);
this.RichAttr.LongTime = 2000;
this.RichAttr.MaxLength = 999999999;
this.RichAttr.MaxUndoRedoSteps = 50;
this.RichAttr.Multiline = false;
this.RichAttr.Name = "RichAttr";
this.RichAttr.OnlyNumeric = false;
this.RichAttr.PasswordChar = '\0';
this.RichAttr.ReadOnly = false;
this.RichAttr.SelectedText = "";
this.RichAttr.SelectionLength = 0;
this.RichAttr.SelectionStart = 0;
this.RichAttr.Size = new System.Drawing.Size(107, 27);
this.RichAttr.TabIndex = 35;
this.RichAttr.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.RichAttr.ToolTip = "";
this.RichAttr.WordWrap = true;
this.RichAttr.LongTimeNoChanged += new System.EventHandler(this.RichAttr_LongTimeNoChanged);
this.RichAttr.KeyDown += new System.Windows.Forms.KeyEventHandler(this.RichAttr_KeyDown);
//
// FrmXpath
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(894, 509);
this.ClientSize = new System.Drawing.Size(974, 509);
this.Controls.Add(this.RichAttr);
this.Controls.Add(this.RichXpath);
this.Controls.Add(this.label2);
this.Controls.Add(this.BtnGet);
this.Controls.Add(this.splitContainer1);
this.Controls.Add(this.RySearchXpath);
this.Controls.Add(this.label1);
this.Controls.Add(this.CbbXMLType);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
@@ -182,11 +258,15 @@
private System.Windows.Forms.SplitContainer splitContainer1;
private ryControls.PanelEx panelEx1;
private ryControls.rySearch RySearchXpath;
private System.Windows.Forms.Label label1;
private ryControls.RyComboBox CbbXMLType;
private ryPaiban.Model.MenuRight menuRight1;
private ryControls.Controls.RichTextBox2 TxtXML;
private ryControls.HighlightEditor highlightEditor1;
private TheArtOfDev.HtmlRenderer.WinForms.HtmlPanel htmlPanel1;
private BrightIdeasSoftware.TreeListView.TreeRenderer treeRenderer1;
private ScintillaNETV2.Highlight.HighlightEditor TxtXML;
private ryControls.ButtonEx BtnGet;
private System.Windows.Forms.Label label2;
private ryControls.TextBoxEx2 RichAttr;
private ryControls.TextBoxEx2 RichXpath;
}
}
+177 -61
View File
@@ -1,6 +1,7 @@
using HtmlAgilityPack;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using ryControls;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -10,7 +11,9 @@ using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Windows.Forms;
using System.Xml;
using WeifenLuo.WinFormsUI.Docking;
using static System.Net.Mime.MediaTypeNames;
namespace 开发辅助工具.Tools
{
@@ -20,68 +23,11 @@ namespace 开发辅助工具.Tools
{
InitializeComponent();
CbbXMLType.SelectedIndex = 0;
highlightEditor1.ReadOnly = true;
}
private void RySearchXpath_OnSearch(object sender, EventArgs e)
{
string text = "";
var format = "";
try
{
if (CbbXMLType.SelectedIndex == 0)
{
format="xml";
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
xml.LoadXml(TxtXML.Text);
var node = xml.SelectNodes(RySearchXpath.Text);
if (node != null)
{
for (int i = 0; i < node.Count; i++)
{
if (text != "") { text += "\r\n\r\n"; }
text += node[i].OuterXml;
}
}
}
else if (CbbXMLType.SelectedIndex == 1)
{
format = "html";
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.LoadHtml(TxtXML.Text);
HtmlNodeCollection anchors = htmlDoc.DocumentNode.SelectNodes(RySearchXpath.Text);
if (anchors != null)
{
for (int i = 0; i < anchors.Count; i++)
{
if (text != "") { text += "\r\n\r\n"; }
text += anchors[i].OuterHtml;
}
}
}
else if (CbbXMLType.SelectedIndex == 2)
{
format = "json";
try
{
JObject jo = (JObject)JsonConvert.DeserializeObject(TxtXML.Text);
var list= jo.SelectTokens(RySearchXpath.Text).ToList();
for (int i = 0; i < list.Count; i++)
{
if (text != "") { text += "\r\n\r\n"; }
text += list[i].ToString();
}
}
catch
{
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
highlightEditor1.SetHightlightText(text,format);
}
private void FrmXpath_Load(object sender, EventArgs e)
@@ -101,11 +47,181 @@ namespace 开发辅助工具.Tools
txt.Text = frm.richTextBox1.Text;
}
}
bool ProUse = false;
private void CbbXMLType_SelectedIndexChanged(object sender, EventArgs e)
{
if (CbbXMLType.SelectedIndex == 2) { label1.Text = "JPath表达式"; }
else { label1.Text = "XPath表达式"; }
if (ProUse) { return; }
ProUse = true;
if (CbbXMLType.SelectedIndex == 2) { TxtXML.SetHightlightText(TxtXML.Text, "json"); label1.Text = "JPath表达式"; }
else if(CbbXMLType.SelectedIndex == 1) { TxtXML.SetHightlightText(TxtXML.Text, "html"); label1.Text = "XPath表达式"; }
else { TxtXML.SetHightlightText(TxtXML.Text, "xml"); label1.Text = "XPath表达式"; }
ProUse = false;
BtnGet.PerformClick();
}
private void TxtXML_TextChanged(object sender, EventArgs e)
{
if (ProUse) { return; }
ProUse = true;
var txt = TxtXML.Text.Trim();
if (txt.StartsWith("<!DOCTYPE html>", StringComparison.OrdinalIgnoreCase) ||
txt.StartsWith("<html", StringComparison.OrdinalIgnoreCase) ||
txt.IndexOf("<div ", StringComparison.OrdinalIgnoreCase)>=0 ||
txt.IndexOf("<p ", StringComparison.OrdinalIgnoreCase)>=0)
{
CbbXMLType.SelectedIndex = 1;
TxtXML.SetHightlightText("html");
}
else if (txt.StartsWith("<?xml", StringComparison.OrdinalIgnoreCase))
{
CbbXMLType.SelectedIndex = 0;
TxtXML.SetHightlightText("xml");
}
else
{
CbbXMLType.SelectedIndex = 2;
TxtXML.SetHightlightText("json");
}
ProUse = false;
}
private void BtnGet_Click(object sender, EventArgs e)
{
string text = "";
var format = "";
var Attr = RichAttr.Text;
try
{
if (CbbXMLType.SelectedIndex == 0)
{
format = "xml";
if (TxtXML.Text.Length > 0)
{
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
xml.LoadXml(TxtXML.Text);
var node = xml.SelectNodes(RichXpath.Text);
if (node != null)
{
for (int i = 0; i < node.Count; i++)
{
if (text != "") { text += "<br><br>"; }
var color = "blue";
if (i % 2 == 0)
{
color = "green";
}
if (Attr.Length == 0)
{
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(node[i].OuterXml) + "</span>";
}
else if (Attr == "-1")
{
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(node[i].InnerText) + "</span>";
}
else
{
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(((XmlElement)node[i]).GetAttribute(Attr)) + "</span>";
}
}
}
}
}
else if (CbbXMLType.SelectedIndex == 1)
{
format = "html";
if (TxtXML.Text.Length > 0)
{
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.LoadHtml(TxtXML.Text);
HtmlNodeCollection anchors = htmlDoc.DocumentNode.SelectNodes(RichXpath.Text);
if (anchors != null)
{
for (int i = 0; i < anchors.Count; i++)
{
if (text != "") { text += "<br><br>"; }
var color = "blue";
if (i % 2 == 0)
{
color = "green";
}
if (Attr.Length == 0)
{
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(anchors[i].OuterHtml) + "</span>";
}
else if (Attr == "-1")
{
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(anchors[i].InnerText) + "</span>";
}
else
{
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(anchors[i].GetAttributeValue(Attr, "")) + "</span>";
}
}
}
}
}
else if (CbbXMLType.SelectedIndex == 2)
{
format = "json";
if (TxtXML.Text.Length > 0)
{
try
{
JObject jo = (JObject)JsonConvert.DeserializeObject(TxtXML.Text);
var list = jo.SelectTokens(RichXpath.Text).ToList();
for (int i = 0; i < list.Count; i++)
{
if (text != "") { text += "<br><br>"; }
var color = "blue";
if (i % 2 == 0)
{
color = "green";
}
text += "<span style='color:" + color + "'>" + System.Web.HttpUtility.HtmlEncode(list[i].ToString()) + "</span>";
}
}
catch
{
}
}
}
}
catch (Exception ex)
{
text = "<span style='color:red'>" + System.Web.HttpUtility.HtmlEncode(ex.Message) + "</span>";
}
htmlPanel1.Text = text;
}
private void RichXpath_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
BtnGet.PerformClick();
}
}
private void RichAttr_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
BtnGet.PerformClick();
}
}
private void RichXpath_TextChanged(object sender, EventArgs e)
{
}
private void RichXpath_LongTimeNoChanged(object sender, EventArgs e)
{
BtnGet.PerformClick();
}
private void RichAttr_LongTimeNoChanged(object sender, EventArgs e)
{
BtnGet.PerformClick();
}
}
}
@@ -197,4 +197,7 @@
YAOAAOABgAHwAYAB+AGAA/wBgAf8AYAH/gE=
</value>
</data>
<metadata name="treeRenderer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>386, 17</value>
</metadata>
</root>
@@ -1,147 +0,0 @@
namespace GameBackup3H3.DbOp
{
partial class FrmCompare
{
/// <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(FrmCompare));
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.修改数据ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.删除数据ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.BtnPrev = new ryControls.ButtonEx();
this.BtnNext = new ryControls.ButtonEx();
this.scintillaDiffControl1 = new ScintillaDiff.ScintillaDiffControl();
this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout();
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.修改数据ToolStripMenuItem,
this.删除数据ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(69, 48);
//
// 修改数据ToolStripMenuItem
//
this.修改数据ToolStripMenuItem.Name = "修改数据ToolStripMenuItem";
this.修改数据ToolStripMenuItem.Size = new System.Drawing.Size(68, 22);
//
// 删除数据ToolStripMenuItem
//
this.删除数据ToolStripMenuItem.Name = "删除数据ToolStripMenuItem";
this.删除数据ToolStripMenuItem.Size = new System.Drawing.Size(68, 22);
//
// BtnPrev
//
this.BtnPrev.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnPrev.Enabled = false;
this.BtnPrev.Location = new System.Drawing.Point(12, 5);
this.BtnPrev.Name = "BtnPrev";
this.BtnPrev.Size = new System.Drawing.Size(62, 24);
this.BtnPrev.TabIndex = 87;
this.BtnPrev.Text = "上一处";
this.BtnPrev.UseVisualStyleBackColor = true;
this.BtnPrev.Click += new System.EventHandler(this.BtnPrev_Click);
//
// BtnNext
//
this.BtnNext.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnNext.Enabled = false;
this.BtnNext.Location = new System.Drawing.Point(80, 5);
this.BtnNext.Name = "BtnNext";
this.BtnNext.Size = new System.Drawing.Size(62, 24);
this.BtnNext.TabIndex = 88;
this.BtnNext.Text = "下一处";
this.BtnNext.UseVisualStyleBackColor = true;
this.BtnNext.Click += new System.EventHandler(this.BtnNext_Click);
//
// scintillaDiffControl1
//
this.scintillaDiffControl1.AddedCharacterSymbol = '+';
this.scintillaDiffControl1.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.scintillaDiffControl1.CharacterComparison = false;
this.scintillaDiffControl1.CharacterComparisonMarkAddRemove = false;
this.scintillaDiffControl1.DiffColorAdded = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(242)))), ((int)(((byte)(196)))));
this.scintillaDiffControl1.DiffColorChangeBackground = System.Drawing.Color.FromArgb(((int)(((byte)(252)))), ((int)(((byte)(255)))), ((int)(((byte)(140)))));
this.scintillaDiffControl1.DiffColorCharAdded = System.Drawing.Color.FromArgb(((int)(((byte)(154)))), ((int)(((byte)(234)))), ((int)(((byte)(111)))));
this.scintillaDiffControl1.DiffColorCharDeleted = System.Drawing.Color.FromArgb(((int)(((byte)(225)))), ((int)(((byte)(125)))), ((int)(((byte)(125)))));
this.scintillaDiffControl1.DiffColorDeleted = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(178)))), ((int)(((byte)(178)))));
this.scintillaDiffControl1.DiffStyle = ScintillaDiff.ScintillaDiffStyles.DiffStyle.DiffSideBySide;
this.scintillaDiffControl1.ImageRowAdded = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowAdded")));
this.scintillaDiffControl1.ImageRowAddedScintillaIndex = 28;
this.scintillaDiffControl1.ImageRowDeleted = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowDeleted")));
this.scintillaDiffControl1.ImageRowDeletedScintillaIndex = 29;
this.scintillaDiffControl1.ImageRowDiff = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowDiff")));
this.scintillaDiffControl1.ImageRowDiffScintillaIndex = 31;
this.scintillaDiffControl1.ImageRowOk = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowOk")));
this.scintillaDiffControl1.ImageRowOkScintillaIndex = 30;
this.scintillaDiffControl1.IsEntireLineHighlighted = false;
this.scintillaDiffControl1.Location = new System.Drawing.Point(12, 35);
this.scintillaDiffControl1.MarkColorIndexModifiedBackground = 31;
this.scintillaDiffControl1.MarkColorIndexRemovedOrAdded = 30;
this.scintillaDiffControl1.Name = "scintillaDiffControl1";
this.scintillaDiffControl1.RemovedCharacterSymbol = '-';
this.scintillaDiffControl1.Size = new System.Drawing.Size(912, 585);
this.scintillaDiffControl1.TabIndex = 86;
this.scintillaDiffControl1.TextLeft = "";
this.scintillaDiffControl1.TextRight = "";
this.scintillaDiffControl1.TitleLeft = "文本1";
this.scintillaDiffControl1.TitleRight = "文本2";
this.scintillaDiffControl1.TitleVisible = true;
this.scintillaDiffControl1.UseRowOkSign = false;
//
// FrmCompare
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(936, 632);
this.Controls.Add(this.BtnNext);
this.Controls.Add(this.BtnPrev);
this.Controls.Add(this.scintillaDiffControl1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmCompare";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "比对";
this.Load += new System.EventHandler(this.FrmView_Load);
this.contextMenuStrip1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem 修改数据ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 删除数据ToolStripMenuItem;
private ScintillaDiff.ScintillaDiffControl scintillaDiffControl1;
private ryControls.ButtonEx BtnPrev;
private ryControls.ButtonEx BtnNext;
}
}
@@ -1,68 +0,0 @@
using ryCommon;
using ryCommonDb;
using 开发辅助工具.Tools.SmartEditor;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using 开发辅助工具.Manager;
using 开发辅助工具.Controls;
using static ScintillaNET.Style;
using System.IO;
using ryControls;
using static VPKSoft.ScintillaLexers.LexerEnumerations;
using DiffPlex.Model;
using VPKSoft.ScintillaLexers;
using ScintillaDiff;
namespace GameBackup3H3.DbOp
{
public partial class FrmCompare : Form
{
public FrmCompare()
{
InitializeComponent();
}
/// <summary>
/// 当前高亮语言
/// </summary>
public LexerType CurHighliteLang
{
get; set;
} = LexerType.Text;
public string TextLeft { get; set; } = "";
public string TextRight { get; set; } = "";
public string TitleLeft { get; set; } = "";
public string TitleRight { get; set; } = "";
private void FrmView_Load(object sender, EventArgs e)
{
ScintillaLexers.CreateLexer(scintillaDiffControl1.LeftScintilla, CurHighliteLang,false);
ScintillaLexers.CreateLexer(scintillaDiffControl1.RightScintilla, CurHighliteLang, false);
scintillaDiffControl1.TitleLeft = TitleLeft;
scintillaDiffControl1.TitleRight = TitleRight;
scintillaDiffControl1.TextLeft= TextLeft;
scintillaDiffControl1.TextRight= TextRight;
BtnPrev.Enabled = scintillaDiffControl1.CanGoPrevious;
BtnNext.Enabled = scintillaDiffControl1.CanGoNext;
//scintillaDiffControl1.ReInit();
Text = "查看比对";
}
private void BtnPrev_Click(object sender, EventArgs e)
{
scintillaDiffControl1.Previous();
BtnPrev.Enabled = scintillaDiffControl1.CanGoPrevious;
BtnNext.Enabled = scintillaDiffControl1.CanGoNext;
}
private void BtnNext_Click(object sender, EventArgs e)
{
scintillaDiffControl1.Next();
BtnPrev.Enabled = scintillaDiffControl1.CanGoPrevious;
BtnNext.Enabled = scintillaDiffControl1.CanGoNext;
}
}
}
@@ -1,189 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>35, 21</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="scintillaDiffControl1.ImageRowAdded" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAB
ugAAAboB6KsBBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAATdEVYdFNvdXJj
ZQBPeHlnZW4gSWNvbnPsGK7oAAAB8klEQVQ4T6WS3UtTYQCHj+NYkiaWhQyzSYs5RpZ9iERBU0mzoEHW
tMDSmTS2giAjoiUjY0mFH5M+HJGOBtqH4FqmZDNpBSV54U0xgvoHFl0KDnw6L7EV8V4UXTxweN7n/OA9
HAX4L6RS4Hl/NmQNmxeqn5V8C8Z7b8kagVQKGib3LQ3Fuwl89OGOHUrKGoFUCjYG87n/xUfw63WqIiZN
yTupFBgG8+j75MEf72D3mFFT8i71kKGhpqSg8F4unfPnuDrfTsWTYk39OtMQrXjn54DjuaOrcqQyuaxH
Jcefxerb2RQMrOTiBzeX5k5T9rCQitH1WJ8aqZs045lrSQY+e7vSA6pPTThftOKMNnNq5jjO1yc487aF
1lg9bW8Oc/7dSS7MOumYbcf9qo2m8XoaZ7Ym0gPKFSVRM1zF/tEabON1NL08gmPaTsNULceitbhiR2mO
2tj5aBOWoJFdw2XYpiy/DXgVl9KpLCrXFJQbCpk9OrL9mVSHN3NwYgfFg6swh9ayZUSvXaUIa2TD4oEJ
kys9IGN5r8reSCn2aDnrtA/653kKqRSo3TqsY2Yap8spCORoSt5JpSDjpoIlpGdP2ET+nRWakndSCV6d
4W7eUm5/FvqBNRj69f/+K9sfFw1pAwvbH2z7XtpXclnWCKTy70H5AYUgqeK+blp3AAAAAElFTkSuQmCC
</value>
</data>
<data name="scintillaDiffControl1.ImageRowDeleted" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAu
IgAALiIBquLdkgAAAAd0SU1FB+MEDgkGK7xsdzYAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJ
TVBXgQ4XAAAAN0lEQVQ4T2MYBVQAv/hV/1OAxSg1oIpSAxopNSAfZEAqEMfiwCA5XBgsDwtIbmwYLDkK
aA0YGADE96kTDgVxuQAAAABJRU5ErkJggg==
</value>
</data>
<data name="scintillaDiffControl1.ImageRowDiff" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAbdEVYdFNvdXJjZQBGQU1GQU1GQU0gU2lsayBJY29u
c4J6ZPsAAAGFSURBVDhPY/j//z9FGKsgKRirICkYqyAI398fF3pvb8yJu7ujxbDJwzBWQaAmvru7Iq+9
vb36/+1tYT3Y1MAwVkGgprrX15f8//3lzv/r6wPfX1vrb4pNHQhjCNzcGKwF1PT2x+st/3886/v/7u7W
/5eXeW66tNidFV0tCKNwgDYxXV3lu/jNzTX/fzxu+n+ow/j/r7dr/p+f5/zv3GzHYGS1MIzCAdrkcX9v
9f+frxb9/3Yn8f+hdsP/3x+W//9wb9v/U1Osrp2caMGLrB6E4YwLC1zZgDadeQ8MuO8PSv5/vRUBwbdj
gV6Z8P/hwUn/j3YZ1SFrBmE44+xM++yHh/r+/3wxHWz719vRQC8Ygelv97L+f3u+8f+hZt2XBxu1tbAa
AHTek29v7v7/+W7v/x+vgGHwajUSXvv/9+cr/5+cWPJ/X7XaaqwGAJ335ki7wbfDrfrfgDZ9A9r07UC9
5rf9tRrfgJq+7a1U/ba3XPnbnjKlw1gNIBdjFSQFYxUkHv9nAAC/hu6vewywPwAAAABJRU5ErkJggg==
</value>
</data>
<data name="scintillaDiffControl1.ImageRowOk" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAB
ugAAAboB6KsBBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAATdEVYdFNvdXJj
ZQBPeHlnZW4gSWNvbnPsGK7oAAAB0UlEQVQ4T2P4//8/RRirICkYqyAuzKlsKsspa1XEIGTOBxPDUIQL
c8jbKYoZR73JbF/xn0/d9waDiDUvSByrYnQMslnKNOZV7ayt/1efuvc/qXnpfx5V7z0gOYQieescWcv4
r3yKzhNhYmBxGUtpWdOoFwU9K/5P2XQCjPO7V/yXM4+8ApIHK+KStczW9y37VzJx5X+XhOb/fEpOE0Di
3AqmErKmYc+T6mb9r5+96X8dEKc3z/8vahD+mU3GXA9ugKRh6K3Yqmn/01vm/k9tnP3fOiQfaIj9NCkj
3+ehhe3/M1vngeWSamf8lzIJ+8oqZ24M0gc3gFvevk/HI/N/YHb7/+jyKf8Tamf9N/WJ+u+bVfU/rXH+
/5SGOf+Tqyf/lzEN/s4qbW4B0ww3AIS55GwX6LrF/vfP6vwfUjD5f1TZ9P/RZbP/hxVM+e8SX/lfytDt
J6eUjQ2yZhBG4XArWK/Qcgn+H5Q/7X98zYr/SQ1r/gfkdv4XN3D4zSFt7YisFoYxBHjkrDYY+4T/L5my
939Gx7L/EoZ2f9ilrNzQ1cEwpgADAyO3vPk2s6C4/9Im9n/Y5a280dUgY+yCQEO4ZK2ysPkZHWMVJAVj
FSQe/2cAAKAehUz/zF2tAAAAAElFTkSuQmCC
</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIAAUAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAAHLSURBVFhH7Ze/SsNQGMUzF1zFJ3Bw9QW6iWma0sFR6OQgOAmu7g6+gIO4iohv
0F2kU3cnwbeo5wvnJjfJPddYIxX0Bwfy/Tn3u7k1aU3+aZJl2eV4PF5CK6E5WxO7DsQhj2nJtQdsb9Mw
KPkDixzDzzbgtEjTdIeWCu7ONZ0xHQV9tROIgfWH7F/h+pHpChReWBwy1TvchN3gG1MVLJTH2QX0dz4B
h5wjCxF69fS6WATpWXOxZxPDTsg5shBhOp3umhh2otcNoP/WxLATco4q2ADommEN5THsvZLn+RXDEulR
BeReWbthqkR5bDhrreddeWIbOHa15h2FPN5w04zpkpCnQBYABp+7OlQuiusTE0PrO3J9uL5guoarM6yQ
BeDflQ1hurUBXB96fa3P33B1hhWqoIYbIU/jFO6YLgl5CkIFDHdfHq3hRshj+JuwNZguUB5ZQO50NBod
MKwhFwPIZ9AMm9liqkB6ZCEC+n/+RRTjN7yKN/tl1Kun18UiSM+ai92bGHZCzkFysz9KvTfeHM/9PtNR
rNfEMMpkMtnzZjwxXYHkAFqwIabv/mOiP2Y809toeIDefUND/gZqJ8A45DHZml/6e/kLJMkH/tMBL9aV
yvkAAAAASUVORK5CYII=
</value>
</data>
</root>
@@ -1,119 +0,0 @@
namespace 开发辅助工具.Tools.SmartEditor
{
partial class FrmFavFile
{
/// <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(FrmFavFile));
this.TxtFavName = new ryControls.TextBoxEx2();
this.label1 = new System.Windows.Forms.Label();
this.BtnCancel = new ryControls.ButtonEx();
this.BtnOK = new ryControls.ButtonEx();
this.SuspendLayout();
//
// TxtFavName
//
this.TxtFavName.BackColor = System.Drawing.Color.White;
this.TxtFavName.EmptyText = "";
this.TxtFavName.Location = new System.Drawing.Point(12, 33);
this.TxtFavName.MaxLength = 999999999;
this.TxtFavName.Multiline = false;
this.TxtFavName.Name = "TxtFavName";
this.TxtFavName.OnlyNumeric = false;
this.TxtFavName.PasswordChar = '\0';
this.TxtFavName.ReadOnly = false;
this.TxtFavName.SelectedText = "";
this.TxtFavName.SelectionLength = 0;
this.TxtFavName.SelectionStart = 0;
this.TxtFavName.Size = new System.Drawing.Size(274, 27);
this.TxtFavName.TabIndex = 0;
this.TxtFavName.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.TxtFavName.ToolTip = "";
this.TxtFavName.WordWrap = true;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(12, 17);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(101, 12);
this.label1.TabIndex = 1;
this.label1.Text = "请输入收藏的名称";
//
// BtnCancel
//
this.BtnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.BtnCancel.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnCancel.Location = new System.Drawing.Point(211, 72);
this.BtnCancel.Name = "BtnCancel";
this.BtnCancel.Size = new System.Drawing.Size(75, 30);
this.BtnCancel.TabIndex = 4;
this.BtnCancel.Text = "取消";
this.BtnCancel.UseVisualStyleBackColor = true;
this.BtnCancel.Click += new System.EventHandler(this.BtnCancel_Click);
//
// BtnOK
//
this.BtnOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.BtnOK.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnOK.Location = new System.Drawing.Point(130, 72);
this.BtnOK.Name = "BtnOK";
this.BtnOK.Size = new System.Drawing.Size(75, 30);
this.BtnOK.TabIndex = 3;
this.BtnOK.Text = "确定";
this.BtnOK.UseVisualStyleBackColor = true;
this.BtnOK.Click += new System.EventHandler(this.BtnOK_Click);
//
// FrmFavFile
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(298, 110);
this.Controls.Add(this.BtnCancel);
this.Controls.Add(this.BtnOK);
this.Controls.Add(this.label1);
this.Controls.Add(this.TxtFavName);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FrmFavFile";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "收藏文件";
this.TopMost = true;
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label label1;
private ryControls.ButtonEx BtnCancel;
private ryControls.ButtonEx BtnOK;
public ryControls.TextBoxEx2 TxtFavName;
}
}
@@ -1,47 +0,0 @@
using ryCommonDb;
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;
using System.Xml.Linq;
using 开发辅助工具.Manager;
namespace 开发辅助工具.Tools.SmartEditor
{
public partial class FrmFavFile : Form
{
public FrmFavFile()
{
InitializeComponent();
}
private void BtnCancel_Click(object sender, EventArgs e)
{
DialogResult= DialogResult.Cancel;
}
public string FilePath { get; set; } = "";
private void BtnOK_Click(object sender, EventArgs e)
{
RyQuickSQL mySQL = new RyQuickSQL("FavFiles");
mySQL.AddField("name", TxtFavName.Text);
mySQL.AddField("FilePath", FilePath);
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
if (db.ExecuteNonQuery(mySQL.GetUpdateSQL()+ " where FilePath=@FilePath",mySQL)==0)
{
mySQL.AddField("addTime", DateTime.Now);
mySQL.AddField("editTime", DateTime.Now);
db.ExecuteNonQuery(mySQL.GetInsertSQL(), db.GetParameter(mySQL));
}
}
db.Free();
DialogResult = DialogResult.OK;
}
}
}
@@ -1,141 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIACPAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAANGSURBVFhH1VfLS1RRHD5SjQxq49iL3ovKMizxASFCf0CrlkGrFrWIVi5aFbRo
U4seho4TiWZYamW+IoPUqUYFddKSwgw1e5sUBhVKwa/vnPubMzN6mu6oI/TBB/ee8/2+73fvPefeGfHf
gkpFFkiKXpHDw4sHhJ7TDXhECQ8vDhC+CcFTYXdgmi6LdJ6OP3DFJzl4QtFq5AJPxxdULJIR9k2FNq7w
ge3cwHc042JZ/ICrP6YCvWKSxnLfg+9wPsljZ1gWP6CBzyqsLvUhTRSQYn1qmxorFV9ZFh8g/LAK8oif
NJz9WjcwnD2K8R/cRCHLFx4wf6tCbrtCVx9knSu4FsZZPndQmVgHo3xc6QHwOI6LwWYO+E2Du4dmNTCU
NajmLI3UFqta6SG94Mn2kcDC2QPBeQjrcNyL4+C2MrM25dGs8CDlnKkmRLlte1WWlVkgb6tJaNGb8IYq
E310x9VCbRtaqW9HrzE4nE+2B6h1fQceSRdddQzAY9zozZQN1OiB5pXt1LO1g8byRozm8+FI9ifq3tKj
MkIN1FiPoVRc04P17najwUKwwe3TOchU4UHg2ZTpSbmiTQbz4a3lofWBLI6NBCY9WlSb4jMazYU3Ux5r
X2RwnBlYmRe1+EbS31e8XVYn+7UfvDkmOiA+q4uqnH6jsR1ed3ZoH3iyvT3gOZ3WxY1p3caAaLy7qknX
w4ttYwOK+5VBlbPTGBKN8s5ZDfSxXexA8bQyubc69rXQsuYBNzDFdrGBrog0NiAKbOs3hkRjIL1L15cI
N9vaBwr3aoPR3I/GkGgcy7O+nBbz2dY+UHRUFXsTPhgDBjKeU/myPsWBnQGjxpsQbOIQ29oH9uwlVVzh
iDR/lvGSyh3P2DjEikQ/vciM/FhVOoLbMLYtKIGi+6q4wW0tQBlc5QywoUWPkAHhbzm5+lvRiNV0Y1pw
ITaxrX2gSP7MIurc7MfbLLSgJD3iFfb2fpZK7T6cP43QVCe1kR+1ln6YpfZAp8TSCLMQJxF0hGWzgKCD
0FiNz2StWMKyfwMhuwwmJ3g6KmQQtIXgl7BaeRcyWWIPYcVFVCQSedg2+Hel/Kb8kj48bB+4C2vxL2gj
n84Z8MmRXnw6A0L8AczNmfchKD2pAAAAAElFTkSuQmCC
</value>
</data>
</root>
@@ -1,206 +0,0 @@
namespace GameBackup3H3.DbOp
{
partial class FrmFavView
{
/// <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(FrmFavView));
this.rySearch1 = new ryControls.rySearch();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.修改数据ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.删除数据ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ctlMyPage1 = new MyPage.ctlMyPage();
this.btnDel = new ryControls.ButtonEx();
this.btnEdit = new ryControls.ButtonEx();
this.LvCbResult = new BrightIdeasSoftware.FastObjectListView();
this.OlvName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvFilePath = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvAddTime = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.contextMenuStrip1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.LvCbResult)).BeginInit();
this.SuspendLayout();
//
// rySearch1
//
this.rySearch1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.ButtonRoundBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.EmptyText = "请输入搜索内容";
this.rySearch1.Location = new System.Drawing.Point(12, 5);
this.rySearch1.Name = "rySearch1";
this.rySearch1.Size = new System.Drawing.Size(329, 24);
this.rySearch1.TabIndex = 28;
this.rySearch1.OnSearch += new System.EventHandler(this.RySearch1_OnSearch);
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.修改数据ToolStripMenuItem,
this.删除数据ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(125, 48);
//
// 修改数据ToolStripMenuItem
//
this.修改数据ToolStripMenuItem.Name = "修改数据ToolStripMenuItem";
this.修改数据ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
this.修改数据ToolStripMenuItem.Text = "修改数据";
this.修改数据ToolStripMenuItem.Click += new System.EventHandler(this.修改数据ToolStripMenuItem_Click);
//
// 删除数据ToolStripMenuItem
//
this.删除数据ToolStripMenuItem.Name = "删除数据ToolStripMenuItem";
this.删除数据ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
this.删除数据ToolStripMenuItem.Text = "删除数据";
this.删除数据ToolStripMenuItem.Click += new System.EventHandler(this.删除数据ToolStripMenuItem_Click);
//
// ctlMyPage1
//
this.ctlMyPage1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.ctlMyPage1.Location = new System.Drawing.Point(12, 602);
this.ctlMyPage1.Name = "ctlMyPage1";
this.ctlMyPage1.PageSize = 50;
this.ctlMyPage1.RecordCount = 0;
this.ctlMyPage1.Size = new System.Drawing.Size(506, 26);
this.ctlMyPage1.SQLText = "";
this.ctlMyPage1.SQLText2 = "";
this.ctlMyPage1.T_FirstCaption = "首页";
this.ctlMyPage1.T_LastCaption = "末页";
this.ctlMyPage1.T_NextCaption = "下一页";
this.ctlMyPage1.T_Parameters = null;
this.ctlMyPage1.T_PreCaption = "上一页";
this.ctlMyPage1.T_SkipCaption = "跳到";
this.ctlMyPage1.T_TipCaption = "{pageindex}/{pagecount} 页,共 {recordcount} 条记录,每页 {pagesize} 条";
this.ctlMyPage1.TabIndex = 30;
this.ctlMyPage1.OnPageChange += new System.EventHandler(this.CtlMyPage1_OnPageChange);
//
// btnDel
//
this.btnDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnDel.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.btnDel.Location = new System.Drawing.Point(812, 5);
this.btnDel.Name = "btnDel";
this.btnDel.Size = new System.Drawing.Size(62, 24);
this.btnDel.TabIndex = 40;
this.btnDel.Text = "删除";
this.btnDel.UseVisualStyleBackColor = true;
this.btnDel.Click += new System.EventHandler(this.BtnDel_Click);
//
// btnEdit
//
this.btnEdit.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnEdit.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.btnEdit.Location = new System.Drawing.Point(744, 5);
this.btnEdit.Name = "btnEdit";
this.btnEdit.Size = new System.Drawing.Size(62, 24);
this.btnEdit.TabIndex = 39;
this.btnEdit.Text = "修改";
this.btnEdit.UseVisualStyleBackColor = true;
this.btnEdit.Click += new System.EventHandler(this.BtnEdit_Click);
//
// LvCbResult
//
this.LvCbResult.AllColumns.Add(this.OlvName);
this.LvCbResult.AllColumns.Add(this.OlvFilePath);
this.LvCbResult.AllColumns.Add(this.OlvAddTime);
this.LvCbResult.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.LvCbResult.CellEditUseWholeCell = false;
this.LvCbResult.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.OlvName,
this.OlvFilePath,
this.OlvAddTime});
this.LvCbResult.ContextMenuStrip = this.contextMenuStrip1;
this.LvCbResult.Cursor = System.Windows.Forms.Cursors.Default;
this.LvCbResult.EmptyListMsg = "当前列表没有任何项";
this.LvCbResult.FullRowSelect = true;
this.LvCbResult.HideSelection = false;
this.LvCbResult.Location = new System.Drawing.Point(12, 35);
this.LvCbResult.Name = "LvCbResult";
this.LvCbResult.RowHeight = 25;
this.LvCbResult.ShowGroups = false;
this.LvCbResult.ShowItemToolTips = true;
this.LvCbResult.Size = new System.Drawing.Size(862, 565);
this.LvCbResult.TabIndex = 85;
this.LvCbResult.UseCompatibleStateImageBehavior = false;
this.LvCbResult.UseFiltering = true;
this.LvCbResult.View = System.Windows.Forms.View.Details;
this.LvCbResult.VirtualMode = true;
this.LvCbResult.DoubleClick += new System.EventHandler(this.LvCbResult_DoubleClick);
//
// OlvName
//
this.OlvName.Text = "名称";
this.OlvName.Width = 200;
//
// OlvFilePath
//
this.OlvFilePath.Text = "路径";
this.OlvFilePath.Width = 450;
//
// OlvAddTime
//
this.OlvAddTime.Text = "时间";
this.OlvAddTime.Width = 180;
//
// FrmFavView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(886, 632);
this.Controls.Add(this.LvCbResult);
this.Controls.Add(this.btnDel);
this.Controls.Add(this.btnEdit);
this.Controls.Add(this.ctlMyPage1);
this.Controls.Add(this.rySearch1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmFavView";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "浏览";
this.Load += new System.EventHandler(this.FrmView_Load);
this.contextMenuStrip1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.LvCbResult)).EndInit();
this.ResumeLayout(false);
}
#endregion
private ryControls.rySearch rySearch1;
private MyPage.ctlMyPage ctlMyPage1;
private ryControls.ButtonEx btnDel;
private ryControls.ButtonEx btnEdit;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem 修改数据ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 删除数据ToolStripMenuItem;
private BrightIdeasSoftware.FastObjectListView LvCbResult;
private BrightIdeasSoftware.OLVColumn OlvName;
private BrightIdeasSoftware.OLVColumn OlvAddTime;
private BrightIdeasSoftware.OLVColumn OlvFilePath;
}
}
@@ -1,192 +0,0 @@
using ryCommon;
using ryCommonDb;
using 开发辅助工具.Tools.SmartEditor;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using 开发辅助工具.Manager;
namespace GameBackup3H3.DbOp
{
public partial class FrmFavView : Form
{
string orderSQL = "order by addTime desc";
string tableName = "FavFiles";
string titleName = "收藏管理";
public FrmFavView()
{
InitializeComponent();
OlvName.AspectGetter = delegate (object x) { return ((FavInfo)x).Name; };
OlvFilePath.AspectGetter = delegate (object x) { return ((FavInfo)x).FilePath; };
OlvAddTime.AspectGetter = delegate (object x) { return ((FavInfo)x).AddTimeStr; };
}
#region 需要修改的内容
private void RySearch1_OnSearch(object sender, EventArgs e)
{
//需要修改此处
LoadDb("(name like @SearchText or FilePath like @SearchText)");
}
private void CtlMyPage1_OnPageChange(object sender, EventArgs e)
{
#region 重新载入数据
LvCbResult.ClearObjects();
List<FavInfo> list = new List<FavInfo>();
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
DataSet ds = db.ReadData(ctlMyPage1.GetSQLText, ctlMyPage1.T_Parameters);
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
DataRow row = ds.Tables[0].Rows[i];
list.Add(new FavInfo()
{
Id=row["id"].ToInt(),
Name = row["name"].ToString(),
FilePath = row["FilePath"].ToString(),
AddTime = row["AddTime"].ToDateTime()
}) ;
}
}
db.Free();
LvCbResult.AddObjects(list);
#endregion
}
private void GetRow(int id, int index)
{
#region 重新载入数据
DataProvider mydb = new DataProvider();
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
DataSet ds = db.ReadData("select * from " + tableName + " where id=" + id);
if (mydb.HaveData(ds))
{
DataRow row = ds.Tables[0].Rows[0];
var item=(FavInfo) LvCbResult.GetModelObject(index);
item.Name = row["name"].ToString();
item.FilePath = row["FilePath"].ToString();
//添加剩余的项目
//添加完毕
LvCbResult.UpdateObject(item);
}
}
db.Free();
#endregion
}
#endregion
public void LoadDb(string whereSQL)
{
string _whereSQL = whereSQL;
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
#region 重新载入数据
db.AddParameter("SearchText", "%" + rySearch1.Text + "%");
ctlMyPage1.RecordCount = db.GetCount(tableName, _whereSQL);
ctlMyPage1.T_Parameters = db.GetParameter();
ctlMyPage1.SQLText= db.GetPageSQL(tableName, _whereSQL, orderSQL);
ctlMyPage1.SQLText2 = db.GetPageSQL2(tableName, _whereSQL, orderSQL);
ctlMyPage1.GotoPageIndex(1);
#endregion
}
db.Free();
}
private void BtnEdit_Click(object sender, EventArgs e)
{
if (LvCbResult.SelectedObject == null) { return; }
var item = (FavInfo)LvCbResult.SelectedObject;
var selectId = item.Id;
FrmFavFile frm = new FrmFavFile()
{
Text = "修改"+ titleName,
Icon = Icon,
};
frm.FilePath = item.FilePath;
frm.TxtFavName.Text = item.Name;
if(frm.ShowDialog()==DialogResult.OK)
{
GetRow(selectId, LvCbResult.SelectedIndex);
}
frm.Dispose();
}
private void BtnDel_Click(object sender, EventArgs e)
{
if (LvCbResult.SelectedObject == null) { MessageBox.Show("请先选择要删除的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; }
var item = (FavInfo)LvCbResult.SelectedObject;
var selectId = item.Id;
switch (MessageBox.Show("确定要删除该项吗?一旦删除将不可恢复。", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.No:
return;
}
//DataProvider mydb = new DataProvider();
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
db.DelById(tableName, selectId.ToString());
LvCbResult.RemoveObject(item);
}
}
private void FrmView_Load(object sender, EventArgs e)
{
Text = "浏览"+ titleName;
修改数据ToolStripMenuItem.Text = "修改" + titleName;
删除数据ToolStripMenuItem.Text = "删除" + titleName;
rySearch1.PerformClick();
}
private void 修改数据ToolStripMenuItem_Click(object sender, EventArgs e)
{
btnEdit.PerformClick();
}
private void 删除数据ToolStripMenuItem_Click(object sender, EventArgs e)
{
btnDel.PerformClick();
}
public bool SelectModeOn { get; set; } = false;
public FavInfo SelectedItem { get; set; }
private void LvCbResult_DoubleClick(object sender, EventArgs e)
{
if(SelectModeOn)
{
if (LvCbResult.SelectedObject == null) { return; }
SelectedItem = (FavInfo)LvCbResult.SelectedObject;
DialogResult=DialogResult.OK;
}
}
}
public class FavInfo
{
/// <summary>
/// id
/// </summary>
public int Id{ get; set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// IP
/// </summary>
public string FilePath { get; set; }
/// <summary>
/// 添加时间
/// </summary>
public DateTime AddTime { get; set; }
/// <summary>
/// 添加时间字符串
/// </summary>
public string AddTimeStr
{
get { return AddTime.ToString("yyyy-MM-dd dddd HH:mm:ss"); }
}
}
}
@@ -1,144 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>35, 21</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIACPAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAANGSURBVFhH1VfLS1RRHD5SjQxq49iL3ovKMizxASFCf0CrlkGrFrWIVi5aFbRo
U4seho4TiWZYamW+IoPUqUYFddKSwgw1e5sUBhVKwa/vnPubMzN6mu6oI/TBB/ee8/2+73fvPefeGfHf
gkpFFkiKXpHDw4sHhJ7TDXhECQ8vDhC+CcFTYXdgmi6LdJ6OP3DFJzl4QtFq5AJPxxdULJIR9k2FNq7w
ge3cwHc042JZ/ICrP6YCvWKSxnLfg+9wPsljZ1gWP6CBzyqsLvUhTRSQYn1qmxorFV9ZFh8g/LAK8oif
NJz9WjcwnD2K8R/cRCHLFx4wf6tCbrtCVx9knSu4FsZZPndQmVgHo3xc6QHwOI6LwWYO+E2Du4dmNTCU
NajmLI3UFqta6SG94Mn2kcDC2QPBeQjrcNyL4+C2MrM25dGs8CDlnKkmRLlte1WWlVkgb6tJaNGb8IYq
E310x9VCbRtaqW9HrzE4nE+2B6h1fQceSRdddQzAY9zozZQN1OiB5pXt1LO1g8byRozm8+FI9ifq3tKj
MkIN1FiPoVRc04P17najwUKwwe3TOchU4UHg2ZTpSbmiTQbz4a3lofWBLI6NBCY9WlSb4jMazYU3Ux5r
X2RwnBlYmRe1+EbS31e8XVYn+7UfvDkmOiA+q4uqnH6jsR1ed3ZoH3iyvT3gOZ3WxY1p3caAaLy7qknX
w4ttYwOK+5VBlbPTGBKN8s5ZDfSxXexA8bQyubc69rXQsuYBNzDFdrGBrog0NiAKbOs3hkRjIL1L15cI
N9vaBwr3aoPR3I/GkGgcy7O+nBbz2dY+UHRUFXsTPhgDBjKeU/myPsWBnQGjxpsQbOIQ29oH9uwlVVzh
iDR/lvGSyh3P2DjEikQ/vciM/FhVOoLbMLYtKIGi+6q4wW0tQBlc5QywoUWPkAHhbzm5+lvRiNV0Y1pw
ITaxrX2gSP7MIurc7MfbLLSgJD3iFfb2fpZK7T6cP43QVCe1kR+1ln6YpfZAp8TSCLMQJxF0hGWzgKCD
0FiNz2StWMKyfwMhuwwmJ3g6KmQQtIXgl7BaeRcyWWIPYcVFVCQSedg2+Hel/Kb8kj48bB+4C2vxL2gj
n84Z8MmRXnw6A0L8AczNmfchKD2pAAAAAElFTkSuQmCC
</value>
</data>
</root>
@@ -1,254 +0,0 @@
namespace SuperDesign.Tools.SmartEditor
{
partial class FrmFileBrowser
{
/// <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(FrmFileBrowser));
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.添加工作区ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.移除工作区ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.重命名ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.imageListSmall = new System.Windows.Forms.ImageList(this.components);
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
this.treeListView = new BrightIdeasSoftware.TreeListView();
this.olvColumnName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.olvColumnCreated = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.olvColumnModified = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.olvColumnSize = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.olvColumnFileType = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.treeRenderer1 = new BrightIdeasSoftware.TreeListView.TreeRenderer();
this.MenuForm = new System.Windows.Forms.ContextMenuStrip(this.components);
this.重命名ToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.contextMenuStrip1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.treeListView)).BeginInit();
this.MenuForm.SuspendLayout();
this.SuspendLayout();
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.添加工作区ToolStripMenuItem,
this.移除工作区ToolStripMenuItem,
this.重命名ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(137, 70);
this.contextMenuStrip1.Opening += new System.ComponentModel.CancelEventHandler(this.ContextMenuStrip1_Opening);
//
// 添加工作区ToolStripMenuItem
//
this.添加工作区ToolStripMenuItem.Name = "添加工作区ToolStripMenuItem";
this.添加工作区ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.添加工作区ToolStripMenuItem.Text = "添加工作区";
this.添加工作区ToolStripMenuItem.Click += new System.EventHandler(this.添加工作区ToolStripMenuItem_Click);
//
// 移除工作区ToolStripMenuItem
//
this.移除工作区ToolStripMenuItem.Name = "移除工作区ToolStripMenuItem";
this.移除工作区ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.移除工作区ToolStripMenuItem.Text = "移除工作区";
this.移除工作区ToolStripMenuItem.Click += new System.EventHandler(this.移除工作区ToolStripMenuItem_Click);
//
// 重命名ToolStripMenuItem
//
this.重命名ToolStripMenuItem.Name = "重命名ToolStripMenuItem";
this.重命名ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.重命名ToolStripMenuItem.Text = "重命名";
this.重命名ToolStripMenuItem.Click += new System.EventHandler(this.重命名ToolStripMenuItem_Click);
//
// imageListSmall
//
this.imageListSmall.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListSmall.ImageStream")));
this.imageListSmall.TransparentColor = System.Drawing.Color.Transparent;
this.imageListSmall.Images.SetKeyName(0, "compass");
this.imageListSmall.Images.SetKeyName(1, "down");
this.imageListSmall.Images.SetKeyName(2, "user");
this.imageListSmall.Images.SetKeyName(3, "find");
this.imageListSmall.Images.SetKeyName(4, "folder");
this.imageListSmall.Images.SetKeyName(5, "movie");
this.imageListSmall.Images.SetKeyName(6, "music");
this.imageListSmall.Images.SetKeyName(7, "no");
this.imageListSmall.Images.SetKeyName(8, "readonly");
this.imageListSmall.Images.SetKeyName(9, "public");
this.imageListSmall.Images.SetKeyName(10, "recycle");
this.imageListSmall.Images.SetKeyName(11, "spanner");
this.imageListSmall.Images.SetKeyName(12, "star");
this.imageListSmall.Images.SetKeyName(13, "tick");
this.imageListSmall.Images.SetKeyName(14, "archive");
this.imageListSmall.Images.SetKeyName(15, "system");
this.imageListSmall.Images.SetKeyName(16, "hidden");
this.imageListSmall.Images.SetKeyName(17, "temporary");
//
// treeListView
//
this.treeListView.AllColumns.Add(this.olvColumnName);
this.treeListView.AllColumns.Add(this.olvColumnCreated);
this.treeListView.AllColumns.Add(this.olvColumnModified);
this.treeListView.AllColumns.Add(this.olvColumnSize);
this.treeListView.AllColumns.Add(this.olvColumnFileType);
this.treeListView.AllowColumnReorder = true;
this.treeListView.AllowDrop = true;
this.treeListView.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.treeListView.CellEditUseWholeCell = false;
this.treeListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.olvColumnName,
this.olvColumnCreated,
this.olvColumnModified,
this.olvColumnSize,
this.olvColumnFileType});
this.treeListView.ContextMenuStrip = this.contextMenuStrip1;
this.treeListView.Cursor = System.Windows.Forms.Cursors.Default;
this.treeListView.EmptyListMsg = "工作区为空";
this.treeListView.EmptyListMsgFont = new System.Drawing.Font("Comic Sans MS", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.treeListView.FullRowSelect = true;
this.treeListView.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
this.treeListView.HideSelection = false;
this.treeListView.IsSimpleDragSource = true;
this.treeListView.Location = new System.Drawing.Point(1, 2);
this.treeListView.MultiSelect = false;
this.treeListView.Name = "treeListView";
this.treeListView.RowHeight = 22;
this.treeListView.SelectColumnsOnRightClickBehaviour = BrightIdeasSoftware.ObjectListView.ColumnSelectBehaviour.Submenu;
this.treeListView.ShowCommandMenuOnRightClick = true;
this.treeListView.ShowGroups = false;
this.treeListView.ShowImagesOnSubItems = true;
this.treeListView.ShowItemToolTips = true;
this.treeListView.Size = new System.Drawing.Size(388, 679);
this.treeListView.SmallImageList = this.imageListSmall;
this.treeListView.TabIndex = 29;
this.treeListView.UseCompatibleStateImageBehavior = false;
this.treeListView.UseFilterIndicator = true;
this.treeListView.UseFiltering = true;
this.treeListView.UseHotItem = true;
this.treeListView.View = System.Windows.Forms.View.Details;
this.treeListView.VirtualMode = true;
this.treeListView.Dropped += new System.EventHandler<BrightIdeasSoftware.OlvDropEventArgs>(this.TreeListView_Dropped);
this.treeListView.ItemActivate += new System.EventHandler(this.TreeListView_ItemActivate);
this.treeListView.DragDrop += new System.Windows.Forms.DragEventHandler(this.TreeListView_DragDrop);
this.treeListView.DragEnter += new System.Windows.Forms.DragEventHandler(this.TreeListView_DragEnter);
this.treeListView.DragOver += new System.Windows.Forms.DragEventHandler(this.TreeListView_DragOver);
this.treeListView.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.TreeListView_MouseDoubleClick);
//
// olvColumnName
//
this.olvColumnName.AspectName = "Name";
this.olvColumnName.Text = "文件名";
this.olvColumnName.UseInitialLetterForGroup = true;
this.olvColumnName.Width = 180;
//
// olvColumnCreated
//
this.olvColumnCreated.AspectName = "CreationTime";
this.olvColumnCreated.DisplayIndex = 4;
this.olvColumnCreated.Text = "创建时间";
this.olvColumnCreated.Width = 131;
//
// olvColumnModified
//
this.olvColumnModified.AspectName = "LastWriteTime";
this.olvColumnModified.DisplayIndex = 1;
this.olvColumnModified.IsTileViewColumn = true;
this.olvColumnModified.Text = "修改时间";
this.olvColumnModified.Width = 145;
//
// olvColumnSize
//
this.olvColumnSize.AspectName = "Extension";
this.olvColumnSize.DisplayIndex = 2;
this.olvColumnSize.HeaderTextAlign = System.Windows.Forms.HorizontalAlignment.Right;
this.olvColumnSize.Text = "大小";
this.olvColumnSize.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
this.olvColumnSize.Width = 80;
//
// olvColumnFileType
//
this.olvColumnFileType.DisplayIndex = 3;
this.olvColumnFileType.IsTileViewColumn = true;
this.olvColumnFileType.Text = "类型";
this.olvColumnFileType.Width = 148;
//
// treeRenderer1
//
this.treeRenderer1.IsShowGlyphs = true;
this.treeRenderer1.IsShowLines = true;
this.treeRenderer1.UseTriangles = false;
//
// MenuForm
//
this.MenuForm.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.重命名ToolStripMenuItem1});
this.MenuForm.Name = "MenuForm";
this.MenuForm.Size = new System.Drawing.Size(113, 26);
//
// 重命名ToolStripMenuItem1
//
this.重命名ToolStripMenuItem1.Name = "重命名ToolStripMenuItem1";
this.重命名ToolStripMenuItem1.Size = new System.Drawing.Size(112, 22);
this.重命名ToolStripMenuItem1.Text = "重命名";
this.重命名ToolStripMenuItem1.Click += new System.EventHandler(this.重命名ToolStripMenuItem1_Click);
//
// FrmFileBrowser
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(390, 681);
this.Controls.Add(this.treeListView);
this.Name = "FrmFileBrowser";
this.TabPageContextMenuStrip = this.MenuForm;
this.Text = "工作区";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmFileBrowser_FormClosing);
this.Load += new System.EventHandler(this.FrmFileBrowser_Load);
this.contextMenuStrip1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.treeListView)).EndInit();
this.MenuForm.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private BrightIdeasSoftware.OLVColumn olvColumnName;
private BrightIdeasSoftware.OLVColumn olvColumnCreated;
private BrightIdeasSoftware.OLVColumn olvColumnModified;
private BrightIdeasSoftware.OLVColumn olvColumnSize;
private BrightIdeasSoftware.OLVColumn olvColumnFileType;
private System.Windows.Forms.ToolTip toolTip1;
private System.Windows.Forms.ImageList imageListSmall;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem 添加工作区ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 移除工作区ToolStripMenuItem;
private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1;
private System.Windows.Forms.ToolStripMenuItem 重命名ToolStripMenuItem;
public BrightIdeasSoftware.TreeListView treeListView;
private BrightIdeasSoftware.TreeListView.TreeRenderer treeRenderer1;
private System.Windows.Forms.ContextMenuStrip MenuForm;
private System.Windows.Forms.ToolStripMenuItem 重命名ToolStripMenuItem1;
}
}
@@ -1,388 +0,0 @@
using BrightIdeasSoftware;
using ObjectListViewDemo;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using ryCommon;
using System.Collections;
using System.Drawing.Drawing2D;
using WeifenLuo.WinFormsUI.Docking;
using 开发辅助工具.Tools.SmartEditor;
using 开发辅助工具.Manager;
using Newtonsoft.Json.Linq;
using 开发辅助工具.Controls;
namespace SuperDesign.Tools.SmartEditor
{
public partial class FrmFileBrowser : DockContent
{
public FrmFileBrowser()
{
InitializeComponent();
SetupColumns();
SetupTree();
TreeListView.TreeRenderer renderer = this.treeListView.TreeColumnRenderer;
renderer.LinePen = new Pen(Color.Firebrick, 0.5f)
{
DashStyle = DashStyle.Dot
};
}
private void Drag_ElevatedDragDrop(object sender, ElevatedDragDropArgs e)
{
if (e.Files.Count == 1)
{
if (System.IO.Directory.Exists(e.Files[0]))
{
Add(e.Files[0]);
}
}
}
private void SetupColumns()
{
// The column setup here is identical to the File Explorer example tab --
// nothing specific to the TreeListView.
// The only difference is that we don't setup anything to do with grouping,
// since TreeListViews can't show groups.
SysImageListHelper helper = new SysImageListHelper(this.treeListView);
this.olvColumnName.ImageGetter = delegate (object x) {
return helper.GetImageIndex(((MyFileSystemInfo)x).FullName);
};
// Get the size of the file system entity.
// Folders and errors are represented as negative numbers
this.olvColumnSize.AspectGetter = delegate (object x) {
MyFileSystemInfo myFileSystemInfo = (MyFileSystemInfo)x;
if (myFileSystemInfo.IsDirectory)
return (long)-1;
try
{
return myFileSystemInfo.Length;
}
catch (System.IO.FileNotFoundException)
{
// Mono 1.2.6 throws this for hidden files
return (long)-2;
}
};
// Show the size of files as GB, MB and KBs. By returning the actual
// size in the AspectGetter, and doing the conversion in the
// AspectToStringConverter, sorting on this column will work off the
// actual sizes, rather than the formatted string.
this.olvColumnSize.AspectToStringConverter = delegate (object rowdata, object x) {
long sizeInBytes = (long)x;
if (sizeInBytes < 0) // folder or error
return "";
return RyFiles.GetFileSizeStr(sizeInBytes);
};
// Show the system description for this object
this.olvColumnFileType.AspectGetter = delegate (object x) {
return ShellUtilities.GetFileType(((MyFileSystemInfo)x).FullName);
};
}
private void SetupTree()
{
// TreeListView require two delegates:
// 1. CanExpandGetter - Can a particular model be expanded?
// 2. ChildrenGetter - Once the CanExpandGetter returns true, ChildrenGetter should return the list of children
// CanExpandGetter is called very often! It must be very fast.
this.treeListView.CanExpandGetter = delegate (object x) {
return ((MyFileSystemInfo)x).IsDirectory;
};
// We just want to get the children of the given directory.
// This becomes a little complicated when we can't (for whatever reason). We need to report the error
// to the user, but we can't just call MessageBox.Show() directly, since that would stall the UI thread
// leaving the tree in a potentially undefined state (not good). We also don't want to keep trying to
// get the contents of the given directory if the tree is refreshed. To get around the first problem,
// we immediately return an empty list of children and use BeginInvoke to show the MessageBox at the
// earliest opportunity. We get around the second problem by collapsing the branch again, so it's children
// will not be fetched when the tree is refreshed. The user could still explicitly unroll it again --
// that's their problem :)
this.treeListView.ChildrenGetter = delegate (object x) {
try
{
return ((MyFileSystemInfo)x).GetFileSystemInfos();
}
catch (UnauthorizedAccessException ex)
{
this.BeginInvoke((MethodInvoker)delegate () {
this.treeListView.Collapse(x);
MessageBox.Show(this, ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
});
return new ArrayList();
}
};
// Once those two delegates are in place, the TreeListView starts working
// after setting the Roots property.
var WorkArea = Itrycn_Db.GetSetting("WorkArea", "");
JArray jarr = WorkArea.Length == 0 ? new JArray() : JArray.Parse(WorkArea);
for (int i = 0; i < jarr.Count; i++)
{
var item = jarr[i];
roots.Add(new MyFileSystemInfo(new DirectoryInfo(item["path"].ToString()), item["name"].ToString()));
}
this.treeListView.Roots = roots;
}
readonly List<MyFileSystemInfo> roots = new List<MyFileSystemInfo>();
private void TreeListView_ItemActivate(object sender, EventArgs e)
{
Object model = this.treeListView.SelectedObject;
if (model != null)
this.treeListView.ToggleExpansion(model);
}
private void TreeListView_MouseDoubleClick(object sender, MouseEventArgs e)
{
MyFileSystemInfo model = (MyFileSystemInfo)this.treeListView.SelectedObject;
if (model != null)
{
if (model.IsDirectory) { return; }
if (model.Length >= 1024*1024 * 20)
{
MessageBox.Show("不支持打开超过20M的文本。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
FrmMainEditor.MainEditor.OpenFile(model.FullName);
}
}
public void Add(string path)
{
var dir_path = path;
var WorkArea = Itrycn_Db.GetSetting("WorkArea", "");
JArray jarr = WorkArea.Length == 0 ? new JArray() : JArray.Parse(WorkArea);
for (int i = jarr.Count - 1; i >= 0; i--)
{
var item = jarr[i];
if (item["path"].ToString().ToLower() == dir_path.ToLower())
{
MessageBox.Show("当前文件夹已存在", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
}
JObject jo = new JObject
{
{ "name", System.IO.Path.GetFileName(dir_path) },
{ "path", dir_path }
};
jarr.Add(jo);
Itrycn_Db.SetSetting("WorkArea", jarr.ToString());
roots.Add(new MyFileSystemInfo(new DirectoryInfo(dir_path), System.IO.Path.GetFileName(dir_path)));
this.treeListView.Roots = roots;
}
private void 添加工作区ToolStripMenuItem_Click(object sender, EventArgs e)
{
if(folderBrowserDialog1.ShowDialog()== DialogResult.OK)
{
var dir_path = folderBrowserDialog1.SelectedPath;
Add(dir_path);
}
}
private void 移除工作区ToolStripMenuItem_Click(object sender, EventArgs e)
{
MyFileSystemInfo model = (MyFileSystemInfo)this.treeListView.SelectedObject;
if (model == null) { return; }
if (treeListView.GetParent(model)==null)
{
switch (MessageBox.Show("是否要删除工作区?", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.No:
return;
}
var WorkArea = Itrycn_Db.GetSetting("WorkArea", "");
JArray jarr = WorkArea.Length == 0 ? new JArray() : JArray.Parse(WorkArea);
for (int i = jarr.Count-1; i>=0; i--)
{
var item = jarr[i];
if (item["path"].ToString().ToLower()== model.FullName.ToLower())
{
jarr.Remove(item);
}
}
roots.Remove(model);
Itrycn_Db.SetSetting("WorkArea", jarr.ToString());
treeListView.RemoveObject(model);
}
}
private void ContextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
MyFileSystemInfo model = (MyFileSystemInfo)this.treeListView.SelectedObject;
if (model == null) { 重命名ToolStripMenuItem.Enabled = false; 移除工作区ToolStripMenuItem.Enabled = false;return; }
if (treeListView.GetParent(model) != null)
{
重命名ToolStripMenuItem.Enabled = false;
移除工作区ToolStripMenuItem.Enabled = false; return;
}
重命名ToolStripMenuItem.Enabled = true;
移除工作区ToolStripMenuItem.Enabled = true;
}
private void 重命名ToolStripMenuItem_Click(object sender, EventArgs e)
{
MyFileSystemInfo model = (MyFileSystemInfo)this.treeListView.SelectedObject;
if (model == null) { return; }
if (treeListView.GetParent(model) == null)
{
FrmTitle frm = new FrmTitle();
frm.TxtTitle.Text = model.Name;
frm.Text = "请输入重命名的名称";
if (frm.ShowDialog() == DialogResult.OK)
{
var WorkArea = Itrycn_Db.GetSetting("WorkArea", "");
JArray jarr = WorkArea.Length == 0 ? new JArray() : JArray.Parse(WorkArea);
for (int i = jarr.Count - 1; i >= 0; i--)
{
var item = jarr[i];
if (item["path"].ToString().ToLower() == model.FullName.ToLower())
{
item["name"] = frm.TxtTitle.Text;
model.Name = frm.TxtTitle.Text;
}
}
Itrycn_Db.SetSetting("WorkArea", jarr.ToString());
treeListView.RefreshObject(model);
}
frm.Dispose();
}
}
private void FrmFileBrowser_Load(object sender, EventArgs e)
{
treeListView.IsSimpleDragSource = true;
}
private void FrmFileBrowser_FormClosing(object sender, FormClosingEventArgs e)
{
//drag.ElevatedDragDrop -= Drag_ElevatedDragDrop;
}
private void TreeListView_Dropped(object sender, OlvDropEventArgs e)
{
}
private void TreeListView_DragDrop(object sender, DragEventArgs e)
{
string[] s = (string[])e.Data.GetData(DataFormats.FileDrop, false);
if(s!=null && s.Length==1)
{
Add(s[0]);
}
}
private void TreeListView_DragOver(object sender, DragEventArgs e)
{
}
private void TreeListView_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.All;
}
else
{
e.Effect = DragDropEffects.None;
}
}
public void GotoPath(string path)
{
if (path.Length == 0) { return; }
var isexist = false;
MyFileSystemInfo find_item = null;
for (int i = 0; i < roots.Count; i++)
{
var root = roots[i];
if(path.IndexOfEx(root.FullName)==0)
{
treeListView.Expand(root);
Find(root);
if(isexist)
{
break;
}
void Find(MyFileSystemInfo _item)
{
if (_item.FullName.ToLower() == path.ToLower())
{
isexist = true;
find_item = _item;
return;
}
var list = treeListView.GetChildren(_item);
foreach (var _file in list)
{
var file = (MyFileSystemInfo)_file;
if (file.IsDirectory)
{
if (path.IndexOfEx(file.FullName) == 0)
{
treeListView.Expand(file);
if (path.Length == file.FullName.Length)
{
isexist = true;
find_item = file;
break;
}
else
{
Find(file);
continue;
}
}
else { continue; }
}
if (file.FullName.ToLower() == path.ToLower())
{
isexist = true;
find_item = file;
break;
}
}
}
}
}
if (isexist)
{
treeListView.EnsureModelVisible(find_item);
//var aa= treeListView.SelectedObject==find_item;
treeListView.Expand(find_item);
treeListView.SelectedObject = find_item;
//treeListView.Expand(find_item);
}
}
private void 重命名ToolStripMenuItem1_Click(object sender, EventArgs e)
{
FrmTitle frm = new FrmTitle();
frm.TxtTitle.Text = Text;
frm.Text = "请输入重命名的工作区名称";
if (frm.ShowDialog() == DialogResult.OK)
{
Text = frm.TxtTitle.Text;
}
frm.Dispose();
}
}
}
@@ -1,424 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>111, 17</value>
</metadata>
<metadata name="imageListSmall.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>254, 17</value>
</metadata>
<data name="imageListSmall.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABU
QQAAAk1TRnQBSQFMAgEBEgEAAYQBAwGEAQMBEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABUAMAAQEBAAEgBgABUFIAQP/AACD/A4EF/wOBAf8DgQH/A4EF/wOBAf8B3gHbAd4B/8AAIP8BhAGC
AYQB/wOBAf8B7wHrAe8B/wHvAesB7wH/Ae8B6wHvAf8DgQH/AYQBggGEBf+cAAGBAaoG/xwACP8B3gHb
Ad4B/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wHvAesB7wH/Ae8B6wHvAf8DgQH/A4EB/wHvAesB7wH/
A4EF/5gAAYEBqgL/AZYCgQH/AYEBqgL/BAAE/xQACP8DgQH/Ad4B2wHeAf8B3gHbAd4B/wHGAcMBxgH/
AcYBwwHGAf8BxgHDAcYB/wOBAf8B7wHrAe8B/wHvAesB7wH/A4EB/wHvAesB7wH/Ae8B6wHvAf8DgQX/
mAABgQGqAv8BlgKBAf8BgQGqAv8IAAT/EAAI/wOBAf8B7wHrAe8B/wGEAYIBhAH/AYQBggGEAf8BxgHD
AcYB/wGEAYIBhAH/A4EB/wHvAesB7wH/Ae8B6wHvAf8DgQH/Ae8B6wHvAf8B7wHrAe8B/wOBBf+UAAKB
AbkB/wGBAaoC/wGWAoEB/wGBAaoC/wKBAZYB/wQABP8QAAj/A4EB/wHvAesB7wH/A4EB/wGcAZoBnAH/
AcYBwwHGAf8DgQH/AYQBggGEAf8DgQH/Ae8B6wHvAf8DgQH/Ae8B6wHvAf8DgQn/jAABgQGqAv8BgQGq
Av8BgQGqAv8BlgKBAf8BlgKBAf8BlgKBAf8BgQGqAv8BgQGqAv8BgQGqAv8QAAj/A4EB/wHvAesB7wH/
A4EB/wGcAZoBnAH/AcYBwwHGAf8DgQH/AYQBggGEAf8BxgHDAcYB/wOBAf8DgQH/A4EN/4gAAYEBqgL/
AZYCgQH/AZYCgQH/AZYCgQH/AZYCgQH/BAABlgKBAf8BlgKBAf8BlgKBAf8BlgKBAf8BgQGqAv8MAAj/
A4EB/wHvAesB7wH/A4EB/wGcAZoBnAH/AcYBwwHGAf8DgQH/AYQBggGEAf8BxgHDAcYB/wOBAf8BhAGC
AYQR/4wAAYEBqgL/AYEBqgL/AYEBqgL/AZYCgQH/AZYCgQH/AZYCgQH/AYEBqgL/AYEBqgL/AYEBqgL/
EAAI/wOBAf8B7wHrAe8B/wOBAf8BnAGaAZwB/wHGAcMBxgH/A4EB/wGEAYIBhAH/AcYBwwHGAf8DgRX/
lAACgQG5Af8BgQGqAv8BlgKBAf8BgQGqAv8CgQGWAf8YAAj/A4EB/wHvAesB7wH/AYQBggGEAf8BhAGC
AYQB/wHGAcMBxgH/AYQBggGEAf8BhAGCAYQB/wHGAcMBxgH/A4EV/5gAAYEBqgL/AZYCgQH/AYEBqgL/
HAAI/wOBAf8B3gHbAd4B/wHGAcMBxgH/AcYBwwHGAf8BxgHDAcYB/wHGAcMBxgH/AcYBwwHGAf8BxgHD
AcYB/wOBFf+YAAGBAaoC/wGWAoEB/wGBAaoC/xwABP8BnAGaAZwB/wOBAf8DgQH/A4EB/wOBAf8DgQH/
A4EB/wOBAf8DgQH/A4EB/wGcAZoBnBH/nAABgQGqAv8gAAj/AecB4wHnAf8B5wHjAecB/wOBAf8BhAGC
AYQB/wGEAYIBhAH/AYQBggGEAf8DgQH/AecB4wHnAf8B5wHjAecB/wHnAeMB5xH/wAAU/wGEAYIBhAH/
AYQBggGEAf8BhAGCAYQh/8AAQP/YAAQCAxoBJAMZASMcABT/A4EB/wOBAf8DgQH/A4Ed/wOBAf8DgQH/
A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8MAAM/
AWwDPgFrGAADQgFzAzoBYhwAAy0BRgNaAccBgQGQAYEB/wGBAZQBgQH/AYEBlAGBAf8BgQGPAYEB/wNa
AcIDKAE8EAAM/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgRX/A4EB/wGBA/8BgQP/AYED/wGB
A/8BgQP/AYED/wGBA/8BgQP/AYED/wGBA/8BgQP/AYED/wGBA/8BgQP/A4EB/wwAAzgBXQGBAYIC/wNh
AeYDMwFSCAADNwFaA10B6gKBAf4B/wMyAU8YAANTAaYBgQGqAYEB/wGBAbMBgQH/AYEBsAGBAf8BgQGv
AYEB/wGBAa4BgQH/AYEBrwGBAf8BgQGyAYEB/wGBAagBgQH/A08BmQwABP8DgQH/A4EB/wOBAf8DgQH/
A4EB/wOBAf8BgQHMAv8DgQH/A4EB/wOBAf8DgQH/A4EN/wQAA4EB/wGBA/8BgQP/AYED/wGBA/8BgQP/
A4EB/wOBAf8BgQP/AYED/wGBA/8BgQP/AYED/wOBAf8QAAMeASsBgQGDAfQB/wGBAaMC/wGBAZMB+wH/
A14B0gNfAdgBgQGVAf0B/wGBAaIC/wKBAfAB/wMUARsUAANUAagBgQGxAYEB/wGBAa4BgQH/AYEBrgGB
Af8BgQGdAYEB/wGBAaABgQH/AYEBrgGBAf8BgQGsAYEB/wGBAa0BgQH/AYEBrwGBAf8BgQGwAYEB/wNO
AZgIAAOBAf8DgQH/A4EB/wOBAf8DgQH/AYEBmQHMAf8BgQGZAcwB/wGBAcwC/wKBAZkB/wKBAcwB/wOB
Af8DgQH/A4EB/wOBAf8DgQX/BAADgQH/AYED/wGBA/8BgQP/AYED/wGBA/8DgQH/A4EB/wGBA/8BgQP/
AYED/wGBA/8BgQP/A4EB/xQAAoEB5wH/AYEBqwL/AYEBsAL/AYEBuQL/AYEBuQL/AYEBsAL/AYEBqwL/
A4AB/hQAAzABSgGBAaoBgQH/AYEBrgGBAf8BgQGuAYEB/wGBAZwBgQH/AYkBvgGSAf8BgQGZAYEB/wGB
AaIBgQH/AYEBsAGBAf8BgQGsAYEB/wGBAawBgQH/AYEBrwGBAf8BgQGnAYEB/wMoATsEAAOBAf8DgQH/
A4EB/wGBAZkBzAH/AYEBmQHMAf8BgQGZAcwB/wGBAZkBzAH/AYEBzAL/A5kB/wOZAf8DmQH/AoEBzAH/
A4EB/wOBAf8DgQX/CAADgQH/AYED/wGBA/8BgQP/AYED/wGBAtAB/wGBAtAB/wGBA/8BgQP/AYED/wGB
A/8DgQH/GAADXwHaAYEBwgL/AYEBxQL/AYEBygL/AYEByQL/AYEBxQL/AYEBwwL/A10BzBQAA18BzgGB
AbIBgQH/AYEBsQGBAf8BgQGiAYEB/wGEAbsBjgn/AYEBlAGBAf8BgQGsAYEB/wGBAbkBgQH/AYEBsQGB
Af8BgQGrAYEB/wGBAbIBgQH/A1kBvgQAA4EB/wGBAZkBzAH/AYEBmQHMAf8BgQGZAcwB/wGBAZkBzAH/
AYEBmQHMAf8BgQGZAcwB/wGBAcwC/wOZAf8DmQH/A5kB/wOZAf8BgQGZAcwB/wGBAZkBzAH/A4EF/wgA
A4EB/wGBA/8BgQP/AYED/wGBA/8DgQH/A4EB/wGBA/8BgQP/AYED/wGBA/8DgQH/FAADGwElA1oB9QGB
AdYC/wGBAdoC/wGBAeAC/wGBAeEC/wGBAdoC/wGBAdUC/wNiAe4DFQEdDAADBgEHAYEBkQGBAf8BgQG1
AYEB/wGBAaUBgQH/AYUBuwGOEf8BgQGUAYEB/wGBAbQBgQH/AYEBwQGBAf8BgQG1AYEB/wGBAbABgQH/
AYEBjgGBAf8EAAOBAf8BgQGZAcwB/wGBAZkBzAH/AYEBmQHMAf8BgQGZAcwB/wGBAZkBzAH/AYEBmQHM
Af8BgQHMAv8CgQHMAf8DmQH/A5kB/wKBAcwB/wKBAcwB/wKBAcwB/wOBBf8MAAOBAf8BgQP/AYED/wGB
A/8DgQH/A4EB/wGBA/8BgQP/AYED/wOBAf8UAAMfASwDKwH8AYEB3QL/AYEB4gL/AYMB8AL/AZAB8gL/
AZAB8gL/AYIB7gL/AYEB4QL/AYEB3QL/A2IB9gMZASMIAAMfASwBgQGcAYEB/wGBAb0BgQH/AZgB1gGq
Dv8B/gr/AYEBkwGBAf8BgQG5AYEB/wGBAcQBgQH/AYEBuAGBAf8BgQGVAYEB/wMWAR4DgQH/AYEBmQHM
Af8BgQGZAcwB/wGBAZkBzAH/AYEBmQHMAf8BgQGZAcwB/wGBAswB/wLMAv8BgQGZAcwB/wGBAZkBzAH/
AoEBzAH/AoEBmQH/AoEBzAH/AoEBzAH/A4EF/wwAA4EB/wGBA/8BgQP/AYED/wOBAf8DgQH/AYED/wGB
A/8BgQP/A4EB/xAAAyQBNQKBAeYB/wGBAdgC/wGBAeEC/wGHAfEC/wGkAfMC/wG2AfYC/wG2AfYC/wGj
AfMC/wGFAfAC/wGBAeAC/wGBAdgC/wNfAfsDHQEpBAADHwEsAYEBowGBAf8BgQHHAYEB/wGBAdsBlgn/
AYEB6AGiAf8BoAHxAcIN/wGBAZMBgQH/AYEBuwGBAf8BgQHEAYEB/wGBAZoBgQH/AxcBHwOBAf8BgQGZ
AcwB/wGBAZkBzAH/AYEBmQHMAf8BgQGZAcwB/wGZAcwC/wGZA/8BmQHMAv8BmQP/AZkBzAL/AYEBmQHM
Af8CgQHMAf8CgQHMAf8BgQGZAcwB/wOBBf8QAAOBAf8BgQP/AYED/wOBAf8DgQH/AYED/wGBA/8DgQH/
EAADCgENA2UB8QGBAY8B7gH/AYEBqgHyAf8BgQHVAf0B/wGeAfsC/wHCAfsC/wHdAfoC/wHcAfoC/wHC
AfsC/wGcAfkC/wGBAdIB/AH/AYEBqAHxAf8BgQGPAe4B/wNlAewDAwEEAwYBCAGBAZ4BgQH/AYEB0QGB
Af8BgQHYAYEB/wGBAegBqgH/AYcB8AG0Af8BgQHvAaMB/wGBAe8BogH/AbIB9wHPAv8B/gr/AYEBkwGB
Af8BgQG+AYEB/wGBAZkBgQH/BAADgQH/AYEBmQHMAf8BgQGZAcwB/wGZAcwC/wGZA/8BgQHMAv8BgQHM
Av8BmQHMAv8BgQHMAv8BgQHMAv8BmQP/AZkBzAL/AYEBmQHMAf8BgQGZAcwB/wOBBf8QAAOBAf8BgQP/
AYED/wOBAf8DgQH/AYED/wGBA/8DgQH/HAADHAEnAzABTANKAYoBoAHXAfcB/wHyA/8B8AP/AZMBzAHz
Af8DRwGCAzABSwMbASUQAANdAc8BgQHeAYgB/wGBAeIBkAH/AYEB7QGeAf8BgQHyAawB/wGNAfgBuQH/
AZQB+gG9Af8BhwH4AbQB/wG7AfkB1AL/Af4K/wGBAdgBgQH/A1oBwAQAA4EB/wGZAcwC/wGZA/8BgQHM
Av8BgQHMAv8BgQHMAv8BgQHMAv8BmQHMAv8BmQHMAv8BmQHMAv8BmQHMAv8BmQHMAv8BmQP/AZkBzAL/
A4EF/xQAA4EB/wGBA/8BgQKQAf8BgQKQAf8BgQP/A4EB/ywAA18B2gHcA/8B3QP/A1sBzRwAAzABTAGB
AdEBgQH/AYEB6wGdAf8BgQHyAasB/wGRAfkBuwH/AaoB/gHLAf8BuwH+AdQB/wGzAf4B0QH/AZEB+gG7
Af8BugH5AdMF/wGKAe0BtAH/AYEBxAGBAf8DKQE9BAADgQH/AYEBzAL/AYEBzAL/AYEBzAL/AYEBzAL/
AYEBzAL/AYEBzAL/AZkBzAL/AYEBzAL/AYEBzAL/AYEBzAL/AYEBzAL/AYEBzAL/AYEBzAL/A4EF/xQA
A4EB/wGBA/8BgQP/AYED/wGBA/8DgQH/LAADMwFQAZAB3wH+Af8BhAHUAfoB/wMrAUIgAANVAawBgQHu
AZwB/wGEAfgBtgH/AZ8B/AHEAf8BxwH/AdwB/wHoAf8B8QH/AdcB/wHmAf8BrQH+Ac0B/wGFAfcBtAH/
AYEB9QG0Af8BgQHiAYgB/wNQAZoIAAT/A4EB/wOBAf8BgQHMAv8BgQHMAv8BgQHMAv8BgQHMAv8BgQHM
Av8BgQHMAv8BgQHMAv8BgQHMAv8BgQHMAv8DgQH/A4EJ/xgAA4EB/wGBA/8BgQP/A4EB/zQAA2EB5ANh
AdYoAANUAasBgQHjAZQB/wGtAf8B0wH/AdEB/wHlAf8B8wH/AfkB/wHgAf8B7QH/AbUB/wHVAf8BmAH/
AccB/wGBAdoBggH/A1ABnQwADP8DgQH/A4EB/wGBAcwC/wGBAcwC/wGBAcwC/wGBAcwC/wGBAcwC/wOB
Af8DgRH/GAADgQH/AYED/wGBA/8DgQH/NAADNgFYAzABSywAAzABSgNdAcwBgQG9AYEB/wGBAdIBmAH/
AYEB0QGUAf8BgQG7AYEB/wNcAcYDKgFAEAAU/wOBAf8DgQH/AYEBzAL/A4EB/wOBGf8cAAOBAf8DgQH/
dAADAwEEAx0BKAMcAScEAhgAHP8DgSH/HAADgQH/A4EB/zQAA4EB/wOBAf8DgQH/A4EB/wOBAf8wAAMV
AR0DEwEZOAADDgESAw8BE0AABAIDCAEKAw8BFAMTARkDDwETAwYBBwQBEAADgQH/AoEB4QH/AoEB4wH/
AoEB5QH/AoEB5QH/AoEB5QH/AoEB5AH/AoEB4gH/A4EB/yQAAxMBGQNaAfIDWQHvAw8BEygAAyABLQNW
AbMDjAH/A7IB/wOyAf8DkAH/A1kBuQMkATQwAAMEAQUDEgEXAyQBNQMyAU8DNgFYAy8BSQMdASgDCQEL
DAADgQH/AoEB5wH/AoEB6gH/AoEBrAH/A4EB/wOBAf8DgQH/AoEBngH/AoEB6gH/AoEB6AH/A4EB/xwA
AxMBGQNlAfEBgQG6Av8BgQG3Av8DYgHuAw8BEyAAA0kBiAO4Bf8D9gH/A88B/wPNAf8D7wX/A8AB/wNO
AZUkAAQBAwcBCQMZASMDRAF4A1sBxANeAd0DXQHMA0wBjgM2AVkDGQEjCAADgQH/AoEB6wH/AoEB7wH/
AoEB8gH/A1kB7xAAA4EB/wKBAfEB/wKBAe0B/wOBAf8UAAMTARkDZQHxAYEBxwL/AYEBtgL/AYEBuAL/
AYEBxwL/A2IB7gMPARMYAANKAYoD0gH/A+YB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wPcAf8D2gH/
A1ABmhwABAIDDAEPAyQBNQNVAa0DTQH6AYEBmwH2Af8BgQGyAf4B/wGBAakB+QH/A2EB5gNIAYQDKQE+
CAACgQHvAf8CgQHzAf8CgQH3Af8CgQH6Af8CgQH9Af8DWQHvEAADgQH/AoEB9QH/AoEB8QH/EAADEwEZ
A2UB8QGBAcsC/wOBAf8BgQHHAv8BgQGcAdMB/wOBAf8BgQHIAv8DYgHuAw8BExAAAyIBMQOyAf8D2QH/
A4EB/wOBAf8DlgH/A9wB/wPeAf8DoAH/A4EB/wOBAf8DzAH/A7YB/wMpAT4QAAQCAwQBBQMRARYDMwFS
A10B0QGBAZsB5wH/AYEBngHwAf8BgQGjAfkB/wNNAfoBgQG1AfgB/wGBAZkB9QH/A1YBtQMvAUkEAAOB
Af8CgQH2Af8CgQHLAf8DOgFgAoEC/wKBAf4B/wKBAf4B/wNZAe8QAAKBAeUB/wKBAfgB/wNMAY8IAAMT
ARkDZQHxAYEBxgL/AYEBygL/A4EB/wGBAc8C/wOBAf8BgQGiAdQB/wGBAcIC/wGBAcQC/wNiAe4DDwET
DAADWQG5A54B/wOBAf8DgQH/A8YB/wPvAf8D+wH/A/kB/wPsAf8D0wH/A4EB/wOBAf8D3wH/A10ByQgA
AwQBBQMNAREDFwQfASwDRAF6A2UB5wGBAagB7AH/AYEBpgHvAf8BgQGnAe4B/wGBAaEB7wH/A2oB+QOA
Af4BgQGXAfkB/wNZAb4DJgE4BAADgQH/AoEB/QH/A4EB/wQAAzoBYAKBAf4B/wKBAf0B/wKBAf0B/wNZ
Ae8MAAOBAf8CgQL/A4EB/wQAAxMBGQNlAfEBgQHHAv8BgQHCAv8BgQHMAv8CgQGeAf8DgQH/A4EB/wGB
AdcC/wGBAcYC/wGBAcEC/wGBAcUC/wNiAe4DDwETCAADgQH/A4EB/wOBAf8DgQH/A9IB/wPYAf8D8gH/
A/IB/wPWAf8D0QH/A5UB/wOBAf8DqgH/A4EB/wQCAwUBBgMXAR8DMQFOA0ABbwNRAaIDXAH4AYEBuAHw
Af8BgQGuAe8B/wGBAasB+AH/AYEBsgH8Af8BgQGrAfAB/wGBAZ4B8wH/AYEBmwH8Af8BgQGWAfIB/wNJ
AYcDEwEZBAADgQH/AoEB/gH/A4EB/wgAAzoBYAKBAf0B/wKBAf0B/wKBAf0B/wNZAe8IAAOBAf8CgQH+
Af8DgQH/AxMBGQNlAfQBgQHJAv8BgQHDAv8BgQHJAv8BgQHTAv8BgQHpAv8DgQH/A4EB/wGBAdoC/wGB
AdAC/wGBAcgC/wGBAcIC/wGBAcUC/wNlAfEDDwEUAxMBGgOJAf8DkgH/A4EB/wOBAf8DqgH/A78B/wPc
Af8D2gH/A7sB/wO3Af8DvQH/A8cB/wO9Af8DjAH/Ax4BKgMYASEDUQGfA10B3wNlAfEDbQH3AYEBqgG+
Af8BgQG3AdsB/wGBAbgB8wH/AYEBrAHzAf8BgQGwAf0B/wGBAakB8wH/AYEBpQHvAf8DWgH1A00BkwMS
ARcDAwEEBAADgQH/AoEB/gH/A4EB/wwAAzoBYAKBAfwB/wKBAfwB/wKBAfwB/wNZAe8EAAOBAf8CgQH+
Af8DgQH/AwQBBQNfAdABgQHBAv8BgQHKAv8BgQHTAv8BgQGEAZoB/wOBAf8DgQH/AYEBgwGTAf8BgQHU
AfsB/wGBAY4BqAH/AYEB0QL/AYEByQL/AYEBvgL/A10ByQMCAQMDFQEdA4sB/wO6Af8DxwH/A8UB/wO8
Af8DvgH/A9EB/wPaAf8DwAH/A8AB/wOdAf8DgQH/A5AB/wOVAf8DHwEsA1ABnQGxAa4BrQH/Ac4BzQHM
Af8B2gHZAdgB/wHkAeAB3QH/AfEB4QHaAf8B5gHiAeYB/wGBAcYB7wH/AYEBtQHyAf8BgQGnAe8B/wGB
AaoB7wH/A2EB5AM7AWMDDAEPBAIIAANdAc8CgQH9Af8CgQHUAf8QAAM6AWACgQH7Af8CgQH7Af8CgQH8
Af8DWQHvAoEB/QH/AoEB/QH/AyoBQAgAA10BzwGBAcwC/wGBAdYC/wGBAbcB0wH/AYEBzgHtAf8BgQGr
Ab4B/wOBAf8DgQH/AYEBvQHdAf8BgQHWAv8BgQHJAv8DXAHIDAADgQH/A74B/wOBAf8DkwH/A9QB/wPY
Af8D8AH/A/UB/wPcAf8DvgH/A4EB/wOBAf8DgQH/A44B/wMGAQcDYwHpAcMBwgHBAf8BxAHDAcIB/wG7
AbkBuAH/AccBxgHFAf8B3gLfAf8B9wHtAekB/wHDAdMB3gH/AYEBuwHoAf8BgQG+AfQB/wNbAcUDKAE8
AwcBCQQBEAACgQH9Af8CgQH8Af8DgQH/EAADOgFgAoEB+gH/AoEB+wH/AoEB+wH/AoEB/AH/AoEB3QH/
EAADXQHPAYEB1QL/AYEB6QL/A4EB/wOBAf8BgQHdAfMB/wGBAe4C/wGBAeAC/wGBAdMC/wNcAcgQAANc
AcYD4QH/A4EB/wOBAf8D1QH/A+wB/wP3Af8D+wH/A+wB/wPjAf8DgQH/A4EB/wOMAf8DYQHWBAADXgHw
A14B8ANLAYwDWAG4Aa8BrQGsAf8BzALLAf8B6wHkAeIB/wGvAbwBwQH/A2IB7gNPAZcDFAEbAwQBBRgA
A4EB/wKBAfwB/wKBAfsB/wOBAf8QAAM6AWACgQH6Af8CgQH7Af8CgQH8Af8DWgG/FAADXQHPAYEB4QL/
AYEBvQHPAf8BgQGFAYsB/wGBAe8C/wGBAecC/wGBAdoC/wNcAcgUAAMtAUQDuwH/A9AB/wOBAf8DgQH/
A64B/wP1Af8D+gH/A7kB/wOBAf8DgQH/A8IB/wPNAf8DNAFTBAADOAFbAyUBNgMJAQsDKgFAA2UB8QHD
AcIBwQH/AeAB3QHaAf8DYQHrA0IBcwMVAR0EAiAAA4EB/wKBAfsB/wKBAfoB/wKBAfkB/wOBAf8DgQH/
A4EB/wKBAfkB/wKBAfoB/wKBAfoB/wOBAf8cAANdAc8BgQHnAv8BgQHxAv8BgQHpAv8BgQHgAv8DXAHI
HAADUwGpA+IB/wPYAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DzQH/A+kB/wNZAbkQAAMJAQsDRAF5
A00B+gHLAcoByQH/AdYB1QHUAf8DXgHXAygBPAMLAQ4oAANZAe8CgQHqAf8BgQGEAfkB/wGGAZIB+AH/
AY4BmgH4Af8BiwGXAfgB/wGBAYsB+QH/AoEBugH/A1UBryQAA10BzwGBAeEC/wGBAd8C/wNcAcgkAANV
Aa4D0QX/A9oB/wOzAf8DsQH/A9QF/wPbAf8DWAG6FAADQwF2AagCQAH9AcwBywHKAf8BwwHBAcAB/wNa
AfUDRAF4Aw8BEwMCAQMwAAMhATADgQH/A4EB/wOBAf8DDAEQMAADXgHSA1wByywAAzMBUANfAdgDqgH/
A9AB/wPUAf8DrgH/A14B3QM2AVkYAAM0AVQDVQGuA1gBuANKAYkDKQE+AwYBCAQCeAADAgEDAwIBAzQA
AwoBDQMjATMDJAE0AwwBD6gAAwkBCwMkATUwAAMbASUDPwFtAzoBYAMJAQssAAMEAQUDEAEVAyMBMgMx
AU0DMQFNAx8BLAMJAQwEAWgAAwMBBANgAeABhQKBAf8DYAHbAz0BaAMCAQMgAAM+AWsCgQHpAf8CgQH9
Af8BgQGDAfoB/wKBAdkB/wMkATUkAAMFAQYDFgEeAzsBZQNbAcQDYAHbA04BlgM5AV8DHQEpAwYBBwQB
AwMBBAMMAQ8DEwEZAw4BEgMEAQVQAANaAcIBlwGRAY4B/wOBAf8BgQHVAv8BgQGwAfoB/wOBAf8DUQGf
Ax8BLBgAAoEB0wH/AYEBkAL/AYEBkQL/AYEBlgL/AYEBpAL/A1sB0yQAAw8BFANOAZYDXwH7AoEC/wKB
Av8DYwHpA0sBjQM1AVUDGAEhAwwBEAMZASMDLAFDAzYBVwMsAUMDEwEZAwIBAwQAAxYBHgNhAdYDZQHn
A2EB5gNhAeYDYQHmA2EB5gNhAeYDYQHmA2EB5gNhAeYDYAHoA14B0gMLAQ4MAAM9AWcBoAGdAZwB/wOB
Af8BgQGcAccB/wKBAYcB/wKBAY0B/wKBAZUB/wKBAZwB/wOBAf8DYAHUA0IBdAM/AW0DQAFxAxMBGgQA
A1wB+AGBAZsC/wGBAZoC/wGBAaAC/wGBAaoC/wNeAeIMAAMoATsDTQGRA0oBiwMhAS8IAANPAZkBgQGP
AfoB/wKBAv8CgQL/AoEC/wKBAv8DXwHYA0YBfgM0AVQDMAFMA08BlwNhAesDXAHGA0MBdwMsAUMDEQEW
BAADUQGcAdcBhAGBAf8BxwKBAf8B9wHPAcUB/wH0AckBvwH/AfQByQG/Af8B9AHJAb8B/wH0AckBvwH/
AfQByQG/Af8B9AHJAb8B/wH0AckBvwH/AfUBywHBAf8B8gG9AbEB/wMzAVAMAANiAfYDgQH/AoEBpQH/
A4EB/wOBAf8BgQGiAYEB/wGBAbsBgQH/AYEBugGBAf8BgQG/AYEB/wGBAcMBgQH/AYEBxgGBAf8DgQH/
A4EB/wgAAzQBVAKBAe8B/wGBAakC/wGBAbAC/wGBAcAC/wNdAckIAAM/AW0BgQGdAfkB/wGBAbkC/wGB
Aa0C/wGBAYQB9gH/AzsBZAQAA0MBdwGBAbwB/QH/AYEBvAL/AoEB/gH/AoEC/wKBAv8CgQH6Af8DWgHC
A1EBnwNhAeYCgQH0Af8CgQL/A0AB/QNWAbUDPwFsAyMBMwQAA1kBuwHUAYQBgQH/AdABlAGLAf8B/QHg
AdYB/wH6AdsB0QH/AfoB2wHRAf8B+gHbAdEB/wH6AdsB0QH/AfoB2wHRAf8B+gHbAdEB/wH6AdsB0QH/
AfwB3gHVAf8B7AG3AasB/wMgAS4IAAM9AWkDgQH/AoEBkAH/AoEBnwH/A4EB/wOBAf8BgQHjAZAB/wGB
AdUBiAH/AYEB1QGIAf8BgQHVAYgB/wGBAdsBjAH/AYEBjQGBAf8DgQH/A1MBpgwAAxQBGwM/AW0DWAG6
AYEB2wL/A1cBsQgAA2EB6wGBAdUC/wGBAb8C/wGBAbAC/wGBAaoC/wNqAfkIAANVAa0BlQHWAv8BgQGq
Af4B/wKBAf4B/wKBAf4B/wKBAv8DQAH9A0AB/QKBAv8CgQL/AoEC/wKBAv8DbQH3A1EBngMjATIEAANZ
Ab4BzgKBAf8B1gGbAY8B/wHyAccBvAH/AfABwwG4Af8B8AHDAbgB/wHwAcMBuAH/AfABwwG4Af8B8AHD
AbgB/wHwAcMBuAH/AfABwwG4Af8B8gHIAb0B/wHdAZYBiwH/AwwBEAgAA18BzgOBAf8BgQHbAv8DgQH/
A4EB/wGBAbgBhQH/AZIB+wG3Af8BjwH2AbMB/wGPAfYBswH/AY8B9gGzAf8BlQH/AbsB/wOBAf8DgQH/
AzYBWBQAA0sBjAGBAfgC/wNOAZgIAANeAdIBgQHwAv8BgQHRAv8BgQHCAv8BgQGzAv8DXwH7CAADEgEX
A14B3QGLAcoC/wGBAYwB/QH/AoEB/gH/AoEB/gH/AoEC/wKBAv8CgQH+Af8CgQL/AoEC/wKBAv8DWgHy
A0cBggMPARMEAANWAbYBygKBAf8B2AGbAY4B/wHnAbIBpwH/AeUBsQGlAf8B5QGxAaUB/wHlAbEBpQH/
AeUBsQGlAf8B5QGxAaUB/wHlAbEBpQH/AeUBsQGlAf8B6AG0AagB/wHXAYsBgQH/AwwBDwQAAwQBBQOB
Af8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DEgEXFAADUwGn
AY4D/wNHAYEIAAMdASgDWgH1AYEBygH9Af8BgQG8AfkB/wGBAb4C/wNhAd4IAAQCAygBPANlAewCgQL/
AoEB/gH/AoEB/gH/AoEB/gH/AoEB/gH/AoEB/gH/AoEC/wKBAfsB/wNeAd0DMAFLAwkBCwQCBAADVQGs
AcwCgQH/AdABiwGBAf8B3QGeAZAB/wHcAZwBjgH/AdwBnAGOAf8B3AGcAY4B/wHcAZwBjgH/AdwBnAGO
Af8B3AGcAY4B/wHcAZwBjgH/Ad0BnwGRAf8B1QGGAYEB/wMdASgEAAMmATgDgQH/AoEBnQH/AYEBwAL/
A4EB/wOBAf8BgQHUAYEB/wGBAcoBgQH/AYEBygGBAf8BgQHKAYEB/wGBAcoBgQH/AYEB0wGBAf8DgQH/
A0AB/RgAA1kBvgGaA/8DPQFpEAADLQFEA1ABmgGBAcMC/wNaAcIEAAQCAw0BEQMjATIDXgHXAoEC/wGB
AYMB/gH/AoEB/gH/AoEB/gH/AoEB/gH/AoEC/wKBAfYB/wNaAccDNgFYAxQBGwQCCAADUwGpAdgBlQGI
Af8BxgKBAf8B3wGeAY8B/wHeAZsBjQH/Ad4BmwGNAf8B3QGaAYwB/wHbAZgBigH/AdsBmAGKAf8B2wGY
AYoB/wHbAZgBigH/AdsBmQGLAf8B3gGUAYcB/wM4AV0EAAM4AV0BkwGLAYgB/wGBAaMB0QH/AYEBvQH3
Af8DgQH/A4EB/wGBAecBlwH/AYEB2wGQAf8BgQHbAZAB/wGBAdsBkAH/AYEB2wGQAf8BgQHpAZcB/wOB
Af8DYQHeGAADYQHWAZYB6gL/AzEBTRQAA0YBfQGBAd0C/wNSAaUEAAMJAQsDMwFSA2AB1AGBAYwB/QH/
AYEBlQL/AYEBjgH+Af8BgQGIAf4B/wKBAf4B/wKBAf4B/wKBAv8CgQH1Af8DWAG8A0IBdAMoATsDDAEP
BAEEAANWAbAB7wG8Aa8B/wG7AoEB/wG8AoEB/wG9AoEB/wG8AoEB/wHHAoEB/wHoAaQBlwH/AeUBoAGT
Af8B5QGgAZMB/wHlAaABkwH/AeUBoAGTAf8B7gGpAZsB/wFWAlQBqwQAAwkBCwNCAXQDYQHkAYEBkQGy
Af8DgQH/A4EB/wGHAeABpwH/AYEB1QGfAf8BgQHVAZ8B/wGBAdUBnwH/AYEB1QGfAf8BhwHiAacB/wOB
Af8DXgHXGAADWQHvAbUD/wNgAeMDQAFwAyEBLwMJAQwEAAMGAQgDVgG2AYEB3wL/A0oBiQQAAzMBUQNg
AfMBgQGdAv8BgQGhAf4B/wGBAZ8B/gH/AYEBmwH+Af8BgQGWAv8BgQGHAf4B/wKBAf4B/wKBAf4B/wKB
Av8DgAH+A1UBrAM9AWgDIQEvAwkBDAQAA1wByAHzAcQBuAH/Ae8BwAG0Af8B7wHBAbQB/wHuAcEBtAH/
AfEBxAG4Af8BzQGNAYEB/wHHAoEB/wHYAYgBgQH/AdcBhwGBAf8B1wGHAYEB/wHZAYoBgQH/AecBlQGJ
Af8BvgKBAf8QAAMpAT4DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DgQH/A4EB/wOBAf8DYgH2GAABgQGd
AeUB/wGkAfsC/wHJA/8B0QH6Av8BmAHMAfQB/wGBAbQB6wH/AYEBpQHmAf8BgQGpAeoB/wGBAccB+AH/
AYEByQL/Az8BbQQAA00BkQGBAbEC/wGBAbgB/gH/AYEBqwH9Af8BgQGxAv8BgQGpAf0B/wGBAY4B9AH/
AYEBrAH9Af8BgQGbAf0B/wKBAf4B/wKBAf4B/wKBAv8DXgHwA04BlgM4AVsDGwEmBAADXAH4AfYBzwHE
Af8B8QHIAb0B/wHxAcgBvQH/AfEByAG9Af8B9gHQAcUB/wH4AckBvgH/AegBsAGlAf8B4AGiAZcB/wHh
AaMBmAH/AeMBpgGbAf8B0AKBAf8DLgFHAxsBJRQAA1oB9QOBAf8BgQHZAYEB/wGBAc4BgQH/AYEBzgGB
Af8BgQHOAYEB/wGBAdUBgQH/A4EB/wOBAf8DgQH/Ax0BKRAAAwkBDAGBAa4B8AH/AZAB+QL/AaIB8wL/
AbEB9gL/AbUB+QL/AagB+QL/AZAB+AL/AYEB6QL/AYEB1QL/AYEBtAH+Af8DMwFRBAADGwElA2IB4QGR
AdIC/wGKAckC/wGBAbEB+AH/A2AB4ANHAYEDZQHxAYEBtAL/AYEBhAH+Af8CgQH+Af8CgQL/AoEC/wNh
Ad4DRwGBAyIBMQMlATcB4gGsAaAC/wHgAdYB/wH9Ad0B0gH/Af0B3QHSAv8B4wHZAf8B0QGIAYEB/wM6
AWEDOAFbAzgBXAM4AVwDOAFdAysBQhwAA1kBvgOBAf8BgQHWAY8B/wGBAecBmwH/AYEB5QGaAf8BgQHl
AZoB/wGBAfEBogH/A4EB/wG3AbUBtgH/A4EB/wMZASMQAAMJAQsDYAHoAYEB1gL/AYsB/gL/AZMB+gL/
AZIB+AL/AYUB9AL/AYEB6QL/AYEB2wL/AYEBzgL/AYEBpAH8Af8DJQE3CAADKgE/A2EB6wNdAeoDSwGN
AxsBJgMFAQYDQAFwAYEBlwH7Af8BgQGNAv8CgQH+Af8CgQL/AoEC/wNqAfkDTgGUAxQBGwMZASMBUwJS
AaUDUgGhA1IBoQNSAaEDUQGfAyYBOTQAA0QBeAOBAf8DgQH/AYEBmAGBAf8BgQGUAYEB/wGBAZYBgQH/
AYEBhQGBAf8DgQH/A2oB+QM6AWEcAAM0AVQDVQGsA2AB6AGBAY4B2AH/AYEBmgHeAf8BgQGcAeAB/wGB
AY8B3wH/AoEB2gH/A1sB0wMHAQkMAAMVAR0DFAEbAwIBAwQBCAADUQGcAoEC/wKBAv8CgQH+Af8DTQH6
A0oBiwMVAR0DBAEFUAADBQEGAxcBHwMWAR4DFgEeAxYBHgMWAR4DFgEeAxMBGjQAAw8BEwMWAR4DEQEW
MAADCwEOA1wBywNaAfUDUwGmAygBOwMHAQkEAhwAAzABSgNAAXEDQAFwAy4BRzAAAysBQgM8AWYDOwFl
AyoBPxwABAIDIQQvAUkDOAFbAz0BaQNBAXIDRAF5A0QBeQNDAXcDQAFuAzoBYAMxAU0DIQEwBAE0AAMI
AQoDFgEeGAADSgGJA4EB/wGUAY8BjAH/AaIBiwGBAf8BogGLAYEB/wGTAY8BjQH/A4EB/wNHAYEcAAQB
A00BkQKBAdkB/wKBAfEB/wKBAfsB/wKBAfsB/wKBAfAB/wKBAdcB/wNJAYgUAAOBAf8BgQGsAYEB/wGB
AZ4BgQH/AYEBrgGBAf8BgQHLAYEB/wGBAdABgQH/AYEB1QGBAf8BgQHVAYEB/wGBAdIBgQH/AYEBzAGB
Af8BgQGvAYEB/wGBAaABgQH/AYEBrAGBAf8DagH5MAADIAEuA4AB/gKBAbcB/wNEAXgQAANgAdQBoAGb
AZcB/wGkAoEB/wHWAZIBgQH/AcsBjAGBAf8B0QGTAYEB/wHTAYwBgQH/AaMCgQH/AaIBnQGbAf8DXQHJ
FAADDwEUA2UB5wGBAYgC/wGBAYkC/wGBAYgC/wGBAYIB+gH/AYEBhAH8Af8BgQGIAv8BgQGJAv8BgQGH
Av8DYQHeAwoBDQwAA2AB8wGBAdUBgQH/AYEB1gGBAf8BgQHbAYgB/wGBAekBmQH/AYEB7AGeAf8BgQHu
AaMB/wGBAe4BowH/AYEB7AGeAf8BgQHpAZkB/wGBAdsBiQH/AYEB1AGBAf8BgQHXAYEB/wNgAdssAAMg
AS4CgQGYAf8CgQHbAf8BiwGVAfYB/wKBAcgB/wMNAREIAANXAbEBlQGLAYUB/wG9AoEC/wHOAa0C/wHc
AcUB/wHTAaABhwH/AcwBlAGBAv8B1gG9Av8BxwGnAf8BtgKBAf8BlQGOAYsB/wNSAaQQAANgAeMBgQGP
Av8BgQGKAv8BgQGMAv8BgQGLAv8CgQHFAf8CgQHFAf8BgQGNAv8BgQGLAv8BgQGKAv8BgQGNAv8DXwHY
DAADVAGrAYEB6AGTAf8BgQHoAZgB/wGBAe8BpAH/AYEB9AGtAf8BhgH6AbcB/wGBAd8BlQH/AYEB4QGX
Af8BhgH8AbkB/wGBAfQBrQH/AYEB7wGkAf8BgQHnAZgB/wGBAeQBjQH/A0gBhCgAAyABLgKBAZgB/wKB
AdoB/wGBAYwB7wH/Ac0B1wL/A14B7QgAAyMBMwOBAf8BqAKBAv8BuwGWAf8BzQGiAYwB/wHqAa0BjwH/
AeMBrgGSAf8B4QGrAY8C/wHJAa8C/wG8AZsC/wGyAYwB/wGiAoEB/wOBAf8DGwElCAADSQGGAYEBjAL/
AYEBjQL/AYEBkAL/AYEBlQL/AoEBxQb/Af4B/AH/AoEBxgH/AYEBlQL/AYEBjwL/AYEBjAL/AYEBigL/
A0IBdQgAAyABLQGBAcQBgQH/AYEB9gGoAf8BgQH0AawB/wGBAeIBmAH/AYEBoQGBAf8BtAHVAbUB/wGy
AdQBsgH/AYEBnwGBAf8BgQHmAZwB/wGBAfMBqwH/AYEB+AGqAf8BgQGuAYEB/wMMARAoAAMrAfwCgQHb
Af8BgQGMAe8B/wHNAdYC/wNiAe4DDwEUCAADUQGcAYoCgQH/AeABiAGBAf8B9wGnAYEC/wHhAc4B/wHK
AbABpgH/AdsBlgGBAv8BzwGzAv8BvwGfAf8B/AGyAY4B/wH1AaYBgQH/AdgCgQH/AYcCgQH/A0wBjwgA
A2oB+QGBAZMC/wGBAZIC/wGBAZsC/wKBAckB/wH1AfMB9wn/AeoB6wHzAf8CgQHOAf8BgQGZAv8BgQGR
Av8BgQGTAv8DYgHuDAADLgFIAysB/AGBAfgBpwH/AYEBpgGBAf8B6QHbAeMB/wGBAZQBsQH/AYIBlAGy
Af8B6wHcAeUB/wGBAaYBgQH/AYEB9QGlAf8DWgHyAyIBMRQAAxYBHgNLAY0DWgG9A1YBtgNAAXEDNgFX
AoEBsQH/AY0BlwH5Af8BzgHXAv8DYgHuAw8BEwwAAV4CWwHTAZ0CgQH/AccCgQH/AcICgQH/AdwBiwGB
Av8B6wHcAf8B3AHPAckB/wHZAYcBgQL/AbcBkQH/AfUBpgGBAf8BuAKBAf8BzQKBAf8BmgKBAf8DXAHG
BAADIQEvAoEB6AH/AYEBlgL/AYEBnAL/AoEB0gH/AdwB3wHuEf8BzwHUAegB/wKBAdgB/wGBAZsC/wGB
AZQC/wKBAeUB/wMXAR8MAAMGAQcDRgF9A10B6gKBAcQB/wGBAZYB3gH/AYEBlgHeAf8CgQHEAf8DYwHp
A0IBdRgAAz4BagG2AroB/wHRAaMBnQH/AdEBjgGGAf8B0gGSAYoB/wHSAa0BqQH/AZsBoQGeAf8CgQGR
Af8CgQG8Af8DYQHrAw8BFBAAA10B3wGpAoEB/wGzAoEB/wGaAoEB/wG5AoEB/wHxAZoBgQH/AfkB6wHl
Af8CgQHBAf8B2gKBAf8B7gGZAYEB/wGoAoEB/wG/AoEB/wGlAoEB/wFeAlsB0wQAAzIBTwGBAYIB8gH/
AYEBmwL/AoEB3QH/AbwBxgHjGf8BqwG6Ad4B/wKBAeEB/wGBAZkC/wKBAe0B/wMqAT8QAAMDAQQDWgH1
AYYBtwHzAf8BgwG3AfEB/wGEAbcB8gH/AYcBuAH0Af8DYgH2AwYBCBQAAy0BRQG8AroB/wG2AoEB/wHn
AZsBjAL/AcwBvAL/AeYB3QH/Ae0BwwG6Af8BvwKBAf8BmQGdAZsB/wMrAUIYAANcAcMBsAGEAYEB/wHJ
AoEB/wHTAoEB/wHYAoEB/wHfAYoBgQH/AekBiwGBAf8CgQG2Af8CgQGqAf8B3gKBAf8B1QKBAf8BxwKB
Af8BsQGKAYEB/wNWAbYEAAMwAUsBgQGDAfEB/wGBAZoC/wGhAb8B5SH/AZEBtwHlAf8BgQGZAv8CgQHt
Af8DKAE7EAADRgF9AYUBuQH4Af8BiwHCAfcB/wGPAcgB+wH/AZAByAH9Af8BjAHDAfgB/wGHAbwB+gH/
A0cBgBQAA2EB1gG6AoEB/wHVAYQBgQH/Ae4BrAGcAv8B0AHBAv8B7AHoAv8B/AH6Af8B8wHDAbgB/wG+
AZMBkAH/A0kBiBgAA0UBfAHQAcMBvQH/Aa4CgQH/AcYCgQH/AcsCgQH/AdECgQH/AdACgQH/AeUCgQH/
AoEBkwH/AoEBkgH/AcoCgQH/AawCgQH/AcwBxAG/Af8DQAFuBAADGAEgAoEB5QH/AYEBoAL/AYEBvwL/
AYEBwgL/AYkB1hL/AYEB0QL/AYEBwAL/AYEBvAL/AYEBnwL/AoEB4gH/Aw0BERAAA1kBvgGTAcoC/wGZ
Ac8B/gH/AacB1gL/AagB1gL/AZ0B0gH+Af8BlQHNAv8DWQHBEAADBgEIAZEBlAGVAf8BuQKBAf8B0QKB
Af8B6AGiAZQB/wH+AcUBtQL/AdsB0AL/Ad8B1wL/AdYBxwH/AcICgQH/A14B0hgAAwgBCgGYAZ8BowH/
AbQCgQH/AcsCgQH/AcQCgQH/Ab8CgQH/AeMBuQGiAf8B8gHhAdkB/wHOAoEB/wOBAf8BwwKBAf8BuwGG
AYEB/wOAAf4DAgEDCAADYQHmAYEBqgL/AYEBpgL/AYEBrQL/AYEByRL/AYEBwgL/AYEBqgL/AYEBpQL/
AYEBqQL/A2EB1hQAA10BzAGdAdQC/wGvAdkC/wHBAeIC/wHDAeIC/wGyAdsC/wGgAdYC/wNdAc8QAAMQ
ARUBjQGKAYkB/wHFAoEB/wHKAoEB/wHaAY4BgQH/Ae8BqwGbAf8B+wG9Aa4B/wH8AcABsQH/AfcBtwGm
Af8BwAKBAf8DYQHeHAADOgFgAc0B0gHUAf8BsAKBAf8BywKBAf8B2gGLAYEB/wH4AecB3wH/AesBwQGs
Af8B3AGQAYEB/wHPAoEB/wG1AoEB/wHGAcwBzwH/AzMBUgwAAzkBXwGBAZsC/wGBAa8C/wGBAbQC/wGB
AdES/wGBAcoC/wGBAbIC/wGBAa0C/wGBAZUB/AH/AzMBUBQAA1UBrAGrAd8C/wHBAeEC/wHaAe4C/wHd
Ae8C/wHFAeMC/wGxAeEC/wNVAa8UAAGBAYMBhAH/Ab8CgQH/AfAB0AHMAf8BzwKBAf8B1QGFAYEB/wHh
AZgBiwH/AeMBmwGNAf8B4AGTAYYB/wGyAoEB/wNYAbcgAANAAW4BswG6Ab0B/wHaAb4BrwH/AboCgQH/
AbUCgQH/AbcCgQH/AbsCgQH/AdoBwQG0Af8BrQGzAbgB/wM5AV8UAANYAboBgQGyAv8BgQG7Av8BgQHA
Av8BgQHJAv8BgQHRAv8BgQHOAv8BgQHGAv8BgQG9Av8BgQG5Av8BgQGrAv8DUwGpGAADNAFTAZUBygH+
Af8BzAHoAv8B7AH2Av8B8QH4Av8B0QHqAv8BnAHOAv8DNgFXFAADUAGbAaoBgwGBAf8B4QGkAZoF/wHa
AaABmAH/AcoCgQH/AdACgQH/AbYCgQH/AaUBnAGaAf8DMAFMJAADGAEhA1MBqgGWAkAB/QGrAbEBtAH/
AawBswG2Af8DagH5A1MBpgMVARwcAANWAbMBgQGmAfwB/wGBAc0C/wGBAdAC/wGBAdYC/wGBAdQC/wGB
Ac0C/wGBAcsC/wGBAZ8B+AH/A1MBpiAAA1wBywHJAeoC/wHqAfcC/wHsAfoC/wHOAe4C/wNbAc0YAAME
AQUDZQHlAaYCgQH/AcYCgQH/AdcBkQGGAf8BzAKBAf8BtAKBAf8BpgGUAZIB/wNVAawwAANNAZIDxwH/
A6UB/wM0AVMoAAMxAU4DXQHMAYEBggHbAf8BgQGYAeMB/wGBAZcB4wH/AoEB2gH/A1wBxgMtAUQkAAQC
A1EBnwGBAY0BzAH/AYEBjgHMAf8DUgGhAwIBAxwAAwYBCANVAawDgQH/AYgCgQH/AYYCgQH/A0AB/QNG
AX44AAM+AWoDNQFVNAADAgEDAxsBJQMaASQEAWgAAwYBBwMkATQDIAEtJAABQgFNAT4HAAE+AwABKAMA
AUADAAFQAwABAQEAAQEFAAGAAQIWAAP/AQAC/wYAAv8GAAL/BgAB/gF/BgAB/AFfBgAB/AFvBgAB+AEv
BgAB4AEPBgABwQEHBgAB4AEPBgAB+AE/BgAB/AF/BgAB/AF/BgAB/gH/BgAC/wYAAv8GAAL/AfwBfwQA
AucB8AEPBAAB4QGHAeABBwIAAYABAQHgAQcBwAEDAgABgAEBAfABDwGAAQECAAHAAQMB8AEPAYABAQIA
AcABAwHgAQcBAAEBAgAB4AEHAcABAwQAAeABBwGAAQEEAAHwAQ8DAAEBAgAB8AEPAeABBwGAAQECAAH4
AR8B/AE/AYABAQIAAfgBHwH8AT8BwAEDAgAB/AE/Af4BfwHgAQcCAAH8AT8B/gF/AfABDwIAAf4BfwL/
AfwBPwIAAf4BfwH8AR8B/gF/Af4BfwH/AYAB8AEHAfwBPwHwAQ8B/wEAAeABAwH4AR8B4AEHAfwBAAHB
AeEB8AEPAcABAwH4AQABwAHxAeABBwGAAQEB4AEAAYABeAHAAQMBgAEBAYABAAGIATgBgAEBAYADAAGM
ARgGAAGOAQgFAAEBAY8BAAHAAQMBgAIAAQMBxwGBAeABBwGAAQEBAAEPAcMBwQHwAQ8BgAEBAQABHwHg
AQMB+AEfAcABAwHAAT8B8AEHAfwBPwHgAQcBwAE/AfwBHwH+AX8B8AEPAcABfwL/Af4BfwH8AT8E/wHz
Af8BwwH/AYABfwL/AeABfwGBAf8BAAEBAv8B4AEfAYEB/wIAAYABAQHAAQABgQHDAgABgAEBAcABAQKB
AgABgAEBAYABAQHBAYEBgAEAAYABAQGAAQEB8QGBAYABAAGAAQEBAAEBAfEBgQGAAQABgAEBAQABAwHx
AeEBAAEBAYABAQEAAQMC8QIAAYABAQEAAQMB8AEhAgABgAEBAeABAwHwAQECAAGAAQEB8AEBAeABAQMA
AQcB8AEBAeABAQGAAQABAQH/AfABAwH4AQEBwwEAAv8B8AEPAf8BjwH/AQEB/AE/AfwBPwGAAQEB/wHz
AfABDwHgAQ8BgAEBAf8B4QHgAQcBwAEDAYABAQH/AsABAwHAAQMBgAEBAf8BgQGAAQEBgAEBAYABAQH/
AYEBgAEBAYABAQHAAQMB4AEDAYABAQIAAeABDwHAAQcBgAEBAgAB8AEPAYABHwGAAQECAAHwAQ8BgAEf
AYABAQIAAfABDwEAAR8BgAEBAYABAQHwAQ8BAAEfAcABAwGAAQEB8AEPAYABHwHgAQcBwAEDAfABDwGA
AR8B8AEPAeABBwH4AR8BgAE/AfwBPwHwAQ8B+AEfAcABfwH+AX8B/AE/Av8B8QH/Cw==
</value>
</data>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="folderBrowserDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>394, 17</value>
</metadata>
<metadata name="treeRenderer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>574, 17</value>
</metadata>
<metadata name="MenuForm.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>710, 17</value>
</metadata>
</root>
@@ -1,267 +0,0 @@
namespace 开发辅助工具.Tools.SmartEditor
{
partial class FrmFileEditor
{
/// <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(FrmFileEditor));
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.关闭本标签ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.除此之外全部关闭ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.关闭左边全部标签ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.关闭右边全部标签ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.收藏该文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
this.在资源管理器中定位该文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.在工作区定位当前文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.打开其它站点文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.编辑FTP上的对应文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.比对FTP上的对应文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripSeparator();
this.复制路径ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.复制文件名ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.复制所在文件夹路径ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator();
this.查看历史记录ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.文件信息ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.highlightEditor1 = new ryControls.HighlightEditor();
this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout();
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.关闭本标签ToolStripMenuItem,
this.除此之外全部关闭ToolStripMenuItem,
this.关闭左边全部标签ToolStripMenuItem,
this.关闭右边全部标签ToolStripMenuItem,
this.toolStripMenuItem1,
this.收藏该文件ToolStripMenuItem,
this.toolStripMenuItem2,
this.在资源管理器中定位该文件ToolStripMenuItem,
this.在工作区定位当前文件ToolStripMenuItem,
this.打开其它站点文件ToolStripMenuItem,
this.编辑FTP上的对应文件ToolStripMenuItem,
this.比对FTP上的对应文件ToolStripMenuItem,
this.toolStripMenuItem4,
this.复制路径ToolStripMenuItem,
this.复制文件名ToolStripMenuItem,
this.复制所在文件夹路径ToolStripMenuItem,
this.toolStripMenuItem3,
this.查看历史记录ToolStripMenuItem,
this.文件信息ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(221, 380);
this.contextMenuStrip1.Opening += new System.ComponentModel.CancelEventHandler(this.ContextMenuStrip1_Opening);
//
// 关闭本标签ToolStripMenuItem
//
this.关闭本标签ToolStripMenuItem.Name = "关闭本标签ToolStripMenuItem";
this.关闭本标签ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.关闭本标签ToolStripMenuItem.Text = "关闭本标签";
this.关闭本标签ToolStripMenuItem.Click += new System.EventHandler(this.关闭本标签ToolStripMenuItem_Click);
//
// 除此之外全部关闭ToolStripMenuItem
//
this.除此之外全部关闭ToolStripMenuItem.Name = "除此之外全部关闭ToolStripMenuItem";
this.除此之外全部关闭ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.除此之外全部关闭ToolStripMenuItem.Text = "除此之外全部关闭";
this.除此之外全部关闭ToolStripMenuItem.Click += new System.EventHandler(this.除此之外全部关闭ToolStripMenuItem_Click);
//
// 关闭左边全部标签ToolStripMenuItem
//
this.关闭左边全部标签ToolStripMenuItem.Name = "关闭左边全部标签ToolStripMenuItem";
this.关闭左边全部标签ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.关闭左边全部标签ToolStripMenuItem.Text = "关闭左边全部标签";
this.关闭左边全部标签ToolStripMenuItem.Click += new System.EventHandler(this.关闭左边全部标签ToolStripMenuItem_Click);
//
// 关闭右边全部标签ToolStripMenuItem
//
this.关闭右边全部标签ToolStripMenuItem.Name = "关闭右边全部标签ToolStripMenuItem";
this.关闭右边全部标签ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.关闭右边全部标签ToolStripMenuItem.Text = "关闭右边全部标签";
this.关闭右边全部标签ToolStripMenuItem.Click += new System.EventHandler(this.关闭右边全部标签ToolStripMenuItem_Click);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(217, 6);
//
// 收藏该文件ToolStripMenuItem
//
this.收藏该文件ToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("收藏该文件ToolStripMenuItem.Image")));
this.收藏该文件ToolStripMenuItem.Name = "收藏该文件ToolStripMenuItem";
this.收藏该文件ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.收藏该文件ToolStripMenuItem.Text = "收藏该文件";
this.收藏该文件ToolStripMenuItem.Click += new System.EventHandler(this.收藏该文件ToolStripMenuItem_Click);
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(217, 6);
//
// 在资源管理器中定位该文件ToolStripMenuItem
//
this.在资源管理器中定位该文件ToolStripMenuItem.Name = "在资源管理器中定位该文件ToolStripMenuItem";
this.在资源管理器中定位该文件ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.在资源管理器中定位该文件ToolStripMenuItem.Text = "在资源管理器中定位该文件";
this.在资源管理器中定位该文件ToolStripMenuItem.Click += new System.EventHandler(this.在资源管理器中定位该文件ToolStripMenuItem_Click);
//
// 在工作区定位当前文件ToolStripMenuItem
//
this.在工作区定位当前文件ToolStripMenuItem.Name = "在工作区定位当前文件ToolStripMenuItem";
this.在工作区定位当前文件ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.在工作区定位当前文件ToolStripMenuItem.Text = "在工作区定位当前文件";
this.在工作区定位当前文件ToolStripMenuItem.Click += new System.EventHandler(this.在工作区定位当前文件ToolStripMenuItem_Click);
//
// 打开其它站点文件ToolStripMenuItem
//
this.打开其它站点文件ToolStripMenuItem.Name = "打开其它站点文件ToolStripMenuItem";
this.打开其它站点文件ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.打开其它站点文件ToolStripMenuItem.Text = "打开其它站点文件";
this.打开其它站点文件ToolStripMenuItem.Click += new System.EventHandler(this.打开其它站点文件ToolStripMenuItem_Click);
//
// 编辑FTP上的对应文件ToolStripMenuItem
//
this.编辑FTP上的对应文件ToolStripMenuItem.Name = "编辑FTP上的对应文件ToolStripMenuItem";
this.编辑FTP上的对应文件ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.编辑FTP上的对应文件ToolStripMenuItem.Text = "编辑FTP上的对应文件";
this.编辑FTP上的对应文件ToolStripMenuItem.Click += new System.EventHandler(this.编辑FTP上的对应文件ToolStripMenuItem_Click);
//
// 比对FTP上的对应文件ToolStripMenuItem
//
this.比对FTP上的对应文件ToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("比对FTP上的对应文件ToolStripMenuItem.Image")));
this.比对FTP上的对应文件ToolStripMenuItem.Name = "比对FTP上的对应文件ToolStripMenuItem";
this.比对FTP上的对应文件ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.比对FTP上的对应文件ToolStripMenuItem.Text = "比对FTP上的对应文件";
this.比对FTP上的对应文件ToolStripMenuItem.Click += new System.EventHandler(this.比对FTP上的对应文件ToolStripMenuItem_Click);
//
// toolStripMenuItem4
//
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
this.toolStripMenuItem4.Size = new System.Drawing.Size(217, 6);
//
// 复制路径ToolStripMenuItem
//
this.复制路径ToolStripMenuItem.Name = "复制路径ToolStripMenuItem";
this.复制路径ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.复制路径ToolStripMenuItem.Text = "复制完整路径";
this.复制路径ToolStripMenuItem.Click += new System.EventHandler(this.复制路径ToolStripMenuItem_Click);
//
// 复制文件名ToolStripMenuItem
//
this.复制文件名ToolStripMenuItem.Name = "复制文件名ToolStripMenuItem";
this.复制文件名ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.复制文件名ToolStripMenuItem.Text = "复制文件名";
this.复制文件名ToolStripMenuItem.Click += new System.EventHandler(this.复制文件名ToolStripMenuItem_Click);
//
// 复制所在文件夹路径ToolStripMenuItem
//
this.复制所在文件夹路径ToolStripMenuItem.Name = "复制所在文件夹路径ToolStripMenuItem";
this.复制所在文件夹路径ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.复制所在文件夹路径ToolStripMenuItem.Text = "复制所在文件夹路径";
this.复制所在文件夹路径ToolStripMenuItem.Click += new System.EventHandler(this.复制所在文件夹路径ToolStripMenuItem_Click);
//
// toolStripMenuItem3
//
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
this.toolStripMenuItem3.Size = new System.Drawing.Size(217, 6);
//
// 查看历史记录ToolStripMenuItem
//
this.查看历史记录ToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("查看历史记录ToolStripMenuItem.Image")));
this.查看历史记录ToolStripMenuItem.Name = "查看历史记录ToolStripMenuItem";
this.查看历史记录ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.查看历史记录ToolStripMenuItem.Text = "查看历史记录";
this.查看历史记录ToolStripMenuItem.Click += new System.EventHandler(this.查看历史记录ToolStripMenuItem_Click);
//
// 文件信息ToolStripMenuItem
//
this.文件信息ToolStripMenuItem.Name = "文件信息ToolStripMenuItem";
this.文件信息ToolStripMenuItem.Size = new System.Drawing.Size(220, 22);
this.文件信息ToolStripMenuItem.Text = "文件信息";
this.文件信息ToolStripMenuItem.Click += new System.EventHandler(this.文件信息ToolStripMenuItem_Click);
//
// highlightEditor1
//
this.highlightEditor1.AutoMark = true;
this.highlightEditor1.Dock = System.Windows.Forms.DockStyle.Fill;
this.highlightEditor1.Font = new System.Drawing.Font("Consolas", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.highlightEditor1.LineNumberOn = true;
this.highlightEditor1.Location = new System.Drawing.Point(0, 0);
this.highlightEditor1.Name = "highlightEditor1";
this.highlightEditor1.ReadOnly = false;
this.highlightEditor1.SelectedText = "";
this.highlightEditor1.Size = new System.Drawing.Size(800, 450);
this.highlightEditor1.TabIndex = 0;
this.highlightEditor1.UseCustomGotoLine = false;
this.highlightEditor1.UseCustomShowFindReplace = false;
//
// FrmFileEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 450);
this.Controls.Add(this.highlightEditor1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmFileEditor";
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show;
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.TabPageContextMenuStrip = this.contextMenuStrip1;
this.Text = "文件编辑";
this.contextMenuStrip1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
public ryControls.HighlightEditor highlightEditor1;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem 关闭本标签ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 除此之外全部关闭ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem 收藏该文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
private System.Windows.Forms.ToolStripMenuItem 在资源管理器中定位该文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 复制路径ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 复制文件名ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 复制所在文件夹路径ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3;
private System.Windows.Forms.ToolStripMenuItem 文件信息ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 打开其它站点文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 在工作区定位当前文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem4;
private System.Windows.Forms.ToolStripMenuItem 查看历史记录ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 关闭左边全部标签ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 关闭右边全部标签ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 编辑FTP上的对应文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 比对FTP上的对应文件ToolStripMenuItem;
}
}
@@ -1,762 +0,0 @@
using ryCommon;
using ryCommonDb;
using 开发辅助工具.Manager.FTP;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Security.Policy;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Linq;
using WeifenLuo.WinFormsUI.Docking;
using 开发辅助工具.Manager;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.Window;
using static System.Net.Mime.MediaTypeNames;
using System.IO;
using ryControls;
using SuperDesign.Tools.SmartEditor;
using GameBackup3H3.DbOp;
using MyPage;
using ZXing;
using ObjectListViewDemo;
namespace 开发辅助工具.Tools.SmartEditor
{
public partial class FrmFileEditor : DockContent
{
public FrmFileEditor()
{
InitializeComponent();
AutoScaleMode = AutoScaleMode.Dpi;
highlightEditor1.TextChanged += HighlightEditor1_TextChanged;
highlightEditor1.OnSaveKeyHappen += HighlightEditor1_OnSaveKeyHappen;
List<string> autoc_list = new List<string>();
highlightEditor1.Font = new Font("Consolas",11.75f);
autoc_list.AddRange(RyFiles.ReadAllLines(System.Windows.Forms.Application.StartupPath + "\\SysDb\\AutoComplete\\editor.txt"));
highlightEditor1.SetAutoCompleteList(autoc_list);
}
private void HighlightEditor1_OnSaveKeyHappen(object sender, EventArgs e)
{
OnSaveKeyHappen?.Invoke(this, e);
}
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == (Keys.Control | Keys.R))
{
if (FilePath.Length == 0)
{
return true;
}
}
return base.ProcessCmdKey(ref msg, keyData);//这里就是返回没有重写的键位,也就是这个函数原本的处理方式 //其余键位默认处理
}
/// <summary>
/// 未保存状态改变
/// </summary>
[Description("未保存状态改变")]
public event EventHandler OnUnSaveChanged;
/// <summary>
/// 保存热键发生时
/// </summary>
[Description("保存热键发生时")]
public event EventHandler OnSaveKeyHappen;
/// <summary>
/// 打开其它站点文件
/// </summary>
[Description("打开其它站点文件")]
public event EventHandler OnOpenOtherSiteFile;
private void HighlightEditor1_TextChanged(object sender, EventArgs e)
{
if (!IsChanged)
{
IsChanged = true;
OnUnSaveChanged?.Invoke(this, new EventArgs());
}
}
/// <summary>
/// 对应的Site
/// </summary>
public SiteInfo SiteInfo { get; set; } = new SiteInfo();
private Encoding encoding = Encoding.UTF8;
/// <summary>
/// 当前文件格式
/// </summary>
public Encoding Encoding {
get { return encoding; }
set
{
encoding = value;
OnUnSaveChanged?.Invoke(this, new EventArgs());
}
}
/// <summary>
/// 加载的文件大小
/// </summary>
public long FileSize { get; private set; } = 0;
/// <summary>
/// 文件写入时间
/// </summary>
public long FileWriteTime { get; private set; } = 0;
/// <summary>
/// 文件创建时间
/// </summary>
public long FileCreateTime { get; private set; } = 0;
/// <summary>
/// 当前选择的文件路径
/// </summary>
public string FilePath { get; set; } = "";
/// <summary>
/// 当前选择的FTP远程文件路径,只有当FilePath为空时才生效
/// </summary>
public string FTPRemotePath { get; set; } = "";
public void GetFileInfo(string path)
{
FileSize = RyFiles.GetFileSize(path);
var dt = RyFiles.GetFileDate(path);
FileWriteTime = dt.LastWriteTime.ToInt64();
FileCreateTime = dt.CreateTime.ToInt64();
}
public void LoadFile(string path,string CacheText="")
{
if (!System.IO.File.Exists(path)) {
MessageBox.Show("文件不存在=>"+path, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.Close();
return;
}
Encoding = TxtFileEncoder.GetEncoding(path,Encoding.GetEncoding("GB2312"));
highlightEditor1.SetHightlightText(CacheText.Length==0? RyFiles.ReadAllText(path,Encoding): CacheText, System.IO.Path.GetFileName(path));
GetFileInfo(path);
FilePath = path;
SiteInfo.FtpId=0;
SiteInfo.Id = 0;
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
DataSet ds = db.ReadData("select * from Site");
if (ds.HaveData())
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
DataRow reader = ds.Tables[0].Rows[i];
if (FilePath.IndexOfEx(reader["localPath"].ToString()) < 0)
{
continue;
}
#region 读取信息
SiteInfo.Name = reader["name"].ToString();
SiteInfo.LocalPath = reader["localPath"].ToString();
SiteInfo.FtpDir = reader["ftpDir"].ToString();
SiteInfo.FtpId = reader["ftpId"].ToInt();
SiteInfo.Id = reader["Id"].ToInt();
break;
#endregion
}
}
ds.Dispose();
}
db.Free();
IsChanged = CacheText.Length>0;
UpdateTitle();
highlightEditor1.Editor.EmptyUndoBuffer();
this.Icon = ShellUtilities.GetFileIcon(path, true, true);
OnUnSaveChanged?.Invoke(this, new EventArgs());
}
public void UpdateTitle()
{
if (FilePath.Length == 0 && FTPRemotePath.Length==0) {
return;
}
var text = System.IO.Path.GetFileName(FilePath.Length == 0 ?FTPRemotePath: FilePath);
if(SiteInfo.FtpId>0)
{
if (FilePath.Length == 0)
{
text = "[" + SiteInfo.Name + "][FTP]" + text;
}
else
{
text = "[" + SiteInfo.Name + "]" + text;
}
}
if (IsChanged) { text = "*" + text; }
Text = text;
}
/// <summary>
/// FTP远程路径
/// </summary>
public string RemotePath
{
get
{
if (FilePath.Length == 0 && SiteInfo.FtpId > 0)
{
return FTPRemotePath;
}
else
{
return SiteInfo.FtpDir.Trim('/') + "/" + XDPath.Replace("\\", "/");
}
}
}
/// <summary>
/// 相对路径
/// </summary>
public string XDPath
{
get
{
if (FilePath.Length == 0) { return ""; }
if (SiteInfo.LocalPath.Length == 0) { return ""; }
return FilePath.Replace(SiteInfo.LocalPath, "", true).Trim('\\');
}
}
public int UploadFTP()
{
if (SiteInfo.FtpId <= 0) { return -1; }
var result = -2;
var uploadinfo = GetUploadInfo();
if (uploadinfo == null) { return -1; }
FrmUploadProg frm = new FrmUploadProg();
frm.UploadList.Add(uploadinfo);
if (frm.ShowDialog() == DialogResult.OK)
{
result = 1;
}
frm.Dispose();
return result;
}
/// <summary>
/// 获取FTP上传信息
/// </summary>
/// <returns></returns>
public UploadInfo GetUploadInfo()
{
UploadInfo uploadinfo = null;
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
DataSet ds = db.ReadData("select * from Ftp where Id=" + SiteInfo.FtpId);
if (ds.HaveData())
{
DataRow row = ds.Tables[0].Rows[0];
var FtpInfo = new GameBackup3H3.DbOp.FTPInfo()
{
Id = row["id"].ToInt(),
Name = row["name"].ToString(),
IP = row["ip"].ToString(),
Port = row["port"].ToInt(),
RemoteDir = SiteInfo.FtpDir,
UserName = row["username"].ToString(),
Pwd = row["pwd"].ToString(),
Encrypt = row["encrypt"].ToInt(0, 2, 0),
AddTime = row["AddTime"].ToDateTime()
};
uploadinfo = new UploadInfo() {
FtpInfo = FtpInfo,
RemotePath = RemotePath,
LocalPath = FilePath,
Content = highlightEditor1.Text,
Encoding = Encoding
};
}
ds.Dispose();
}
db.Free();
return uploadinfo;
}
public int UploadFTPByAllSite()
{
if (SiteInfo.FtpId <= 0) { return -1; }
var result = -2;
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
DataSet ds = db.ReadData("select * from Site");
if (ds.HaveData())
{
FrmUploadProg frm = new FrmUploadProg();
var xd_path = XDPath;
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
DataRow reader = ds.Tables[0].Rows[i];
if(!System.IO.File.Exists(reader["localPath"].ToString() + "\\" + xd_path)) { continue; }
DataSet ds_ftp = db.ReadData("select * from Ftp where Id=" + reader["ftpId"].ToInt());
if (ds_ftp.HaveData())
{
DataRow row = ds_ftp.Tables[0].Rows[0];
var FtpInfo = new GameBackup3H3.DbOp.FTPInfo()
{
Id = row["id"].ToInt(),
Name = row["name"].ToString(),
IP = row["ip"].ToString(),
Port = row["port"].ToInt(),
RemoteDir = reader["ftpDir"].ToString(),
UserName = row["username"].ToString(),
Pwd = row["pwd"].ToString(),
Encrypt = row["encrypt"].ToInt(0, 2, 0),
AddTime = row["AddTime"].ToDateTime()
};
var remotepath = reader["ftpDir"].ToString().Trim('/') + "/" + xd_path.Replace("\\", "/").Trim('/');
frm.UploadList.Add(new UploadInfo() { FtpInfo = FtpInfo, RemotePath = remotepath, LocalPath = reader["localPath"].ToString()+"\\"+ xd_path });
}
ds_ftp.Dispose();
}
if (frm.ShowDialog() == DialogResult.OK)
{
result = 1;
}
frm.Dispose();
}
ds.Dispose();
}
db.Free();
return result;
}
/// <summary>
/// 保存
/// </summary>
public int Save()
{
if(FilePath.Length==0)
{
if (SiteInfo.FtpId > 0)
{
var result = -1;
var uploadinfo = GetUploadInfo();
if (uploadinfo == null) { return -1; }
FrmUploadProg frm = new FrmUploadProg();
frm.UploadList.Add(uploadinfo);
if (frm.ShowDialog() == DialogResult.OK)
{
result = 1;
Itrycn_Db.AddHistory("[FTP:"+ SiteInfo.FtpId + "]"+uploadinfo.RemotePath, highlightEditor1.Text);
IsChanged = false;
OnUnSaveChanged?.Invoke(this, new EventArgs());
}
frm.Dispose();
return result;
//Itrycn_Db.AddHistory(dialog.FileName, highlightEditor1.Text);
}
else
{
SaveFileDialog dialog = new SaveFileDialog
{
FileName = "新建文档.txt",
Filter = "常用格式|*.php;*.cs;*.txt;*.pas;*.js;*.html;*.htm;*.css;*.ini;*.json;*.xml;*.java;*.vbs;*.asp;*.aspx|所有文件|*.*"
};
if (dialog.ShowDialog() == DialogResult.OK)
{
FilePath = dialog.FileName;
RyFiles.WriteAllText(dialog.FileName, highlightEditor1.Text, Encoding);
Itrycn_Db.AddHistory(dialog.FileName, highlightEditor1.Text);
GetFileInfo(dialog.FileName);
IsChanged = false;
OnUnSaveChanged?.Invoke(this, new EventArgs());
return 1;
}
}
}
else
{
RyFiles.WriteAllText(FilePath, highlightEditor1.Text, Encoding);
Itrycn_Db.AddHistory(FilePath, highlightEditor1.Text);
GetFileInfo(FilePath);
IsChanged = false;
OnUnSaveChanged?.Invoke(this, new EventArgs());
return 1;
}
return -1;
}
/// <summary>
/// 是否内容改变
/// </summary>
public bool IsChanged { get; internal set; } = true;
/// <summary>
/// 保存
/// </summary>
/// <param name="path"></param>
public void Save(string path)
{
RyFiles.WriteAllText(path, highlightEditor1.Text, Encoding);
Itrycn_Db.AddHistory(path, highlightEditor1.Text);
IsChanged = false;
OnUnSaveChanged?.Invoke(this, new EventArgs());
}
/// <summary>
/// 删除重复行
/// </summary>
public void DeleteRepeatLine()
{
var lines = highlightEditor1.Text.Replace("\r", "").Split('\n');
var txt = "";
var dict=new Dictionary<string, int>();
for (int i = 0; i < lines.Length; i++)
{
var line = lines[i];
if (line.Length == 0) { continue; }
if (dict.ContainsKey(line)) { continue; }
if (txt.Length != 0) { txt += "\r\n"; }
txt+= line;
dict[line] = i;
}
highlightEditor1.Text = txt;
}
/// <summary>
/// 删除空白行
/// </summary>
public void DeleteWhiteLine()
{
var lines = highlightEditor1.Text.Replace("\r", "").Split('\n');
var txt = "";
for (int i = 0; i < lines.Length; i++)
{
var line = lines[i];
if (line.Trim().Length == 0) { continue; }
if (txt.Length != 0) { txt += "\r\n"; }
txt += line;
}
highlightEditor1.Text = txt;
}
private void 关闭本标签ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
private void 除此之外全部关闭ToolStripMenuItem_Click(object sender, EventArgs e)
{
switch (MessageBox.Show("是否确定要关闭?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question))
{
case DialogResult.Cancel:
return;
}
DockContentCollection contents = this.DockPanel.Contents;
int num = 0;
while (num < contents.Count)
{
var content = contents[num];
if (content.DockHandler.DockState == DockState.Document && this.DockPanel.ActiveContent != content)
{
var canClose = true;
if (content is FrmFileEditor frm)
{
if(frm.IsChanged)
{
switch (MessageBox.Show("是否要保存文档?\r\n\r\n是:保存该文档并关闭。\r\n否:不保存该文档并关闭。\r\n取消:取消关闭该文档。", "询问", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.Cancel:
canClose = false;
break;
case DialogResult.No:
break;
case DialogResult.Yes:
if(frm.Save()!=1)
{
canClose = false;
}
break;
}
}
}
if(canClose)
content.DockHandler.Close();
}
else
{
num++;
}
}
}
private void 收藏该文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (FilePath.Length == 0) { return; }
if (收藏该文件ToolStripMenuItem.Text.IndexOfEx("取消") >= 0)
{
switch (MessageBox.Show("是否确定要取消收藏?", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.Yes:
return;
}
RyQuickSQL mySQL = new RyQuickSQL("FavFiles");
mySQL.AddField("FilePath", FilePath);
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
db.ExecuteNonQuery("delete from FavFiles where FilePath=@FilePath", mySQL);
}
db.Free();
}
else
{
FrmFavFile frm = new FrmFavFile
{
FilePath = FilePath
};
frm.TxtFavName.Text = System.IO.Path.GetFileName(FilePath);
if (frm.ShowDialog() == DialogResult.OK)
{
}
frm.Dispose();
}
}
private void ContextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
收藏该文件ToolStripMenuItem.Enabled = FilePath.Length > 0;
文件信息ToolStripMenuItem.Enabled = FilePath.Length > 0;
查看历史记录ToolStripMenuItem.Enabled =FTPRemotePath.Length>0 || FilePath.Length > 0;
打开其它站点文件ToolStripMenuItem.Enabled = SiteInfo.FtpId > 0 && FilePath.Length>0;
复制所在文件夹路径ToolStripMenuItem.Enabled = FilePath.Length > 0;
复制文件名ToolStripMenuItem.Enabled = FilePath.Length > 0;
复制路径ToolStripMenuItem.Enabled = FilePath.Length > 0;
在资源管理器中定位该文件ToolStripMenuItem.Enabled = FilePath.Length > 0;
在工作区定位当前文件ToolStripMenuItem.Enabled = FilePath.Length > 0;
编辑FTP上的对应文件ToolStripMenuItem.Enabled=FilePath.Length > 0 && SiteInfo.FtpId>0;
比对FTP上的对应文件ToolStripMenuItem.Enabled = FilePath.Length > 0 && SiteInfo.FtpId > 0;
RyQuickSQL mySQL = new RyQuickSQL("FavFiles");
mySQL.AddField("FilePath", FilePath);
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
var ds = db.ReadData("select * from FavFiles where FilePath=@FilePath", mySQL);
if(ds.HaveData())
{
收藏该文件ToolStripMenuItem.Text = "取消该文件收藏";
}
else
{
收藏该文件ToolStripMenuItem.Text = "收藏该文件";
}
ds.Dispose();
}
db.Free();
}
private void 在资源管理器中定位该文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
if(FilePath.Length > 0)
{
RyFiles.OpenFolderGotoFile(FilePath);
}
}
private void 复制路径ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (FilePath.Length == 0) { return; }
RyFiles.CopyToClip(FilePath);
}
private void 复制文件名ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (FilePath.Length == 0) { return; }
RyFiles.CopyToClip(System.IO.Path.GetFileName(FilePath));
}
private void 复制所在文件夹路径ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (FilePath.Length == 0) { return; }
RyFiles.CopyToClip(System.IO.Path.GetDirectoryName(FilePath));
}
private void 文件信息ToolStripMenuItem_Click(object sender, EventArgs e)
{
FrmFileInfo frm = new FrmFileInfo();
frm.LoadInfo(FilePath,SiteInfo);
frm.ShowDialog();
frm.Dispose();
}
private void 打开其它站点文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (SiteInfo.Id == 0) { return; }
OnOpenOtherSiteFile?.Invoke(this, EventArgs.Empty);
}
private void 在工作区定位当前文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
DockContentCollection contents = this.DockPanel.Contents;
int num = 0;
while (num < contents.Count)
{
var content = contents[num];
if (content.DockHandler.DockState == DockState.DockLeft)
{
if(content is FrmFileBrowser frm)
{
if (frm.Visible)
{
frm.GotoPath(FilePath);
break;
}
else
{
num++;
}
}
}
else
{
num++;
}
}
}
private void 查看历史记录ToolStripMenuItem_Click(object sender, EventArgs e)
{
FrmHistoryView frm = new FrmHistoryView
{
FilePath = FilePath.Length==0?"[FTP:"+SiteInfo.FtpId+"]"+ FTPRemotePath : FilePath,
Content = highlightEditor1.Text,
CurHighliteLang = highlightEditor1.CurHighliteLang,
SelectModeOn = true,
TopMost = this.TopMost
};
if (frm.ShowDialog()==DialogResult.OK)
{
if (IsChanged)
{
switch (MessageBox.Show("当前记录未保存,是否要替换成历史记录?", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.No:
frm.Dispose();
return;
}
Itrycn_Db.AddHistory(FilePath.Length == 0 ? "[FTP:"+SiteInfo.FtpId+"]" + FTPRemotePath : FilePath, highlightEditor1.Text);
}
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
DataSet ds = db.ReadData("select * from History where id="+frm.SelectedItem.Id);
if(ds.HaveData())
{
highlightEditor1.Text = ds.GetFirstRowData()["content"].ToString();
}
ds?.Dispose();
}
db.Free();
}
frm.Dispose();
}
private void 关闭左边全部标签ToolStripMenuItem_Click(object sender, EventArgs e)
{
switch (MessageBox.Show("是否确定要关闭?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question))
{
case DialogResult.Cancel:
return;
}
DockContentCollection contents = this.DockPanel.Contents;
int num = 0;
while (num < contents.Count)
{
var content = contents[num];
if (content == this)
{
break;
}
if (content.DockHandler.DockState == DockState.Document)
{
var canClose = true;
if (content is FrmFileEditor frm)
{
if (frm.IsChanged)
{
switch (MessageBox.Show("是否要保存文档?\r\n" + frm.FilePath + "\r\n\r\n是:保存该文档并关闭。\r\n否:不保存该文档并关闭。\r\n取消:取消关闭该文档。", "询问", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.Cancel:
canClose = false;
break;
case DialogResult.No:
break;
case DialogResult.Yes:
if (frm.Save() != 1)
{
canClose = false;
}
break;
}
}
}
if (canClose)
content.DockHandler.Close();
}
else
{
num++;
}
}
}
private void 关闭右边全部标签ToolStripMenuItem_Click(object sender, EventArgs e)
{
switch (MessageBox.Show("是否确定要关闭?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question))
{
case DialogResult.Cancel:
return;
}
DockContentCollection contents = this.DockPanel.Contents;
int num = 0;
var start = false;
while (num < contents.Count)
{
var content = contents[num];
if (content == this)
{
start = true;
num++;
continue;
}
if (content.DockHandler.DockState == DockState.Document && start)
{
var canClose = true;
if (content is FrmFileEditor frm)
{
if (frm.IsChanged)
{
switch (MessageBox.Show("是否要保存文档?\r\n" + frm.FilePath + "\r\n\r\n是:保存该文档并关闭。\r\n否:不保存该文档并关闭。\r\n取消:取消关闭该文档。", "询问", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.Cancel:
canClose = false;
break;
case DialogResult.No:
break;
case DialogResult.Yes:
if (frm.Save() != 1)
{
canClose = false;
}
break;
}
}
}
if (canClose)
content.DockHandler.Close();
}
else
{
num++;
}
}
}
private void 编辑FTP上的对应文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (FilePath.Length > 0)
_ = FrmMainEditor.MainEditor.OpenFTPFileByNewForm(SiteInfo, RemotePath);
}
private void 比对FTP上的对应文件ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (FilePath.Length > 0)
FrmMainEditor.MainEditor.CompareFTPFile(SiteInfo, RemotePath,this);
}
}
}
@@ -1,191 +0,0 @@
namespace 开发辅助工具.Tools.SmartEditor
{
partial class FrmFileInfo
{
/// <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(FrmFileInfo));
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.TxtFilePath = new System.Windows.Forms.TextBox();
this.TxtFileName = new System.Windows.Forms.TextBox();
this.TxtFileSize = new System.Windows.Forms.TextBox();
this.label3 = new System.Windows.Forms.Label();
this.TxtWriteTime = new System.Windows.Forms.TextBox();
this.label4 = new System.Windows.Forms.Label();
this.TxtEditTime = new System.Windows.Forms.TextBox();
this.label5 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// label1
//
this.label1.AutoSize = true;
this.label1.ForeColor = System.Drawing.Color.Gray;
this.label1.Location = new System.Drawing.Point(12, 9);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(41, 12);
this.label1.TabIndex = 0;
this.label1.Text = "文件名";
//
// label2
//
this.label2.AutoSize = true;
this.label2.ForeColor = System.Drawing.Color.Gray;
this.label2.Location = new System.Drawing.Point(12, 35);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(53, 12);
this.label2.TabIndex = 1;
this.label2.Text = "文件路径";
//
// TxtFilePath
//
this.TxtFilePath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TxtFilePath.BackColor = System.Drawing.Color.White;
this.TxtFilePath.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtFilePath.Font = new System.Drawing.Font("Consolas", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxtFilePath.Location = new System.Drawing.Point(71, 33);
this.TxtFilePath.Name = "TxtFilePath";
this.TxtFilePath.ReadOnly = true;
this.TxtFilePath.Size = new System.Drawing.Size(398, 17);
this.TxtFilePath.TabIndex = 2;
//
// TxtFileName
//
this.TxtFileName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.TxtFileName.BackColor = System.Drawing.Color.White;
this.TxtFileName.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtFileName.Font = new System.Drawing.Font("Consolas", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxtFileName.Location = new System.Drawing.Point(71, 10);
this.TxtFileName.Name = "TxtFileName";
this.TxtFileName.ReadOnly = true;
this.TxtFileName.Size = new System.Drawing.Size(398, 17);
this.TxtFileName.TabIndex = 3;
//
// TxtFileSize
//
this.TxtFileSize.BackColor = System.Drawing.Color.White;
this.TxtFileSize.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtFileSize.Font = new System.Drawing.Font("Consolas", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxtFileSize.Location = new System.Drawing.Point(71, 56);
this.TxtFileSize.Name = "TxtFileSize";
this.TxtFileSize.ReadOnly = true;
this.TxtFileSize.Size = new System.Drawing.Size(87, 17);
this.TxtFileSize.TabIndex = 5;
//
// label3
//
this.label3.AutoSize = true;
this.label3.ForeColor = System.Drawing.Color.Gray;
this.label3.Location = new System.Drawing.Point(12, 58);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(53, 12);
this.label3.TabIndex = 4;
this.label3.Text = "文件大小";
//
// TxtWriteTime
//
this.TxtWriteTime.BackColor = System.Drawing.Color.White;
this.TxtWriteTime.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtWriteTime.Font = new System.Drawing.Font("Consolas", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxtWriteTime.Location = new System.Drawing.Point(71, 80);
this.TxtWriteTime.Name = "TxtWriteTime";
this.TxtWriteTime.ReadOnly = true;
this.TxtWriteTime.Size = new System.Drawing.Size(157, 17);
this.TxtWriteTime.TabIndex = 7;
//
// label4
//
this.label4.AutoSize = true;
this.label4.ForeColor = System.Drawing.Color.Gray;
this.label4.Location = new System.Drawing.Point(12, 82);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(53, 12);
this.label4.TabIndex = 6;
this.label4.Text = "创建时间";
//
// TxtEditTime
//
this.TxtEditTime.BackColor = System.Drawing.Color.White;
this.TxtEditTime.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtEditTime.Font = new System.Drawing.Font("Consolas", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxtEditTime.Location = new System.Drawing.Point(294, 80);
this.TxtEditTime.Name = "TxtEditTime";
this.TxtEditTime.ReadOnly = true;
this.TxtEditTime.Size = new System.Drawing.Size(175, 17);
this.TxtEditTime.TabIndex = 9;
//
// label5
//
this.label5.AutoSize = true;
this.label5.ForeColor = System.Drawing.Color.Gray;
this.label5.Location = new System.Drawing.Point(235, 83);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(53, 12);
this.label5.TabIndex = 8;
this.label5.Text = "修改时间";
//
// FrmFileInfo
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(481, 405);
this.Controls.Add(this.TxtEditTime);
this.Controls.Add(this.label5);
this.Controls.Add(this.TxtWriteTime);
this.Controls.Add(this.label4);
this.Controls.Add(this.TxtFileSize);
this.Controls.Add(this.label3);
this.Controls.Add(this.TxtFileName);
this.Controls.Add(this.TxtFilePath);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmFileInfo";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "文件信息";
this.TopMost = true;
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox TxtFilePath;
private System.Windows.Forms.TextBox TxtFileName;
private System.Windows.Forms.TextBox TxtFileSize;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.TextBox TxtWriteTime;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.TextBox TxtEditTime;
private System.Windows.Forms.Label label5;
}
}
@@ -1,31 +0,0 @@
using ryCommon;
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;
using 开发辅助工具.Manager;
namespace 开发辅助工具.Tools.SmartEditor
{
public partial class FrmFileInfo : Form
{
public FrmFileInfo()
{
InitializeComponent();
}
public void LoadInfo(string FilePath,SiteInfo ftpinfo)
{
TxtFileName.Text=System.IO.Path.GetFileName(FilePath);
TxtFilePath.Text = FilePath;
TxtFileSize.Text = RyFiles.GetFileSizeStr(FilePath);
var dt = RyFiles.GetFileDate(FilePath);
TxtWriteTime.Text = dt.CreateTime.ToString("yyyy-MM-dd HH:mm:ss");
TxtEditTime.Text = dt.LastWriteTime.ToString("yyyy-MM-dd HH:mm:ss");
}
}
}
@@ -1,130 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIAAQAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAADHSURBVFhH7ZPRCcJAEESvHquwCeuxNJvwP1/WobeQhWGZxDE3qB/34IEEZ3mI
aZMNbt3nAZfupTsMO/7OO3wejsDDqvGr2SLwsGoEnLqWCDysGgGBJQIPq2ZAMByBh1UxIBiKwMOqNSDA
iEc8UKnHFSNgy4yQqcddyrCxQxk2dijDxg5l2Djd49xlm1SGjdM9vhKAr1eCz9gmlWHjag1g36nKsHF1
BsyAvwi4rv4k4IgybOxQho0dyrCxQxn1T/WJ+NZMVlp7AVFiFROR1wQLAAAAAElFTkSuQmCC
</value>
</data>
</root>
@@ -1,276 +0,0 @@
namespace GameBackup3H3.DbOp
{
partial class FrmHistoryView
{
/// <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(FrmHistoryView));
this.rySearch1 = new ryControls.rySearch();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.修改数据ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.删除数据ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ctlMyPage1 = new MyPage.ctlMyPage();
this.btnDel = new ryControls.ButtonEx();
this.btnEdit = new ryControls.ButtonEx();
this.LvCbResult = new BrightIdeasSoftware.FastObjectListView();
this.OlvAddTime = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvSize = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.BtnPrev = new ryControls.ButtonEx();
this.BtnNext = new ryControls.ButtonEx();
this.scintillaDiffControl1 = new ScintillaDiff.ScintillaDiffControl();
this.contextMenuStrip1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.LvCbResult)).BeginInit();
this.SuspendLayout();
//
// rySearch1
//
this.rySearch1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.ButtonRoundBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.EmptyText = "请输入搜索内容";
this.rySearch1.Location = new System.Drawing.Point(12, 5);
this.rySearch1.Name = "rySearch1";
this.rySearch1.Size = new System.Drawing.Size(186, 24);
this.rySearch1.TabIndex = 28;
this.rySearch1.OnSearch += new System.EventHandler(this.RySearch1_OnSearch);
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.修改数据ToolStripMenuItem,
this.删除数据ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(125, 48);
//
// 修改数据ToolStripMenuItem
//
this.修改数据ToolStripMenuItem.Name = "修改数据ToolStripMenuItem";
this.修改数据ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
this.修改数据ToolStripMenuItem.Text = "重命名";
this.修改数据ToolStripMenuItem.Click += new System.EventHandler(this.修改数据ToolStripMenuItem_Click);
//
// 删除数据ToolStripMenuItem
//
this.删除数据ToolStripMenuItem.Name = "删除数据ToolStripMenuItem";
this.删除数据ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
this.删除数据ToolStripMenuItem.Text = "删除数据";
this.删除数据ToolStripMenuItem.Click += new System.EventHandler(this.删除数据ToolStripMenuItem_Click);
//
// ctlMyPage1
//
this.ctlMyPage1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.ctlMyPage1.Location = new System.Drawing.Point(12, 602);
this.ctlMyPage1.Name = "ctlMyPage1";
this.ctlMyPage1.PageSize = 50;
this.ctlMyPage1.RecordCount = 0;
this.ctlMyPage1.Size = new System.Drawing.Size(506, 26);
this.ctlMyPage1.SQLText = "";
this.ctlMyPage1.SQLText2 = "";
this.ctlMyPage1.T_FirstCaption = "首页";
this.ctlMyPage1.T_LastCaption = "末页";
this.ctlMyPage1.T_NextCaption = "下一页";
this.ctlMyPage1.T_Parameters = null;
this.ctlMyPage1.T_PreCaption = "上一页";
this.ctlMyPage1.T_SkipCaption = "跳到";
this.ctlMyPage1.T_TipCaption = "{pageindex}/{pagecount} 页,共 {recordcount} 条记录,每页 {pagesize} 条";
this.ctlMyPage1.TabIndex = 30;
this.ctlMyPage1.OnPageChange += new System.EventHandler(this.CtlMyPage1_OnPageChange);
//
// btnDel
//
this.btnDel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnDel.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.btnDel.Location = new System.Drawing.Point(812, 5);
this.btnDel.Name = "btnDel";
this.btnDel.Size = new System.Drawing.Size(62, 24);
this.btnDel.TabIndex = 40;
this.btnDel.Text = "删除";
this.btnDel.UseVisualStyleBackColor = true;
this.btnDel.Click += new System.EventHandler(this.BtnDel_Click);
//
// btnEdit
//
this.btnEdit.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnEdit.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.btnEdit.Location = new System.Drawing.Point(744, 5);
this.btnEdit.Name = "btnEdit";
this.btnEdit.Size = new System.Drawing.Size(62, 24);
this.btnEdit.TabIndex = 39;
this.btnEdit.Text = "重命名";
this.btnEdit.UseVisualStyleBackColor = true;
this.btnEdit.Click += new System.EventHandler(this.BtnEdit_Click);
//
// LvCbResult
//
this.LvCbResult.AllColumns.Add(this.OlvAddTime);
this.LvCbResult.AllColumns.Add(this.OlvName);
this.LvCbResult.AllColumns.Add(this.OlvSize);
this.LvCbResult.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.LvCbResult.CellEditUseWholeCell = false;
this.LvCbResult.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.OlvAddTime,
this.OlvName,
this.OlvSize});
this.LvCbResult.ContextMenuStrip = this.contextMenuStrip1;
this.LvCbResult.Cursor = System.Windows.Forms.Cursors.Default;
this.LvCbResult.EmptyListMsg = "当前文件没有存在历史记录";
this.LvCbResult.FullRowSelect = true;
this.LvCbResult.HideSelection = false;
this.LvCbResult.Location = new System.Drawing.Point(12, 35);
this.LvCbResult.Name = "LvCbResult";
this.LvCbResult.RowHeight = 25;
this.LvCbResult.ShowGroups = false;
this.LvCbResult.ShowItemToolTips = true;
this.LvCbResult.Size = new System.Drawing.Size(186, 565);
this.LvCbResult.TabIndex = 85;
this.LvCbResult.UseCompatibleStateImageBehavior = false;
this.LvCbResult.UseFiltering = true;
this.LvCbResult.View = System.Windows.Forms.View.Details;
this.LvCbResult.VirtualMode = true;
this.LvCbResult.SelectionChanged += new System.EventHandler(this.LvCbResult_SelectionChanged);
this.LvCbResult.DoubleClick += new System.EventHandler(this.LvCbResult_DoubleClick);
//
// OlvAddTime
//
this.OlvAddTime.Text = "时间";
this.OlvAddTime.Width = 180;
//
// OlvName
//
this.OlvName.Text = "名称";
this.OlvName.Width = 150;
//
// OlvSize
//
this.OlvSize.Text = "字数";
this.OlvSize.Width = 70;
//
// BtnPrev
//
this.BtnPrev.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnPrev.Enabled = false;
this.BtnPrev.Location = new System.Drawing.Point(204, 5);
this.BtnPrev.Name = "BtnPrev";
this.BtnPrev.Size = new System.Drawing.Size(62, 24);
this.BtnPrev.TabIndex = 87;
this.BtnPrev.Text = "上一处";
this.BtnPrev.UseVisualStyleBackColor = true;
this.BtnPrev.Click += new System.EventHandler(this.BtnPrev_Click);
//
// BtnNext
//
this.BtnNext.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnNext.Enabled = false;
this.BtnNext.Location = new System.Drawing.Point(272, 5);
this.BtnNext.Name = "BtnNext";
this.BtnNext.Size = new System.Drawing.Size(62, 24);
this.BtnNext.TabIndex = 88;
this.BtnNext.Text = "下一处";
this.BtnNext.UseVisualStyleBackColor = true;
this.BtnNext.Click += new System.EventHandler(this.BtnNext_Click);
//
// scintillaDiffControl1
//
this.scintillaDiffControl1.AddedCharacterSymbol = '+';
this.scintillaDiffControl1.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.scintillaDiffControl1.CharacterComparison = false;
this.scintillaDiffControl1.CharacterComparisonMarkAddRemove = false;
this.scintillaDiffControl1.DiffColorAdded = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(242)))), ((int)(((byte)(196)))));
this.scintillaDiffControl1.DiffColorChangeBackground = System.Drawing.Color.FromArgb(((int)(((byte)(252)))), ((int)(((byte)(255)))), ((int)(((byte)(140)))));
this.scintillaDiffControl1.DiffColorCharAdded = System.Drawing.Color.FromArgb(((int)(((byte)(154)))), ((int)(((byte)(234)))), ((int)(((byte)(111)))));
this.scintillaDiffControl1.DiffColorCharDeleted = System.Drawing.Color.FromArgb(((int)(((byte)(225)))), ((int)(((byte)(125)))), ((int)(((byte)(125)))));
this.scintillaDiffControl1.DiffColorDeleted = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(178)))), ((int)(((byte)(178)))));
this.scintillaDiffControl1.DiffStyle = ScintillaDiff.ScintillaDiffStyles.DiffStyle.DiffSideBySide;
this.scintillaDiffControl1.ImageRowAdded = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowAdded")));
this.scintillaDiffControl1.ImageRowAddedScintillaIndex = 28;
this.scintillaDiffControl1.ImageRowDeleted = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowDeleted")));
this.scintillaDiffControl1.ImageRowDeletedScintillaIndex = 29;
this.scintillaDiffControl1.ImageRowDiff = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowDiff")));
this.scintillaDiffControl1.ImageRowDiffScintillaIndex = 31;
this.scintillaDiffControl1.ImageRowOk = ((System.Drawing.Bitmap)(resources.GetObject("scintillaDiffControl1.ImageRowOk")));
this.scintillaDiffControl1.ImageRowOkScintillaIndex = 30;
this.scintillaDiffControl1.IsEntireLineHighlighted = false;
this.scintillaDiffControl1.Location = new System.Drawing.Point(204, 35);
this.scintillaDiffControl1.MarkColorIndexModifiedBackground = 31;
this.scintillaDiffControl1.MarkColorIndexRemovedOrAdded = 30;
this.scintillaDiffControl1.Name = "scintillaDiffControl1";
this.scintillaDiffControl1.RemovedCharacterSymbol = '-';
this.scintillaDiffControl1.Size = new System.Drawing.Size(670, 565);
this.scintillaDiffControl1.TabIndex = 86;
this.scintillaDiffControl1.TextLeft = "";
this.scintillaDiffControl1.TextRight = "";
this.scintillaDiffControl1.TitleLeft = "当前编辑器文本";
this.scintillaDiffControl1.TitleRight = "历史记录文本";
this.scintillaDiffControl1.TitleVisible = true;
this.scintillaDiffControl1.UseRowOkSign = false;
//
// FrmHistoryView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(886, 632);
this.Controls.Add(this.BtnNext);
this.Controls.Add(this.BtnPrev);
this.Controls.Add(this.scintillaDiffControl1);
this.Controls.Add(this.LvCbResult);
this.Controls.Add(this.btnDel);
this.Controls.Add(this.btnEdit);
this.Controls.Add(this.ctlMyPage1);
this.Controls.Add(this.rySearch1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmHistoryView";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "浏览";
this.Load += new System.EventHandler(this.FrmView_Load);
this.contextMenuStrip1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.LvCbResult)).EndInit();
this.ResumeLayout(false);
}
#endregion
private ryControls.rySearch rySearch1;
private MyPage.ctlMyPage ctlMyPage1;
private ryControls.ButtonEx btnDel;
private ryControls.ButtonEx btnEdit;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem 修改数据ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 删除数据ToolStripMenuItem;
private BrightIdeasSoftware.FastObjectListView LvCbResult;
private BrightIdeasSoftware.OLVColumn OlvName;
private BrightIdeasSoftware.OLVColumn OlvAddTime;
private BrightIdeasSoftware.OLVColumn OlvSize;
private ScintillaDiff.ScintillaDiffControl scintillaDiffControl1;
private ryControls.ButtonEx BtnPrev;
private ryControls.ButtonEx BtnNext;
}
}
@@ -1,278 +0,0 @@
using ryCommon;
using ryCommonDb;
using 开发辅助工具.Tools.SmartEditor;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using 开发辅助工具.Manager;
using 开发辅助工具.Controls;
using static ScintillaNET.Style;
using System.IO;
using ryControls;
using static VPKSoft.ScintillaLexers.LexerEnumerations;
using DiffPlex.Model;
using VPKSoft.ScintillaLexers;
using ScintillaDiff;
namespace GameBackup3H3.DbOp
{
public partial class FrmHistoryView : Form
{
string orderSQL = "order by addTime desc";
string tableName = "History";
string titleName = "历史记录";
public FrmHistoryView()
{
InitializeComponent();
OlvName.AspectGetter = delegate (object x) {
var row = (HistoryInfo)x;
if(row.Name.Length==0)
{
return System.IO.Path.GetFileName(FilePath);
}
return row.Name;
};
OlvSize.AspectGetter = delegate (object x) { return ((HistoryInfo)x).Size+"字"; };
OlvAddTime.AspectGetter = delegate (object x) { return ((HistoryInfo)x).AddTimeStr; };
}
#region 需要修改的内容
private void RySearch1_OnSearch(object sender, EventArgs e)
{
//需要修改此处
LoadDb("(name like @SearchText or content like @SearchText)");
}
private void CtlMyPage1_OnPageChange(object sender, EventArgs e)
{
#region 重新载入数据
LvCbResult.ClearObjects();
List<HistoryInfo> list = new List<HistoryInfo>();
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
DataSet ds = db.ReadData(ctlMyPage1.GetSQLText, ctlMyPage1.T_Parameters);
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
DataRow row = ds.Tables[0].Rows[i];
list.Add(new HistoryInfo()
{
Id=row["id"].ToInt(),
Name = row["name"].ToString(),
Size = row["size"].ToInt64(),
AddTime = row["AddTime"].ToDateTime()
}) ;
}
}
db.Free();
LvCbResult.AddObjects(list);
#endregion
}
#endregion
public string FilePath { get; set; } = "";
public string Content { get; set; } = "";
/// <summary>
/// 当前高亮语言
/// </summary>
public LexerType CurHighliteLang
{
get; set;
} = LexerType.Text;
private int FileId { get; set; } = 0;
public void LoadDb(string whereSQL)
{
string _whereSQL = whereSQL;
if (FileId > 0)
{
_whereSQL += " and fileid=" + FileId;
}
else { return; }
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
#region 重新载入数据
db.AddParameter("SearchText", "%" + rySearch1.Text + "%");
ctlMyPage1.RecordCount = db.GetCount(tableName, _whereSQL);
ctlMyPage1.T_Parameters = db.GetParameter();
ctlMyPage1.SQLText= db.GetPageSQL(tableName, _whereSQL, orderSQL);
ctlMyPage1.SQLText2 = db.GetPageSQL2(tableName, _whereSQL, orderSQL);
ctlMyPage1.GotoPageIndex(1);
#endregion
}
db.Free();
}
private void BtnEdit_Click(object sender, EventArgs e)
{
if (LvCbResult.SelectedObject == null) { return; }
var item = (HistoryInfo)LvCbResult.SelectedObject;
var selectId = item.Id;
FrmTitle frm = new FrmTitle()
{
Text = "修改"+ titleName,
Icon = Icon,
};
frm.TxtTitle.Text = item.Name;
if(frm.ShowDialog()==DialogResult.OK)
{
RyQuickSQL mySQL = new RyQuickSQL("History");
mySQL.AddField("name", frm.TxtTitle.Text);
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where id=" + selectId, mySQL);
item.Name=frm.TxtTitle.Text;
LvCbResult.RefreshObject(item);
}
db.Free();
}
frm.Dispose();
}
private void BtnDel_Click(object sender, EventArgs e)
{
if (LvCbResult.SelectedObject == null) { MessageBox.Show("请先选择要删除的项。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; }
var item = (HistoryInfo)LvCbResult.SelectedObject;
var selectId = item.Id;
switch (MessageBox.Show("确定要删除该项吗?一旦删除将不可恢复。", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.No:
return;
}
//DataProvider mydb = new DataProvider();
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
db.DelById(tableName, selectId.ToString());
LvCbResult.RemoveObject(item);
}
}
private void FrmView_Load(object sender, EventArgs e)
{
ScintillaLexers.CreateLexer(scintillaDiffControl1.LeftScintilla, CurHighliteLang,false);
ScintillaLexers.CreateLexer(scintillaDiffControl1.RightScintilla, CurHighliteLang, false);
//scintillaDiffControl1.ReInit();
Text = "查看历史记录";
修改数据ToolStripMenuItem.Text = "修改" + titleName;
删除数据ToolStripMenuItem.Text = "删除" + titleName;
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
RyQuickSQL mySQL = new RyQuickSQL("Files");
mySQL.AddField("FilePath", FilePath);
var ds = db.ReadData("select * from Files where FilePath=@FilePath", mySQL);
if (ds.HaveData())
{
FileId = ds.GetFirstRowData()["id"].ToInt();
Text = "查看历史记录=>"+FilePath;
}
ds.Dispose();
}
rySearch1.PerformClick();
}
private void 修改数据ToolStripMenuItem_Click(object sender, EventArgs e)
{
btnEdit.PerformClick();
}
private void 删除数据ToolStripMenuItem_Click(object sender, EventArgs e)
{
btnDel.PerformClick();
}
public bool SelectModeOn { get; set; } = false;
public HistoryInfo SelectedItem { get; set; }
private void LvCbResult_DoubleClick(object sender, EventArgs e)
{
if(SelectModeOn)
{
if (LvCbResult.SelectedObject == null) { return; }
SelectedItem = (HistoryInfo)LvCbResult.SelectedObject;
DialogResult=DialogResult.OK;
}
}
private void LvCbResult_SelectionChanged(object sender, EventArgs e)
{
var row = (HistoryInfo)LvCbResult.SelectedObject;
if(row==null)
{
scintillaDiffControl1.TextLeft = "";
scintillaDiffControl1.TextRight ="";
BtnPrev.Enabled = false;
BtnNext.Enabled = false;
return;
}
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.History_SQLConn) == 1)
{
DataSet ds = db.ReadData("select * from History where id=" + row.Id);
if (ds.HaveData())
{
scintillaDiffControl1.TextLeft = Content;
scintillaDiffControl1.TextRight = ds.GetRow(0)["content"].ToString();
}
else
{
scintillaDiffControl1.TextLeft = "";
scintillaDiffControl1.TextRight = "";
}
ds?.Dispose();
}
else
{
scintillaDiffControl1.TextLeft = "";
scintillaDiffControl1.TextRight = "";
}
db.Free();
BtnPrev.Enabled = scintillaDiffControl1.CanGoPrevious;
BtnNext.Enabled = scintillaDiffControl1.CanGoNext;
}
private void BtnPrev_Click(object sender, EventArgs e)
{
scintillaDiffControl1.Previous();
BtnPrev.Enabled = scintillaDiffControl1.CanGoPrevious;
BtnNext.Enabled = scintillaDiffControl1.CanGoNext;
}
private void BtnNext_Click(object sender, EventArgs e)
{
scintillaDiffControl1.Next();
BtnPrev.Enabled = scintillaDiffControl1.CanGoPrevious;
BtnNext.Enabled = scintillaDiffControl1.CanGoNext;
}
}
public class HistoryInfo
{
/// <summary>
/// id
/// </summary>
public int Id{ get; set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 字数
/// </summary>
public long Size { get; set; }
/// <summary>
/// 添加时间
/// </summary>
public DateTime AddTime { get; set; }
/// <summary>
/// 添加时间字符串
/// </summary>
public string AddTimeStr
{
get {
if (AddTime.Date == DateTime.Now.Date) { return "今天 " + AddTime.ToString("HH:mm:ss"); }
if (AddTime.Date == DateTime.Now.Date.AddDays(-1)) { return "昨天 " + AddTime.ToString("HH:mm:ss"); }
return AddTime.ToString("yyyy-MM-dd dddd HH:mm:ss");
}
}
}
}
@@ -1,200 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>35, 21</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="scintillaDiffControl1.ImageRowAdded" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAB
ugAAAboB6KsBBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAATdEVYdFNvdXJj
ZQBPeHlnZW4gSWNvbnPsGK7oAAAB8klEQVQ4T6WS3UtTYQCHj+NYkiaWhQyzSYs5RpZ9iERBU0mzoEHW
tMDSmTS2giAjoiUjY0mFH5M+HJGOBtqH4FqmZDNpBSV54U0xgvoHFl0KDnw6L7EV8V4UXTxweN7n/OA9
HAX4L6RS4Hl/NmQNmxeqn5V8C8Z7b8kagVQKGib3LQ3Fuwl89OGOHUrKGoFUCjYG87n/xUfw63WqIiZN
yTupFBgG8+j75MEf72D3mFFT8i71kKGhpqSg8F4unfPnuDrfTsWTYk39OtMQrXjn54DjuaOrcqQyuaxH
Jcefxerb2RQMrOTiBzeX5k5T9rCQitH1WJ8aqZs045lrSQY+e7vSA6pPTThftOKMNnNq5jjO1yc487aF
1lg9bW8Oc/7dSS7MOumYbcf9qo2m8XoaZ7Ym0gPKFSVRM1zF/tEabON1NL08gmPaTsNULceitbhiR2mO
2tj5aBOWoJFdw2XYpiy/DXgVl9KpLCrXFJQbCpk9OrL9mVSHN3NwYgfFg6swh9ayZUSvXaUIa2TD4oEJ
kys9IGN5r8reSCn2aDnrtA/653kKqRSo3TqsY2Yap8spCORoSt5JpSDjpoIlpGdP2ET+nRWakndSCV6d
4W7eUm5/FvqBNRj69f/+K9sfFw1pAwvbH2z7XtpXclnWCKTy70H5AYUgqeK+blp3AAAAAElFTkSuQmCC
</value>
</data>
<data name="scintillaDiffControl1.ImageRowDeleted" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAu
IgAALiIBquLdkgAAAAd0SU1FB+MEDgkGK7xsdzYAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJ
TVBXgQ4XAAAAN0lEQVQ4T2MYBVQAv/hV/1OAxSg1oIpSAxopNSAfZEAqEMfiwCA5XBgsDwtIbmwYLDkK
aA0YGADE96kTDgVxuQAAAABJRU5ErkJggg==
</value>
</data>
<data name="scintillaDiffControl1.ImageRowDiff" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAbdEVYdFNvdXJjZQBGQU1GQU1GQU0gU2lsayBJY29u
c4J6ZPsAAAGFSURBVDhPY/j//z9FGKsgKRirICkYqyAI398fF3pvb8yJu7ujxbDJwzBWQaAmvru7Iq+9
vb36/+1tYT3Y1MAwVkGgprrX15f8//3lzv/r6wPfX1vrb4pNHQhjCNzcGKwF1PT2x+st/3886/v/7u7W
/5eXeW66tNidFV0tCKNwgDYxXV3lu/jNzTX/fzxu+n+ow/j/r7dr/p+f5/zv3GzHYGS1MIzCAdrkcX9v
9f+frxb9/3Yn8f+hdsP/3x+W//9wb9v/U1Osrp2caMGLrB6E4YwLC1zZgDadeQ8MuO8PSv5/vRUBwbdj
gV6Z8P/hwUn/j3YZ1SFrBmE44+xM++yHh/r+/3wxHWz719vRQC8Ygelv97L+f3u+8f+hZt2XBxu1tbAa
AHTek29v7v7/+W7v/x+vgGHwajUSXvv/9+cr/5+cWPJ/X7XaaqwGAJ335ki7wbfDrfrfgDZ9A9r07UC9
5rf9tRrfgJq+7a1U/ba3XPnbnjKlw1gNIBdjFSQFYxUkHv9nAAC/hu6vewywPwAAAABJRU5ErkJggg==
</value>
</data>
<data name="scintillaDiffControl1.ImageRowOk" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAB
ugAAAboB6KsBBgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAATdEVYdFNvdXJj
ZQBPeHlnZW4gSWNvbnPsGK7oAAAB0UlEQVQ4T2P4//8/RRirICkYqyAuzKlsKsspa1XEIGTOBxPDUIQL
c8jbKYoZR73JbF/xn0/d9waDiDUvSByrYnQMslnKNOZV7ayt/1efuvc/qXnpfx5V7z0gOYQieescWcv4
r3yKzhNhYmBxGUtpWdOoFwU9K/5P2XQCjPO7V/yXM4+8ApIHK+KStczW9y37VzJx5X+XhOb/fEpOE0Di
3AqmErKmYc+T6mb9r5+96X8dEKc3z/8vahD+mU3GXA9ugKRh6K3Yqmn/01vm/k9tnP3fOiQfaIj9NCkj
3+ehhe3/M1vngeWSamf8lzIJ+8oqZ24M0gc3gFvevk/HI/N/YHb7/+jyKf8Tamf9N/WJ+u+bVfU/rXH+
/5SGOf+Tqyf/lzEN/s4qbW4B0ww3AIS55GwX6LrF/vfP6vwfUjD5f1TZ9P/RZbP/hxVM+e8SX/lfytDt
J6eUjQ2yZhBG4XArWK/Qcgn+H5Q/7X98zYr/SQ1r/gfkdv4XN3D4zSFt7YisFoYxBHjkrDYY+4T/L5my
939Gx7L/EoZ2f9ilrNzQ1cEwpgADAyO3vPk2s6C4/9Im9n/Y5a280dUgY+yCQEO4ZK2ysPkZHWMVJAVj
FSQe/2cAAKAehUz/zF2tAAAAAElFTkSuQmCC
</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIACcBAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAARTSURBVFhH7Zd/bBRFFMcv8Q/ij97eniVK1QTkdvdaOUWa2FBvdw+xRYqNP0hL
UaMFYzSg2BBzWkM4f4QEBFu99u6apgRRosbEGATb3h6miRoNgeg/BhNRSSpyey3REPlH/hnfG96de7tz
7bWR//gkL52ZN/O+b+ZmZqe+q8yHmtXhG2UjHAka4WapObR0YazhBnJdOfxR7QHZ0PZKhpoPGCoT2A+y
qb4q6aEVNOT/wR9VmiRd/bAkpKu/BEz1AxDbIpuh9oChvCkbShZ8f1KffzDRYCx0K4WYP7Ku9paEDXUw
qIcayOWlw3dN0AythBX6gvr/GoiGYuSdOxAgQYHOwowfoeaqcIxluILUXD2SqXVQgITfqFeKf8nNwT5o
VBUC445jnBlXzo0cUx4k8e+xjuJUT/AOREBXJtCoKqSuse46PtZUf6zV6xdR88wEDO1zHFSzStNAoLvS
ClSTAOLX1S7RBITAzl6LnSVTieOyQflSpYHVJoBIpvoRxPlDikZkahIDRyyJHbEs68oeKF+UY/XLuNPF
XBIImuGVEIvBCdlATWKg02n8CXxrQwtkuHDg/O8il4e5JIBA7PNgI1T1UnuvVoNZgiUkQ1uCZVnX7iS3
h2ICfb9/e23GznZlCrlEys4dSueto2nb2pXKW92D0+OlWxEup2zAVE5S1UtNNKzyBODy4AZlcglB8Ztb
IydAbAKMCa2QuwQJvc37w8TA+M8rxClaLEvRcCN3Clja2XxmxXPrxMIuy9iWPeukiisAx+ae65uW3ITl
gK71kLuMocL4XShebQJo97/R/RXErLwCxT0Am28r1uHvx7BrR7nTBQT8BsWx//qBHqGg26LxTraobfnP
FEIM3lgQ9CCWZVPZCGXPHQCbbT0GTE4eZev2PMuTiDzdyuITaaFw0RY/2sTM3o15CiMGjx3M+ieqCkkX
rN3OwDuPH+Czw0QefmcbexcSc/rREife4/4Xjuy9SGHE+PXwGuwIiTxDTR5StoU73yOy9fBbLLK5lS3b
1AJC+8p8La9vYre1N7K+3w7DyTh2O4USw8+3oU5T1QME/MsZ3Gmpc1nWNRxnenxDqe2xkVf47Nv3beH1
QTs78+cZbsLNfBXgYUFNZaTt3GfF4LNZ8uwYF0fDnwrbRi6MBylUZWDAAA6Ck9BGTSXSU9bLbqFK1vDU
ai7efShxuS2fnaQwswMD+TsArtAh/K5Tsy9VsFrdQm7r/XqYLWy5g4tvt5L/+fLWpxSmOhwvo3P4Xadm
2IjZ/U5Bp3WktnNh9XGTvXbyYJkvc/7LWyhE9bhexZNgFtjAk+/v/PvF0T7WOfQSW7XjCbgL1rC6trtZ
7X31fMPtPvVJmfhAfmz+D1QE9wO8kodBfJqSKTOlS2cP9T/Pdny3v0wY7o0LKfvYzO+AueL8z6hnrL+3
/8yRU2Wil20Svobp5OnRBTTsypLJjy3OTOU64W2wLTVlLafmq8yCz/cvMjc9QWLVBkkAAAAASUVORK5C
YII=
</value>
</data>
</root>
@@ -1,848 +0,0 @@
namespace 开发辅助工具.Tools.SmartEditor
{
partial class FrmMainEditor
{
/// <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(FrmMainEditor));
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.TsNew = new System.Windows.Forms.ToolStripButton();
this.TsOpen = new System.Windows.Forms.ToolStripButton();
this.TsSave = new System.Windows.Forms.ToolStripButton();
this.TsSaveAll = new System.Windows.Forms.ToolStripButton();
this.TsFTPUpload = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.TsUndo = new System.Windows.Forms.ToolStripButton();
this.TsRedo = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.TxtFind = new System.Windows.Forms.ToolStripTextBox();
this.TsFind = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.TsFavView = new System.Windows.Forms.ToolStripButton();
this.dockPanel = new WeifenLuo.WinFormsUI.Docking.DockPanel();
this.vS2015BlueTheme1 = new WeifenLuo.WinFormsUI.ThemeVS2015.VS2015BlueTheme();
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.新建ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.打开ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.重新读取ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.保存ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.保存全部ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.另存为ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.视图ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.置顶显示ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.文件浏览窗口ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fTP浏览器ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.编辑ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.行操作ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.删除重复行ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.删除空白行ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.大小写转换ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.转换为小写ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.转换为大写ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.单行注释ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.注释选定行ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.取消选定行注释ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.编码与解码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.base64编码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.base64解码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.urlEncodeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.urlDecodeUTF8ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
this.urlEncodeGB2312ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.urlDecodeGB2312ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.搜索ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.查找与替换ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.替换ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.在文件中查找ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.跳到指定行ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.编码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.使用ANSI编码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.使用UTF8编码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.使用UTF8BOM编码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.使用UTF16BigToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.使用UTF16LittleEndian编码ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.语言ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.工具ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.文件关联ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.站点设置ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.收藏管理ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fTPToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.上传当前文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.上传所有站点当前位置文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.上传全部FTP标签文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.vsToolStripExtender1 = new WeifenLuo.WinFormsUI.Docking.VisualStudioToolStripExtender(this.components);
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.TsState = new System.Windows.Forms.ToolStripStatusLabel();
this.toolStripStatusLabel2 = new System.Windows.Forms.ToolStripStatusLabel();
this.TsRowCol = new System.Windows.Forms.ToolStripStatusLabel();
this.toolStripStatusLabel3 = new System.Windows.Forms.ToolStripStatusLabel();
this.TsFtpPath = new System.Windows.Forms.ToolStripStatusLabel();
this.toolStrip1.SuspendLayout();
this.menuStrip1.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.SuspendLayout();
//
// toolStrip1
//
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.TsNew,
this.TsOpen,
this.TsSave,
this.TsSaveAll,
this.TsFTPUpload,
this.toolStripSeparator1,
this.TsUndo,
this.TsRedo,
this.toolStripSeparator3,
this.TxtFind,
this.TsFind,
this.toolStripSeparator2,
this.TsFavView});
this.toolStrip1.Location = new System.Drawing.Point(0, 25);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(977, 27);
this.toolStrip1.Stretch = true;
this.toolStrip1.TabIndex = 1;
this.toolStrip1.Text = "toolStrip1";
//
// TsNew
//
this.TsNew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsNew.Image = ((System.Drawing.Image)(resources.GetObject("TsNew.Image")));
this.TsNew.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsNew.Name = "TsNew";
this.TsNew.Size = new System.Drawing.Size(24, 24);
this.TsNew.Text = "新建";
this.TsNew.Click += new System.EventHandler(this.TsNew_Click);
//
// TsOpen
//
this.TsOpen.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsOpen.Image = ((System.Drawing.Image)(resources.GetObject("TsOpen.Image")));
this.TsOpen.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsOpen.Name = "TsOpen";
this.TsOpen.Size = new System.Drawing.Size(24, 24);
this.TsOpen.Text = "打开";
this.TsOpen.Click += new System.EventHandler(this.TsOpen_Click);
//
// TsSave
//
this.TsSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsSave.Enabled = false;
this.TsSave.Image = ((System.Drawing.Image)(resources.GetObject("TsSave.Image")));
this.TsSave.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsSave.Name = "TsSave";
this.TsSave.Size = new System.Drawing.Size(24, 24);
this.TsSave.Text = "保存";
this.TsSave.Click += new System.EventHandler(this.TsSave_Click);
//
// TsSaveAll
//
this.TsSaveAll.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsSaveAll.Image = ((System.Drawing.Image)(resources.GetObject("TsSaveAll.Image")));
this.TsSaveAll.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsSaveAll.Name = "TsSaveAll";
this.TsSaveAll.Size = new System.Drawing.Size(24, 24);
this.TsSaveAll.Text = "保存全部";
this.TsSaveAll.Click += new System.EventHandler(this.TsSaveAll_Click);
//
// TsFTPUpload
//
this.TsFTPUpload.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsFTPUpload.Enabled = false;
this.TsFTPUpload.Image = ((System.Drawing.Image)(resources.GetObject("TsFTPUpload.Image")));
this.TsFTPUpload.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsFTPUpload.Name = "TsFTPUpload";
this.TsFTPUpload.Size = new System.Drawing.Size(24, 24);
this.TsFTPUpload.Text = "FTP上传";
this.TsFTPUpload.Click += new System.EventHandler(this.TsFTPUpload_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 27);
//
// TsUndo
//
this.TsUndo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsUndo.Enabled = false;
this.TsUndo.Image = ((System.Drawing.Image)(resources.GetObject("TsUndo.Image")));
this.TsUndo.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsUndo.Name = "TsUndo";
this.TsUndo.Size = new System.Drawing.Size(24, 24);
this.TsUndo.Text = "撤销";
this.TsUndo.Click += new System.EventHandler(this.TsUndo_Click);
//
// TsRedo
//
this.TsRedo.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsRedo.Enabled = false;
this.TsRedo.Image = ((System.Drawing.Image)(resources.GetObject("TsRedo.Image")));
this.TsRedo.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsRedo.Name = "TsRedo";
this.TsRedo.Size = new System.Drawing.Size(24, 24);
this.TsRedo.Text = "重做";
this.TsRedo.Click += new System.EventHandler(this.TsRedo_Click);
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
this.toolStripSeparator3.Size = new System.Drawing.Size(6, 27);
//
// TxtFind
//
this.TxtFind.Font = new System.Drawing.Font("Microsoft YaHei UI", 9F);
this.TxtFind.Name = "TxtFind";
this.TxtFind.Size = new System.Drawing.Size(200, 27);
this.TxtFind.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtFind_KeyDown);
//
// TsFind
//
this.TsFind.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsFind.Image = ((System.Drawing.Image)(resources.GetObject("TsFind.Image")));
this.TsFind.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsFind.Name = "TsFind";
this.TsFind.Size = new System.Drawing.Size(24, 24);
this.TsFind.Text = "查找";
this.TsFind.Click += new System.EventHandler(this.TsFind_Click);
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(6, 27);
//
// TsFavView
//
this.TsFavView.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.TsFavView.Image = ((System.Drawing.Image)(resources.GetObject("TsFavView.Image")));
this.TsFavView.ImageTransparentColor = System.Drawing.Color.Magenta;
this.TsFavView.Name = "TsFavView";
this.TsFavView.Size = new System.Drawing.Size(24, 24);
this.TsFavView.Text = "收藏管理";
this.TsFavView.Click += new System.EventHandler(this.TsFavView_Click);
//
// dockPanel
//
this.dockPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.dockPanel.DockBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(41)))), ((int)(((byte)(57)))), ((int)(((byte)(85)))));
this.dockPanel.DockBottomPortion = 150D;
this.dockPanel.DockLeftPortion = 200D;
this.dockPanel.DockRightPortion = 200D;
this.dockPanel.DockTopPortion = 150D;
this.dockPanel.Font = new System.Drawing.Font("Tahoma", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.World, ((byte)(0)));
this.dockPanel.Location = new System.Drawing.Point(0, 52);
this.dockPanel.Name = "dockPanel";
this.dockPanel.Padding = new System.Windows.Forms.Padding(6);
this.dockPanel.RightToLeftLayout = true;
this.dockPanel.ShowAutoHideContentOnHover = false;
this.dockPanel.ShowDocumentIcon = true;
this.dockPanel.Size = new System.Drawing.Size(977, 686);
this.dockPanel.TabIndex = 2;
this.dockPanel.Theme = this.vS2015BlueTheme1;
this.dockPanel.ActiveContentChanged += new System.EventHandler(this.DockPanel_ActiveContentChanged);
//
// menuStrip1
//
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.文件ToolStripMenuItem,
this.视图ToolStripMenuItem,
this.编辑ToolStripMenuItem,
this.搜索ToolStripMenuItem,
this.编码ToolStripMenuItem,
this.语言ToolStripMenuItem,
this.工具ToolStripMenuItem,
this.fTPToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(977, 25);
this.menuStrip1.TabIndex = 5;
this.menuStrip1.Text = "menuStrip1";
//
// 文件ToolStripMenuItem
//
this.文件ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.新建ToolStripMenuItem,
this.打开ToolStripMenuItem,
this.重新读取ToolStripMenuItem,
this.保存ToolStripMenuItem,
this.保存全部ToolStripMenuItem,
this.另存为ToolStripMenuItem});
this.文件ToolStripMenuItem.Name = "文件ToolStripMenuItem";
this.文件ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.文件ToolStripMenuItem.Text = "文件";
//
// 新建ToolStripMenuItem
//
this.新建ToolStripMenuItem.Name = "新建ToolStripMenuItem";
this.新建ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.T)));
this.新建ToolStripMenuItem.Size = new System.Drawing.Size(202, 22);
this.新建ToolStripMenuItem.Text = "新建";
this.新建ToolStripMenuItem.Click += new System.EventHandler(this.新建ToolStripMenuItem_Click);
//
// 打开ToolStripMenuItem
//
this.打开ToolStripMenuItem.Name = "打开ToolStripMenuItem";
this.打开ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
this.打开ToolStripMenuItem.Size = new System.Drawing.Size(202, 22);
this.打开ToolStripMenuItem.Text = "打开";
this.打开ToolStripMenuItem.Click += new System.EventHandler(this.打开ToolStripMenuItem_Click);
//
// 重新读取ToolStripMenuItem
//
this.重新读取ToolStripMenuItem.Enabled = false;
this.重新读取ToolStripMenuItem.Name = "重新读取ToolStripMenuItem";
this.重新读取ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.R)));
this.重新读取ToolStripMenuItem.Size = new System.Drawing.Size(202, 22);
this.重新读取ToolStripMenuItem.Text = "重新读取";
this.重新读取ToolStripMenuItem.Click += new System.EventHandler(this.重新读取ToolStripMenuItem_Click);
//
// 保存ToolStripMenuItem
//
this.保存ToolStripMenuItem.Enabled = false;
this.保存ToolStripMenuItem.Name = "保存ToolStripMenuItem";
this.保存ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));
this.保存ToolStripMenuItem.Size = new System.Drawing.Size(202, 22);
this.保存ToolStripMenuItem.Text = "保存";
this.保存ToolStripMenuItem.Click += new System.EventHandler(this.保存ToolStripMenuItem_Click);
//
// 保存全部ToolStripMenuItem
//
this.保存全部ToolStripMenuItem.Name = "保存全部ToolStripMenuItem";
this.保存全部ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift)
| System.Windows.Forms.Keys.S)));
this.保存全部ToolStripMenuItem.Size = new System.Drawing.Size(202, 22);
this.保存全部ToolStripMenuItem.Text = "保存全部";
this.保存全部ToolStripMenuItem.Click += new System.EventHandler(this.保存全部ToolStripMenuItem_Click);
//
// 另存为ToolStripMenuItem
//
this.另存为ToolStripMenuItem.Name = "另存为ToolStripMenuItem";
this.另存为ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Alt)
| System.Windows.Forms.Keys.S)));
this.另存为ToolStripMenuItem.Size = new System.Drawing.Size(202, 22);
this.另存为ToolStripMenuItem.Text = "另存为";
this.另存为ToolStripMenuItem.Click += new System.EventHandler(this.另存为ToolStripMenuItem_Click);
//
// 视图ToolStripMenuItem
//
this.视图ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.置顶显示ToolStripMenuItem,
this.文件浏览窗口ToolStripMenuItem,
this.fTP浏览器ToolStripMenuItem});
this.视图ToolStripMenuItem.Name = "视图ToolStripMenuItem";
this.视图ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.视图ToolStripMenuItem.Text = "视图";
//
// 置顶显示ToolStripMenuItem
//
this.置顶显示ToolStripMenuItem.Name = "置顶显示ToolStripMenuItem";
this.置顶显示ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.置顶显示ToolStripMenuItem.Text = "置顶显示";
this.置顶显示ToolStripMenuItem.Click += new System.EventHandler(this.置顶显示ToolStripMenuItem_Click);
//
// 文件浏览窗口ToolStripMenuItem
//
this.文件浏览窗口ToolStripMenuItem.Name = "文件浏览窗口ToolStripMenuItem";
this.文件浏览窗口ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.文件浏览窗口ToolStripMenuItem.Text = "工作区窗口";
this.文件浏览窗口ToolStripMenuItem.Click += new System.EventHandler(this.文件浏览窗口ToolStripMenuItem_Click);
//
// fTP浏览器ToolStripMenuItem
//
this.fTP浏览器ToolStripMenuItem.Name = "fTP浏览器ToolStripMenuItem";
this.fTP浏览器ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.fTP浏览器ToolStripMenuItem.Text = "FTP浏览器";
this.fTP浏览器ToolStripMenuItem.Click += new System.EventHandler(this.FTP浏览器ToolStripMenuItem_Click);
//
// 编辑ToolStripMenuItem
//
this.编辑ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.行操作ToolStripMenuItem,
this.大小写转换ToolStripMenuItem,
this.单行注释ToolStripMenuItem,
this.编码与解码ToolStripMenuItem});
this.编辑ToolStripMenuItem.Name = "编辑ToolStripMenuItem";
this.编辑ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.编辑ToolStripMenuItem.Text = "编辑";
//
// 行操作ToolStripMenuItem
//
this.行操作ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.删除重复行ToolStripMenuItem,
this.删除空白行ToolStripMenuItem});
this.行操作ToolStripMenuItem.Name = "行操作ToolStripMenuItem";
this.行操作ToolStripMenuItem.Size = new System.Drawing.Size(177, 22);
this.行操作ToolStripMenuItem.Text = "行操作";
//
// 删除重复行ToolStripMenuItem
//
this.删除重复行ToolStripMenuItem.Name = "删除重复行ToolStripMenuItem";
this.删除重复行ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.删除重复行ToolStripMenuItem.Text = "删除重复行";
this.删除重复行ToolStripMenuItem.Click += new System.EventHandler(this.删除重复行ToolStripMenuItem_Click);
//
// 删除空白行ToolStripMenuItem
//
this.删除空白行ToolStripMenuItem.Name = "删除空白行ToolStripMenuItem";
this.删除空白行ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.删除空白行ToolStripMenuItem.Text = "删除空白行";
this.删除空白行ToolStripMenuItem.Click += new System.EventHandler(this.删除空白行ToolStripMenuItem_Click);
//
// 大小写转换ToolStripMenuItem
//
this.大小写转换ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.转换为小写ToolStripMenuItem,
this.转换为大写ToolStripMenuItem});
this.大小写转换ToolStripMenuItem.Name = "大小写转换ToolStripMenuItem";
this.大小写转换ToolStripMenuItem.Size = new System.Drawing.Size(177, 22);
this.大小写转换ToolStripMenuItem.Text = "大小写转换";
//
// 转换为小写ToolStripMenuItem
//
this.转换为小写ToolStripMenuItem.Name = "转换为小写ToolStripMenuItem";
this.转换为小写ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.转换为小写ToolStripMenuItem.Text = "转换为小写";
this.转换为小写ToolStripMenuItem.Click += new System.EventHandler(this.转换为小写ToolStripMenuItem_Click);
//
// 转换为大写ToolStripMenuItem
//
this.转换为大写ToolStripMenuItem.Name = "转换为大写ToolStripMenuItem";
this.转换为大写ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.转换为大写ToolStripMenuItem.Text = "转换为大写";
this.转换为大写ToolStripMenuItem.Click += new System.EventHandler(this.转换为大写ToolStripMenuItem_Click);
//
// 单行注释ToolStripMenuItem
//
this.单行注释ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.注释选定行ToolStripMenuItem,
this.取消选定行注释ToolStripMenuItem});
this.单行注释ToolStripMenuItem.Name = "单行注释ToolStripMenuItem";
this.单行注释ToolStripMenuItem.Size = new System.Drawing.Size(177, 22);
this.单行注释ToolStripMenuItem.Text = "单行注释/取消注释";
//
// 注释选定行ToolStripMenuItem
//
this.注释选定行ToolStripMenuItem.Name = "注释选定行ToolStripMenuItem";
this.注释选定行ToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
this.注释选定行ToolStripMenuItem.Text = "注释选定行";
this.注释选定行ToolStripMenuItem.Click += new System.EventHandler(this.注释选定行ToolStripMenuItem_Click);
//
// 取消选定行注释ToolStripMenuItem
//
this.取消选定行注释ToolStripMenuItem.Name = "取消选定行注释ToolStripMenuItem";
this.取消选定行注释ToolStripMenuItem.Size = new System.Drawing.Size(160, 22);
this.取消选定行注释ToolStripMenuItem.Text = "取消选定行注释";
this.取消选定行注释ToolStripMenuItem.Click += new System.EventHandler(this.取消选定行注释ToolStripMenuItem_Click);
//
// 编码与解码ToolStripMenuItem
//
this.编码与解码ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.base64编码ToolStripMenuItem,
this.base64解码ToolStripMenuItem,
this.toolStripMenuItem1,
this.urlEncodeToolStripMenuItem,
this.urlDecodeUTF8ToolStripMenuItem,
this.toolStripMenuItem2,
this.urlEncodeGB2312ToolStripMenuItem,
this.urlDecodeGB2312ToolStripMenuItem});
this.编码与解码ToolStripMenuItem.Name = "编码与解码ToolStripMenuItem";
this.编码与解码ToolStripMenuItem.Size = new System.Drawing.Size(177, 22);
this.编码与解码ToolStripMenuItem.Text = "编码与解码";
//
// base64编码ToolStripMenuItem
//
this.base64编码ToolStripMenuItem.Name = "base64编码ToolStripMenuItem";
this.base64编码ToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.base64编码ToolStripMenuItem.Text = "Base64编码";
this.base64编码ToolStripMenuItem.Click += new System.EventHandler(this.Base64编码ToolStripMenuItem_Click);
//
// base64解码ToolStripMenuItem
//
this.base64解码ToolStripMenuItem.Name = "base64解码ToolStripMenuItem";
this.base64解码ToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.base64解码ToolStripMenuItem.Text = "Base64解码";
this.base64解码ToolStripMenuItem.Click += new System.EventHandler(this.Base64解码ToolStripMenuItem_Click);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(188, 6);
//
// urlEncodeToolStripMenuItem
//
this.urlEncodeToolStripMenuItem.Name = "urlEncodeToolStripMenuItem";
this.urlEncodeToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.urlEncodeToolStripMenuItem.Text = "UrlEncode(UTF8)";
this.urlEncodeToolStripMenuItem.Click += new System.EventHandler(this.UrlEncodeToolStripMenuItem_Click);
//
// urlDecodeUTF8ToolStripMenuItem
//
this.urlDecodeUTF8ToolStripMenuItem.Name = "urlDecodeUTF8ToolStripMenuItem";
this.urlDecodeUTF8ToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.urlDecodeUTF8ToolStripMenuItem.Text = "UrlDecode(UTF8)";
this.urlDecodeUTF8ToolStripMenuItem.Click += new System.EventHandler(this.UrlDecodeUTF8ToolStripMenuItem_Click);
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(188, 6);
//
// urlEncodeGB2312ToolStripMenuItem
//
this.urlEncodeGB2312ToolStripMenuItem.Name = "urlEncodeGB2312ToolStripMenuItem";
this.urlEncodeGB2312ToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.urlEncodeGB2312ToolStripMenuItem.Text = "UrlEncode(GB2312)";
this.urlEncodeGB2312ToolStripMenuItem.Click += new System.EventHandler(this.UrlEncodeGB2312ToolStripMenuItem_Click);
//
// urlDecodeGB2312ToolStripMenuItem
//
this.urlDecodeGB2312ToolStripMenuItem.Name = "urlDecodeGB2312ToolStripMenuItem";
this.urlDecodeGB2312ToolStripMenuItem.Size = new System.Drawing.Size(191, 22);
this.urlDecodeGB2312ToolStripMenuItem.Text = "UrlDecode(GB2312)";
this.urlDecodeGB2312ToolStripMenuItem.Click += new System.EventHandler(this.UrlDecodeGB2312ToolStripMenuItem_Click);
//
// 搜索ToolStripMenuItem
//
this.搜索ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.查找与替换ToolStripMenuItem,
this.替换ToolStripMenuItem,
this.在文件中查找ToolStripMenuItem,
this.跳到指定行ToolStripMenuItem});
this.搜索ToolStripMenuItem.Name = "搜索ToolStripMenuItem";
this.搜索ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.搜索ToolStripMenuItem.Text = "搜索";
//
// 查找与替换ToolStripMenuItem
//
this.查找与替换ToolStripMenuItem.Name = "查找与替换ToolStripMenuItem";
this.查找与替换ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.F)));
this.查找与替换ToolStripMenuItem.Size = new System.Drawing.Size(182, 22);
this.查找与替换ToolStripMenuItem.Text = "查找";
this.查找与替换ToolStripMenuItem.Click += new System.EventHandler(this.查找与替换ToolStripMenuItem_Click);
//
// 替换ToolStripMenuItem
//
this.替换ToolStripMenuItem.Name = "替换ToolStripMenuItem";
this.替换ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.H)));
this.替换ToolStripMenuItem.Size = new System.Drawing.Size(182, 22);
this.替换ToolStripMenuItem.Text = "替换";
this.替换ToolStripMenuItem.Click += new System.EventHandler(this.替换ToolStripMenuItem_Click);
//
// 在文件中查找ToolStripMenuItem
//
this.在文件中查找ToolStripMenuItem.Name = "在文件中查找ToolStripMenuItem";
this.在文件中查找ToolStripMenuItem.Size = new System.Drawing.Size(182, 22);
this.在文件中查找ToolStripMenuItem.Text = "在文件中查找";
this.在文件中查找ToolStripMenuItem.Click += new System.EventHandler(this.在文件中查找ToolStripMenuItem_Click);
//
// 跳到指定行ToolStripMenuItem
//
this.跳到指定行ToolStripMenuItem.Name = "跳到指定行ToolStripMenuItem";
this.跳到指定行ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.G)));
this.跳到指定行ToolStripMenuItem.Size = new System.Drawing.Size(182, 22);
this.跳到指定行ToolStripMenuItem.Text = "跳到指定行";
this.跳到指定行ToolStripMenuItem.Click += new System.EventHandler(this.跳到指定行ToolStripMenuItem_Click);
//
// 编码ToolStripMenuItem
//
this.编码ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.使用ANSI编码ToolStripMenuItem,
this.使用UTF8编码ToolStripMenuItem,
this.使用UTF8BOM编码ToolStripMenuItem,
this.使用UTF16BigToolStripMenuItem,
this.使用UTF16LittleEndian编码ToolStripMenuItem});
this.编码ToolStripMenuItem.Name = "编码ToolStripMenuItem";
this.编码ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.编码ToolStripMenuItem.Text = "编码";
//
// 使用ANSI编码ToolStripMenuItem
//
this.使用ANSI编码ToolStripMenuItem.Name = "使用ANSI编码ToolStripMenuItem";
this.使用ANSI编码ToolStripMenuItem.Size = new System.Drawing.Size(247, 22);
this.使用ANSI编码ToolStripMenuItem.Text = "使用 ANSI 编码";
this.使用ANSI编码ToolStripMenuItem.Click += new System.EventHandler(this.使用ANSI编码ToolStripMenuItem_Click);
//
// 使用UTF8编码ToolStripMenuItem
//
this.使用UTF8编码ToolStripMenuItem.Name = "使用UTF8编码ToolStripMenuItem";
this.使用UTF8编码ToolStripMenuItem.Size = new System.Drawing.Size(247, 22);
this.使用UTF8编码ToolStripMenuItem.Text = "使用 UTF-8 编码";
this.使用UTF8编码ToolStripMenuItem.Click += new System.EventHandler(this.使用UTF8编码ToolStripMenuItem_Click);
//
// 使用UTF8BOM编码ToolStripMenuItem
//
this.使用UTF8BOM编码ToolStripMenuItem.Name = "使用UTF8BOM编码ToolStripMenuItem";
this.使用UTF8BOM编码ToolStripMenuItem.Size = new System.Drawing.Size(247, 22);
this.使用UTF8BOM编码ToolStripMenuItem.Text = "使用 UTF-8 BOM 编码";
this.使用UTF8BOM编码ToolStripMenuItem.Click += new System.EventHandler(this.使用UTF8BOM编码ToolStripMenuItem_Click);
//
// 使用UTF16BigToolStripMenuItem
//
this.使用UTF16BigToolStripMenuItem.Name = "使用UTF16BigToolStripMenuItem";
this.使用UTF16BigToolStripMenuItem.Size = new System.Drawing.Size(247, 22);
this.使用UTF16BigToolStripMenuItem.Text = "使用 UTF-16 Big Endian 编码 ";
this.使用UTF16BigToolStripMenuItem.Click += new System.EventHandler(this.使用UTF16BigToolStripMenuItem_Click);
//
// 使用UTF16LittleEndian编码ToolStripMenuItem
//
this.使用UTF16LittleEndian编码ToolStripMenuItem.Name = "使用UTF16LittleEndian编码ToolStripMenuItem";
this.使用UTF16LittleEndian编码ToolStripMenuItem.Size = new System.Drawing.Size(247, 22);
this.使用UTF16LittleEndian编码ToolStripMenuItem.Text = "使用 UTF-16 Little Endian 编码";
this.使用UTF16LittleEndian编码ToolStripMenuItem.Click += new System.EventHandler(this.使用UTF16LittleEndian编码ToolStripMenuItem_Click);
//
// 语言ToolStripMenuItem
//
this.语言ToolStripMenuItem.Name = "语言ToolStripMenuItem";
this.语言ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.语言ToolStripMenuItem.Text = "语言";
//
// 工具ToolStripMenuItem
//
this.工具ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.文件关联ToolStripMenuItem,
this.站点设置ToolStripMenuItem,
this.收藏管理ToolStripMenuItem});
this.工具ToolStripMenuItem.Name = "工具ToolStripMenuItem";
this.工具ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.工具ToolStripMenuItem.Text = "工具";
//
// 文件关联ToolStripMenuItem
//
this.文件关联ToolStripMenuItem.Name = "文件关联ToolStripMenuItem";
this.文件关联ToolStripMenuItem.Size = new System.Drawing.Size(169, 22);
this.文件关联ToolStripMenuItem.Text = "文件关联";
this.文件关联ToolStripMenuItem.Click += new System.EventHandler(this.文件关联ToolStripMenuItem_Click);
//
// 站点设置ToolStripMenuItem
//
this.站点设置ToolStripMenuItem.Name = "站点设置ToolStripMenuItem";
this.站点设置ToolStripMenuItem.Size = new System.Drawing.Size(169, 22);
this.站点设置ToolStripMenuItem.Text = "站点设置";
this.站点设置ToolStripMenuItem.Click += new System.EventHandler(this.站点设置ToolStripMenuItem_Click);
//
// 收藏管理ToolStripMenuItem
//
this.收藏管理ToolStripMenuItem.Name = "收藏管理ToolStripMenuItem";
this.收藏管理ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.K)));
this.收藏管理ToolStripMenuItem.Size = new System.Drawing.Size(169, 22);
this.收藏管理ToolStripMenuItem.Text = "收藏管理";
this.收藏管理ToolStripMenuItem.Click += new System.EventHandler(this.TsFavView_Click);
//
// fTPToolStripMenuItem
//
this.fTPToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.上传当前文件ToolStripMenuItem,
this.上传所有站点当前位置文件ToolStripMenuItem,
this.上传全部FTP标签文件ToolStripMenuItem});
this.fTPToolStripMenuItem.Name = "fTPToolStripMenuItem";
this.fTPToolStripMenuItem.Size = new System.Drawing.Size(40, 21);
this.fTPToolStripMenuItem.Text = "FTP";
//
// 上传当前文件ToolStripMenuItem
//
this.上传当前文件ToolStripMenuItem.Enabled = false;
this.上传当前文件ToolStripMenuItem.Name = "上传当前文件ToolStripMenuItem";
this.上传当前文件ToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.上传当前文件ToolStripMenuItem.Text = "上传当前文件";
this.上传当前文件ToolStripMenuItem.Click += new System.EventHandler(this.上传当前文件ToolStripMenuItem_Click);
//
// 上传所有站点当前位置文件ToolStripMenuItem
//
this.上传所有站点当前位置文件ToolStripMenuItem.Name = "上传所有站点当前位置文件ToolStripMenuItem";
this.上传所有站点当前位置文件ToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.上传所有站点当前位置文件ToolStripMenuItem.Text = "上传当前相对位置文件到所有站点";
this.上传所有站点当前位置文件ToolStripMenuItem.Click += new System.EventHandler(this.上传所有站点当前位置文件ToolStripMenuItem_Click);
//
// 上传全部FTP标签文件ToolStripMenuItem
//
this.上传全部FTP标签文件ToolStripMenuItem.Name = "上传全部FTP标签文件ToolStripMenuItem";
this.上传全部FTP标签文件ToolStripMenuItem.Size = new System.Drawing.Size(256, 22);
this.上传全部FTP标签文件ToolStripMenuItem.Text = "上传全部FTP标签文件";
this.上传全部FTP标签文件ToolStripMenuItem.Click += new System.EventHandler(this.上传全部FTP标签文件ToolStripMenuItem_Click);
//
// vsToolStripExtender1
//
this.vsToolStripExtender1.DefaultRenderer = null;
//
// statusStrip1
//
this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.TsState,
this.toolStripStatusLabel2,
this.TsRowCol,
this.toolStripStatusLabel3,
this.TsFtpPath});
this.statusStrip1.Location = new System.Drawing.Point(0, 716);
this.statusStrip1.Name = "statusStrip1";
this.statusStrip1.Size = new System.Drawing.Size(977, 22);
this.statusStrip1.TabIndex = 7;
this.statusStrip1.Text = "statusStrip1";
//
// TsState
//
this.TsState.Name = "TsState";
this.TsState.Size = new System.Drawing.Size(813, 17);
this.TsState.Spring = true;
this.TsState.Text = "状态:准备就绪。";
this.TsState.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// toolStripStatusLabel2
//
this.toolStripStatusLabel2.ForeColor = System.Drawing.Color.Gray;
this.toolStripStatusLabel2.Name = "toolStripStatusLabel2";
this.toolStripStatusLabel2.Size = new System.Drawing.Size(11, 17);
this.toolStripStatusLabel2.Text = "|";
//
// TsRowCol
//
this.TsRowCol.Name = "TsRowCol";
this.TsRowCol.Size = new System.Drawing.Size(60, 17);
this.TsRowCol.Text = "行:0 列: 0";
//
// toolStripStatusLabel3
//
this.toolStripStatusLabel3.ForeColor = System.Drawing.Color.Gray;
this.toolStripStatusLabel3.Name = "toolStripStatusLabel3";
this.toolStripStatusLabel3.Size = new System.Drawing.Size(11, 17);
this.toolStripStatusLabel3.Text = "|";
//
// TsFtpPath
//
this.TsFtpPath.Name = "TsFtpPath";
this.TsFtpPath.Size = new System.Drawing.Size(67, 17);
this.TsFtpPath.Text = "FTP路径:无";
//
// FrmMainEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(977, 738);
this.Controls.Add(this.statusStrip1);
this.Controls.Add(this.dockPanel);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.menuStrip1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.IsMdiContainer = true;
this.Name = "FrmMainEditor";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "文本编辑器";
this.Deactivate += new System.EventHandler(this.FrmMainEditor_Deactivate);
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMainEditor_FormClosing);
this.Load += new System.EventHandler(this.FrmMainEditor_Load);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.statusStrip1.ResumeLayout(false);
this.statusStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.ToolStrip toolStrip1;
private WeifenLuo.WinFormsUI.Docking.DockPanel dockPanel;
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem 文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 新建ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 打开ToolStripMenuItem;
private WeifenLuo.WinFormsUI.ThemeVS2015.VS2015BlueTheme vS2015BlueTheme1;
private WeifenLuo.WinFormsUI.Docking.VisualStudioToolStripExtender vsToolStripExtender1;
private System.Windows.Forms.ToolStripMenuItem 保存ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 保存全部ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 另存为ToolStripMenuItem;
private System.Windows.Forms.ToolStripButton TsNew;
private System.Windows.Forms.ToolStripButton TsOpen;
private System.Windows.Forms.ToolStripMenuItem 重新读取ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 编辑ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 行操作ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 删除重复行ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 删除空白行ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 编码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 使用ANSI编码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 使用UTF8编码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 使用UTF8BOM编码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 使用UTF16BigToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 使用UTF16LittleEndian编码ToolStripMenuItem;
private System.Windows.Forms.ToolStripButton TsSave;
private System.Windows.Forms.ToolStripButton TsSaveAll;
private System.Windows.Forms.ToolStripButton TsFTPUpload;
private System.Windows.Forms.StatusStrip statusStrip1;
private System.Windows.Forms.ToolStripStatusLabel TsState;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripTextBox TxtFind;
private System.Windows.Forms.ToolStripButton TsFind;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
private System.Windows.Forms.ToolStripButton TsFavView;
private System.Windows.Forms.ToolStripStatusLabel TsFtpPath;
private System.Windows.Forms.ToolStripMenuItem fTPToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 上传当前文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 上传所有站点当前位置文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 上传全部FTP标签文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 搜索ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 查找与替换ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 跳到指定行ToolStripMenuItem;
private System.Windows.Forms.ToolStripButton TsUndo;
private System.Windows.Forms.ToolStripButton TsRedo;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
private System.Windows.Forms.ToolStripMenuItem 大小写转换ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 转换为小写ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 转换为大写ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 单行注释ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 注释选定行ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 取消选定行注释ToolStripMenuItem;
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel2;
private System.Windows.Forms.ToolStripStatusLabel TsRowCol;
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel3;
private System.Windows.Forms.ToolStripMenuItem 替换ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 编码与解码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem base64编码ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem base64解码ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem urlEncodeToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem urlDecodeUTF8ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
private System.Windows.Forms.ToolStripMenuItem urlEncodeGB2312ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem urlDecodeGB2312ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 视图ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 文件浏览窗口ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 置顶显示ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 语言ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem fTP浏览器ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 在文件中查找ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 工具ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 文件关联ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 站点设置ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 收藏管理ToolStripMenuItem;
}
}
File diff suppressed because it is too large. Load diff
@@ -1,377 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="TsNew.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACLSURBVFhH7dYhDoAwEETRHo1TYFAYFAaDIuFoHA1mRJMK
IN3uBsNM8l3TPNU0aQ/r0G6sR2Ej4GxoQCErAUdl+fyI3CsBNSsBbEKueQFsRs2LALAFNS0KwFZkXiSA
bci0aADjndWzAu4eptwngLcJIIAAAggggABuAD8bntyAqMyAu9+NJxPgL0vpAoJkz+uuCJ84AAAAAElF
TkSuQmCC
</value>
</data>
<data name="TsOpen.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAFNSURBVFhHYxgFo2AUYAPpm8sd0rZU1ePCIHmoUtoAkAXp
W6r+48Qj3gGpWyr3E4vJcizBECAFjzqA2g7AFs/4MHUdsKniNFQJbQEuB6RtqnQGyWMrnEjFYItwAWwO
AGpaDpJL3VJthS5HKs7YXKkDtggXwOaAjA016hC5qqXocqTgtC2VS8CW4APoDkjbXNkCEk/bUu2BLE4O
TtpQygu2BB9AdkDS5sqXabvL+UHiqZurdiEbRiqGeYQgQHYAMOFlg8TSNlWHIxtGKk5cU/UObDgxAMkB
x6BCQN+XPUI2kGS8uTIVahRhAHNA6qaqYAi/KgfDQBIwMAedARtMLAA5AJha14HYISsLObEZSgpO3VLh
AjaYWAAOgY2V1iA20CGTsRlKPK5cBTaUFAByAIjO3FEtC3YMBThzS4US2FBSQOq2amUocxSMguEOGBgA
cVRz1KE1SXQAAAAASUVORK5CYII=
</value>
</data>
<data name="TsSave.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAwcSURBVGhD7Zh5UFRXFsY7JjWTzT9mKpPEmi0TkxjNmGhc
knGSuOMuQaNOXOMaDBINqKCMK4OCCgquqIka12hM1LgERXZRBJQd2fdu6G6g+zU09MY33312G8YiBLpm
quYPT9VXj37vdb/vd+85596H4lE8ikfxc7HtdYUiMJzHBCpRoQi58b9VaP5PcjxvyxmFImi43VBnguaf
CK18zuUW3vSuxNuUi28+Rq3Kk+Xim4eRvvfuyycXI4RW5sgaLrQiG8OElgtlYai3Q5kY4iWUgcFfCKXj
g1aSPy9LR68lpejuWYUXJmfisa7hFoK42o11NIKOvzA2BWsTgV1pwKbrNqTlFKKmtg71jc3QSs1Q65tQ
o2uCqr4JytomVGqNKNcYUaYWakSFrAZUau6rSmuQpaRUtZKs6lo9quv0UFMaHY+1tYi4HgWv0zrM/h6Y
cQ7ovkQFRZcdSXZjHYwuoSUfbNJj710gLAn41xUz0jPzoNdLMFkBowloaAYkI6BrBOobgDoDoNWDUFQ9
CMjPEs9T4rq4T9zf0ARwDOTfaDYDJgtg4W/aWgAz/7h29Sq8jmsx8xtgwVng/V1Al+eP1tuddTAeDy0f
EWzAzhQg5CYBfjQjIysfOp2EZj5QGBBG9DQkzNXTPAcUGgFA86o6cFbuH2UYQgm4Wt4n7tXxO3oCGVoB
CZjGJjOuXYskgAYDfaLQf+kZDNom4Ve/P6W3O+tgPB5W5hIsIfQ2EEyATRFmZGUXyjNg5mg1cfQcEBKN
CEMPIOwz0CYErwsIMVsyBAEcEPKsGglwNRLeJzR4Y1UyenhFYFBwA37d7YjO7qyDQYDRIRJ2EGDrDWDz
VTOy7xVBkgyw2u6PlgNCGBCjKQzJafRLEGImeM8DCHtqyb/VIACuYflJLVyPtGDSsRYM3W1zAuCJsLJx
OyQE3wKCEoDAqxbk5hfzAQZ7rraC4OjJ6UQjD2qhNQQBOgJhEL9BgMjISKw8pcWUY8D0k8DIvTY86QzA
hDAJ25g+m+MJEWlBXkEpjI18GkPMgkilhyHESDogWteE8udmgvc5akJ8V28wIyoqCr6nazH5a2AaIVz2
OQngulPCFgIExAJbrltQUFQOo/E+QAtnQUCIjtQ6nRw10eHC5nUHhJyGBIiOjsaqM7X48Agw5SgwKtxJ
ALfdEoK4DvjHsA4IUFRSgSY7gAgHxH+kk70mOlTYPOdotTIE76/TmxEbG4vV39bC9TDkWRiz30mAj/ZI
2Mz83xANbIuyoqS0Ck1NdNYqBITo4Q/XRIcLW0CImSCInHYEiI+Lg9/ZOkw8BHkWxh5wAuAxAkzdKyGA
+b/2OlspAcoqlGhuorOH4mEI0Q5/qbDbrAle1+osuJGQgDXf1WHcV5Ahxh10AqALAf4RLsE/DlgTycUs
xoqKSlWbACLarAk7REcLW5xX11uQeOMG1p2rx9gvgfGEmECA33R3AmDGAQkbWcB+14DtsVZUKmtgaqaj
n4kHEA/VRJuF3UY6iVlQ11lw82Yi1p+vx5iDTB9CuH5lw3OvdBLgcQLMOihhAwvY9yoQGmeFSqVuF0CE
DPFwTbRR2G3VRDX/rqm1IOnWTWwkgMsBdiDK7ZANv3vVCYA5X0pYxwL2+fE+QLVaC7OJbn4hHDMh6kLM
Brc3MDpmwl7crdNJjLyAUBGgutaK5KQk+P9Qj5HhXAP2A5MO2/C8MwDzDklYEwUsvwLsjLdBq62FudmI
FpuNsj6QzSGrRZaVsnAKTCYzmjgNRu5vxB5HbBP0BhN0kont0gRtvQmaOhNHvRkqbTOUmmZUVTcgNTkJ
ARd1GLEPGEGIyUdsePG1TgI8QYAFRyT8kx3I+zLfCRJsUGt1hKhDjaZOng1VtQZVTKtKZTUqqlTsUlUo
K69iu61AcUkZCotLufiVIL+gCHn5RcjNK0BObj6yc/KQmZWLjMxspGdkIS09C3fSMpByJw3JqXeQmpKC
wCsShhFAaOrXNnTr4QTAoq8lrGYH8r4kXmiAAzdbsO9GC/YKEWhPK+3mDAntonbGCVllhbH4HQplJxPa
IRRtxXZZFoRE/aRgLpjiHq/zLRi2Fxiyh9uJowR43QkA96MSfNmBlhPAi1r2A/D5BYrHJTx6nAcW863p
U2rRd/dfPuZ9C8w9A8zhy8hsauYpvlVxQ/bxCRo5ztHk3uYjbg8mcYV140orVtsJ7PXj2W1E1xnNnBd5
L9JnGM2/v5vfPUaAnp0FeCqszOOEBB92oNbmPalFNDibhmbSzAzqYxqaxhVzKvURDU1i73ajXGlqAk2N
ZycZS1Ojmc+jaGwkR3Y4jQ2jxLkxwrQ4z7+F8eG8PpTmh/D6e3wbm36cAL2cAPj8pITlETR/EVhKgKU8
zj3egrfm6zBptRpu1IcOrVLD1a6JrTTB1y4fNca3Fs+N89Xg5Rl6/HGaAS9PlzDAz4SRhBUjL1JnMAEG
7eRAnXAG4OmwsmXfSPBmCxXmxciL1JlyoAUrg8ugUZWjskJFKZ2SSqlCCYt83Ocq/NZFj5dc69F/RTNG
cDaE+Q9oXrwLvxMKzDrlJIDXaQlebKHC/BLmu8j7yQRYu7sEZqMGDQ0SGgwSGnl0qMGgh6EDajJKUNco
MW21En+YJOENzsTf/JoxjGnkMP9eGDBwB/DJNzZ0dwZg+RkJy9hCPc4Bn7FQF/M4aX8LVoUWo1GqgU6v
R11dHYwGNZoa1WiQNPLnep2OL//tS0BUVVZi+poqvDbDgAELJLy/zoTBzH+H+UFUvxCmLQFe6SzAU8+E
lfmclbCUBSzMu7PLuPPoFs4UCimATquUjWRkFmOuXyFmrSiFb3AeCgvLUFdbD42mtl0J0FKuFXM2VKHP
ggYM9jRgqL8J74nCZd4PYuq8S/UNZmc7Y8OrzgCs+k6CJwv3U5qXRYAPCeC9NZ81UIFarsyJSQVQ9K2B
4i969JpcgdzcIqaGFkqlul3V1GhQwHfsBQFVGORpxBifBrhsNuPvHH0x8sL8O9uBPtvYnr+1oYczAH7n
JHiwcBexv4sev5AQrmxzXwTeg7KiBDXVasQn3sNTg6qh6F2Pfh+XIjMzD8qqGpSXq9pVVWU1crLz4b6l
EsNXGjF5fSPGbDXjXYd55n5/pk/vreL5NvTsLMDTz4aVrTkvYTELdyEXp/l2TWCOegbkoLSokN1Ehesx
2XhSBtCh77QSpKbmoKxUiaKiynZVWlKFtLu58AypxMR1zZgV1IiJ2y1y0Qr15+j3Y/q8ESRm34ZenQV4
hgDrf5Dgzu4zjwuXLAKMZ4vz2JiFwtw8FNNIRGTGA4A+U4uRlJTJ1BCpVNau8vPKkZKcBa+wCkwLNGFR
aBPcdlrQj8YHcORF8fZl+vQMZPMQAP06CfAsAfwvSVjEzjP3tGhlFI/jWGTu6zOQm5lDE2W4eOUuFG+r
oejZgL9OKUVCwl3k5ohUKm5XOdklSExMh8+eCswNNWPZgWZM3WuVi1aM/Ns034fp89om0QUJ0N8JgIDL
EhaycIX52dzTiL3NWAIsXJOG9NQMZGYU49LlZExcnI6x7rlwX5OCqKgUpKcVMZUK2lXa3ULExtyB3/5y
eOy3YPUxE6YfsOItGhcjL8y/uQV4NUCsQQQY4AwAt7TzWbizaH4WN2SzCDCaAPNW38GNuNuIj8+k4VTE
RiUiLjoR0ddv8vMdxMVlIDY2vV3Fx2fgyhW+Oh4qx4qjVvifNWP2IatctG/Zzfdm/r9CAA+nALqGVWz6
0YBPmPczaX4GN2/TCTKKbW7OymREXI7FpUtJsi5f/kni88WLt3hsX+Les2ejEXCsHGvPtiDksgXzuW3u
RdMO86KAX9pIgAst6N37eOf+O92ly7bYL/YUwZO7UbEFFv+nnMLt8BB2iOnet5FxlynEXE5PL3JKWVkl
iI5KRtDJMmzmar8vxob5HKSX/O+njRj5P9N8T6aT7wUjXuy2u9BuraOxxe1Pr3wF//NabE6wwT+a4kP8
ImxYtysZkRExiIm5zZRJckqx/O75c9cRfqUUh1NtOJFmxVa+DH3GghU5L+RxwYZVFxsxcMT3UCiC1tqN
dSYC53TtGna3R79j9aKNyRpI9TpI7fiv6PVeh3VikRIrrfz7zPUHeueIrps88oEbFIrwp+2mHsWjeBSP
4v8qFIp/A2dkad2NL3U0AAAAAElFTkSuQmCC
</value>
</data>
<data name="TsSaveAll.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAA9GSURBVGhDtZcJVBNXF8e7H8VWZQkYiEGEBALIJhBk32VH
dlAggAuuaLUL4IJWWyto1U8tWndUWqWIUmqtdWn7dVOrVRFXEA1qLQiIOxRzv3vfZELs8p3Kaeac33kz
Sea9+7/vzv1PnktJybQcP+n1C+lZk1RI9xv5Rd0nT5/tvtzQ2F1/5arOuHCpobt0fVl3zoQZ3Vnj8rpT
xox/kps7q3nWrHz5c89yuLt724ZHJzfJvYKBmDw9H64of4UnT1Sgy6Ozqxu2lVdCUtpYSEwdC/HJWRAb
m/ooLCwhSB3aPzuc5b6ysIgEZVJqDsQnKWDK9AImoPvJE/VSujk6u36H7Z9UYfA5kJCSDXG4dkxs0iP/
4KhnFSCXjUQBqekTIHn0OJj6eiE0XLsJDx91wqPHXTrj/sNO2LFzjyb42IQMiI5N7IUAZ05AZGwaENNm
zobLjTdwgcfw8HGnzrh7/xHbAU3wcWMgKjahdwICwuOVETGpQEydUQgXGpqg495DJkJXtN99AGXlu3uC
HzUa14/rpYCRccqwqGQgJuMzUHfpGjS33oXW9ns64TbS3HYXtuz4VCv4VFw/9pG/f1gvBASMUoZGJAIx
cdrbUHvhKlukvePBU9y5+5DtDA9d9wbKPiVoU1mFOvBktnZIeOwj72cVYMcERCiDw+KByJ3yJpyqa4Cm
X1vhxq02DdfxuvZcPfx0/Azj2ImzcPZ8A5y/1NgrziFbtldA1ripoMiZDJnZxKTO/MKivJqaGnlFVZUn
o6LKc+XKdZ74bHpOmvaWZ+7UAq+8WXPdSkpK+mkE+KOAoNA4CAwdBeMnvwEnauvh+q1W+LW5naPlDtRf
vQ7zFxbD6MyJMEYxEfJmzoHjv9TBby2t0NLa1gva4Vbzbbh+85aGG0hzS+vD223t9xhYb8qWtnuVe2vu
KRTT72UoptxLVEy8n52d1zZ58oxYjQBfFBAQEgv+wTEwduJMOHbqIjQ0/QaN15sZV2+0wOm6y5A9Pg/k
nkHg5hEAGdlToBZ3oFvHhkfz13xxCNCpmWeQ4Y1KzFShd6VrBIzwC1f6BUYBkT1hBvx48jxcvvorE0Fc
aWqGX85eYgLIK2gHsvC89kID/N6tW8Oj+T/ff4Stq+UZqpCwUVoCfEcqffwjwcc/AhTj8uC7n8/Bxcab
UH/tFlxG6pW/YVldxHqdxiZISsthQs/gDtx78BgeoOnpks+/PMJeOTDzrO3GxKdrCbBzlo0YEaD08gsH
L98wyMiZCt8crYUzF5Vw9lITo+7ydfjx5zrIzJkC4dEpzPDwJQzLqp719MedXTqDHLvmi8Ms+xg433ZV
gdoC5ChghHcoEGOyJsPhH05DLQo4h4ET5+uvw08n6rDuJ8PIyCTW+rLGT4eTtZegreM+dNzHtqoj2rHt
Vu87xGpfyzNUgSHRPQLcUYCHVwg+oMGQljERDnx7Eo6dqYfj2I1+Js42wOHvT7Lap35NfVuB5fTz6Yuc
4d1Bg9IRLehHVTVfsfKhnafkhUclq/xCIjgBEhTgJPdXunlQdwnEWhsH+44cZ8GfqLvCOFnXCF//eApb
aC7zChJBXejoL+dRQAe03bmvMyhBldUHWPlQ+VLysApUfoHaAtx8la7yABju7g9xydlQc/g47kADJ+Bs
j4C0jAnMK0gEldoP+Fwob2IvR8/QFU1ooruq9rPSofLlHDtB5e2nLcBphNLZ1RcI8oPlpdtg596voKL6
IMKNWz7eg+IU7HsSQYb23bFa5tgaw9MBTSjik8p9rHwwcJa8oJFxKCBMLUBiJ3NAAY4u3uA03Ifh7ObL
DMvDOwQ8fUIBf4wdaiS22XAIQLMjw6P/D9/8eJq1Wd4v/nWwfRPlFTWsdDBwljxM4tMC7J08lMOcR4CD
sydwQrxxN3zAxc2PlRWVl6vcn4nhDY+M5fD3vzDDu4KL/fs0s5EStG1nNSsd/m3BPyha5ekd0iPA2sFd
aevgDnaOchjmhEJcSIgXOKIQEkOiSJwH/mcmsyPI1r/67wk413CDmZ6uOH/lJmzF8qXSocT5BkQSfxBg
76SU2buCrYMbwgmxRyEkhjKfnKqA5DQF3siZHUF9ef/Xx+HMBSX+f0Cz0wFkorXIpu27WelQ8N5ouIhK
7hnICTAnAdZOSmtbF7CxGw42KEQ2jBNCY2RMElRXfwaVlZUQPSoFdyGEGR715c8PHYXTF65pHFsXnMYE
rd9aQWXDgqfkefqMVLlqC5CgAImNE0hkziBFIdZqIXQeGZMIe/dWw6efVuJ/1mRwHxHEDI/68t4DP8DR
05fhOJmeDmBmiu183ZZd4IvlQ4mjBCIqV7mfWoC5RCaWOigtpQ5gae0IVggTgpCo8Mg42L17N+zcuRMi
ohPZA02GFxGTBpX7vmWLnGRmpxuO1zbAmvXlLPuUOEog8gcBVvbKIZZ2YGFlD0Mlw4DEkBAaQ8NiMPhd
UF5eDmGR8ZrORF2houYbteE16oxjtVdgBfoSZZ4Sx3XEAJWzq7eWALG1UmwhA/OhtqAthM6DQ6Ngx44d
UFZWBqHho1hHIsOT44RvFL4Lq9ZtxwwRO57iww3l8OHGcijd+DGUbvoE1v4N7HuE/R754zwr15aBYmwe
SxpBCUT+LEBkLoXBQ6yBF0LQeUBQOGzatBk++mg9BKGYYeQVrL36sC5F7ZY8Y7i7H7jiPzXaYmq3+KCx
dksPXyD272A0IXJS2rlQclS1KfkHR2u6ywj0GSoTyjQXrC9r406UNDynxDGzdfVROTp79ggQiSVKU5El
mA22ApFYCrwYkbk1BhGCwX8EpaVr0YUjOK9AEQ4YOG94NLkLCuBNjwIg+Aeeh3/j5Uced4KrbU2Z9GQc
g8Y1KGmULFoXfQoFyHsEYODKQaYWIDQbCiTEFIWYDZbguRV4+QRC6dq1sHr1avALCGOtlfMJD40QZnrM
7HBypOe1hMuaM9t2CoaDD64nSD8uu+oMc/fQvTQHFzitRWuq11bZO2oJEJiJlcaDzMFEOARICC+GRg9P
Pxb8ihUrcZtDWIvlfYKgSYnhcj+YMDEPXp+VDzNnFcAbb82Gt/LnwtsF8yC/sIiNbxcUQUHhfCicvQAK
53AU4Hk+fpaP39Fv6J6g0GggX6JOaCmlZ9GWdUTem3BEAa6cgEGDzGUCgVhpZCwCgYmYwYuh0V3uDcuX
L4elS5diXQexFsv7BJsMoTEgOBLbbRUcOnSImd6MmW/C1LzXYdr0mTBl6gxYumw5fPnll4z9+/cz+OsD
Bw5oOHTwIOROytOsQ0KGSuyxKizZmuq1VfjmwAnQ19cfoG8kLDMUmKoMjEzBUGAGRsaDmRAaXd29VEuW
LIFF776Lu+HPvIKyQdnh3ZtG38Bw+ATbLQX00foNuO2eTxliVk4ufPbZZ2iKe2HPnj0MOuevaayurma/
GZc7RbPThNTWmT2fzJsQHFVSe2dOAB59X3zxxXg9Pf16QyMhGAlMnxgYGDw2MDB83FdP0DHMwbF+0aJF
T4qKivDh8mEtlvcJ3r1p9PELxXZbDvv27cNnZh0+dF6aXaJgMrPHQ1XVbmaKtEM0VlVVPQV9RkJyxk3i
doCVkQtbi3aA9yZcT4UiNAL6IG4vvPDCvH79+m/u16/fxj59+qzW09Nbg6wWi8VrYmJitkRFRX0skTi3
/dHweKi8tm4twwxWw+o1pfjQeWheSyiYMRk5sGvXLkZFRQW+mnzKRv4zgtyePsvMGo9zcgmioGktai5U
Suq1VVZSR40AOl5GBmDwxh4eHmYpKSlD8vLyJO+8844dPsBO6MLOxcXFwdY2jvWDh9igRzxtejR6eAXA
xo0bWXZXrPwP2OGbLb9LFEzaGAVzczJFQvuc2L59O2zbto2dk1h+p3lDFYqGsodZvS4KsH9KgOYAgJeR
V1UqlQEiRCzw2mb//oMBUqnDZTOxhPkDCeFNj0Y3D1/4sLSUBVBcvBRk9sM1u0TBJKdmsACJrVu3MrZs
2aKBrsnt6fvU0Qo2JwVOiC1sWEekeSgpJADP/1bAC8grGHhf5DU810eMcCfsLCxl54W8TzAhZHqc4bm4
ecGqVatYAIvfX4K166TZJQomPjENHX2TBtqtDRs2PDUSmzdvRrHpbE4KnBJF65igAJqLkoIVoLKwkP21
ADow4OfVkBjiebk80MRULKnlPYIJUYshw3Ny8UCvWIEBbIIFCxaCFfZvfpcomNi4JFiLhliKu0TjunXr
GHTOX5Pjk4jklHQ2L70VUKLonBdA81lY0Q78HwF/dQiFUiOh0PzM3xmeg5MbesUyzOZ6KCpagIvYssUJ
IQqMiomHNWvWMFPUhnaNoHP6noQk4G7RnJQgStQgXIPW5efDVx+V2EL6bAJMTU0NjU1EJ8nwOJ8YzCbl
sRvmAosXv8+CmDu3CKQ2DmCOJTAEH3gxvlfFjEpkhkisXLmS7dYHH3yg+Yyu6XMSEou/pTlJBG+o5Et0
TgnDUWUmtno2AXi8pK8veOvV10wf9Bge594kyFJi24VeoVq2bBmUlJTA3HlFMHvOPJiD0Lho0XvMzbWh
3xH8Nd1LYqKi4zRmqg2tqV4XBVhmqOP6x8crSCB6w3cGhoLOAQMMHukbGLfrGxq3DRho0Gxubl5bUFBw
H0V0zZ8/v3PBggUMOuevaczPz/8T/Hc0Lly4sNPPL6jTUCDoFAiMOwXGwi6BibBrkFDYZSQQdhkYCbte
629638jENJUL658fLyKWSEafPnrz9PReLUIxhf379589cODAOSKRaF5gYODCiIiId2JjYxfGxcUtSkpK
ei85OXlxWlrakvT09OKMjIySrKyspYRCoVhGqM9LMjMzi+k36EFLfX39l9vbOyyXyeyWWUmlJYPNzYtF
IvP3TU1FiwUCk0X6+oa5+LYgYlE94/E88oqJiUk/DG4Abr8xtk1RTU3N0CNHjticOnXKvrGx0ampqUl+
48YNn9u3bwe3traGt7W1xbS3tyfcuXMnBRnd0dGRzoPXY5BUJAl/E9fS0hKN90dcu3Yt+OLFi77nzp3z
wHmdjx49aodrWKFRitC1B+D5S9QdubB6ceDNNIEeMhD9wgRHMY4SZBjiinghgUgYEoMkICnIGCRDi3Qk
De9PwjEOiURCEF9Ejp874SjDcSiOpggZbF+8poro/YETkE+QiD44YT+kv3pyAUIOPhi/G4KjJSJFZIgd
Yo+QSAc1dE6f2yLWiATvG4pQQswQE8QQrwciryJ9EHX2n3vuf+UZ7ZlTTrGjAAAAAElFTkSuQmCC
</value>
</data>
<data name="TsFTPUpload.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGgSURBVFhH7ZW9TsMwFIX7CGwICV6AASEhtU1U1A5sJK4Q
YmAGdWDjCfoYTZVWDEwg8Qz8iIGBJmnYeQN2ttbHvQZTomInLkIoRzry3732Z9dxK6X+pPr94XkQDLq2
TNPqiwNMbLrXC1s0tZ6QlIt8Tli4BCgMUNuPW6rrXtr83hd99LnteLvZjleQawXAZUmXe+L4ye3MaQdt
1QCQMaJkyQVyrQLIHYoALvRhDHUJgLqAZNEN6ks5ARHAlQVAvnb88TH6rQKIAUW0GAGkAkA9IcgagLpz
Kfq9RQwWRnspAEX0fwAwgYkpzQ4ASrRNLHMlQBBcrqGtLXUSSO5M18iZv5BGmgcwleNFZ1X29N5g6R51
makIgOslh/RG8Cf5+bXmj7ZoSF8qAC8d1LMchuGOSCCJF9EfvUkA8mPNT1cpRE9fAYYdtLM9OBIJXA0W
bWIx14vv6ZHii8d3dT964H9OVxSmJ0wuAfLoE2D2UhqrBMgDsNt+2Vjk6sF4nUJ/1uyC6Rs5rhed0q4z
bQSAm48T0LH8EvhtP1lkI4BSv6dKZQqeXNeBw/l5/gAAAABJRU5ErkJggg==
</value>
</data>
<data name="TsUndo.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGlSURBVFhHxZa9TsMwFIW7VYCdDqgDEgMSSBUkNr8TE0/A
xoiEGNgYeAJGVAkR2Y4Q7GXhAYANCRh4ExbgFcAOJxC1TuJGjfmkq+ReX/uc/KdVh0DyU+z6x4gHin8h
9Usm/i8G8uLeDQyLezVgE/dmoEjcBFqao0zcxIwKd7IgcbiMaZOhStwa5/xdb+90HAfJ+hKWGp9a4pag
kl93BNvEsm5MSjwfHcWOsHw5TYhnQQV7hEwxTRpII+ExpIpp2oTTPdHopdA3JmTKadKE85NRZcL0dOLV
BfMiopIdpP0yerb15oMqdpYKuFBmAi0jTF9tzNGE72szr7Z5RPAbtLpRZALDhcz2e5RIPhiZq42hxR2b
CQxVQmV0mZ/XlvwDQ+MxbALlSmjMeu0L/vk7N+ZvGBqfvAmUnMjPIzK6R7ke2WJIndDfg73MgI4+yvUx
JrDrxJRg85kB/YQcouyPbrJC/s5AtIWyPwIRLqZHr/gtSn6hItz+McB2UfKLflWfBIq9IPUPEdGD85/R
pDE/qPr0PyH1D1F8QMRaF6lfzNGbLyNSC63WN4IOJgR9G8D7AAAAAElFTkSuQmCC
</value>
</data>
<data name="TsRedo.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGhSURBVFhHxZa9SgQxFIW3W3STbCEKgoWgsOhMIv5UVj6B
naUgFnYWPoGlLIpDkkG0XxsfQO0EtfBNbNRX0NzhRvYnOpmd2ckHBzaZ3HPP7ITMNKqCKXGKP8PAtPgO
GiILEDLEb4BQIQYChAgxEqDuEM4AoEmFIEm00tLRjpWzuVUVIVi6vmzMjo3u2YX4GGjgo3FDtCXfpErc
OE2LqmiItuZHTqMy8g1BJX9yGlShvBAsFYmzsCr9FwCeubOoKuXdfWUbzqW85hO9e5/NRzU/cxb3S8Uv
YEYVP4ADqJ2sLUKtc62VT3OASHHrNojfaCr2p6835nHpCM46kG9zABoNGxAlejPdDsUlfzJcl6lIc6Cp
xGe/AVXxFV7Kpb8uU9HmAEvEuzVoXoovmvAOXsqldHOAqPhhXJPSzQFj0LVG5j2wh9NelG4OmJ1+aANM
Sb6A016Ubg4wHW/ZALPpKsHpeqFa3GUhZLSEU/ViTsNdCEBltI1T9cM0fzVH7QkO6we+hIiMH3EYBvMY
nuFDFIf10zoXc0SLHg7DAG/Ayf4LjcYPlIcl/KjyoYIAAAAASUVORK5CYII=
</value>
</data>
<data name="TsFind.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKoSURBVFhH7Vc9aBRBGJ3KKoJNCtHCQotcGbsDudwPd4ek
kKQIIgSraJSAks4Erkh2ESxSXScEwUAQTfA22SZKIIUgpDwM1naCaQWb+L7b9yXj3u1lfy5pzIOPmX3z
fW/e7szNJOYCaVCr1a5Wq9XbpVJptF6vD5M+O+RyuUuVSuV+uVxeRXsUDhj5ibaJ8SmWDA4Qf1EsFr+F
JxUOYwdhHib2ETMszwYIfrXEvyAeY+J8oVAYYopB/wq4Esbm+SU0f50p6WAJSbwm3RfYFzeRu6t1+BLb
HEoGFL5TEbzVHdKxgfo5rUc0SMeDrLlVfIt0YsDErOqgP0m6P2S3WxvuGenUgMZ7au2R6g84nWbBDqlM
gM4INA9FU7RJRwNJG5KMZXhKKjOgtUYDG6SiIYlMHiOVGdBaVF1SvSHHqybm8/nLpDMDBsZVV+Yg3Q05
25n4ndRAYL+YzEG6G1irUUlCe0BqILANyBykuyG3mibK8Uo6gO/k2EsM6N1V3VNvTjjsnOVytpMKJvec
ttlyJsgkAvQWRFO0SUUDiU1JRsyTMsZbGjOee9SJlvOIbGxg4g/UbJKKBnbslCSLW7lYSBtMvHNiYnnB
+C+vc6QvoPOQk8tPO97fCkjcZ9EuqQCe2zox0fgDU5+Nt/yKoz2BvfSLWj6p0wEDMywS13OkA7Tchtl0
fx8b+ej8a9IC3v6T6qCf7EZF0bplYpZ0AN8ZNlvuExhYjTKAujdW/QrpZEDhtoog5FYb4VAkkFND/GCN
RhtfIN3PGMUNFYKhQwitoV1EjMsBg+drGJtALCE2NVcCOc/Rtvmc3gSEJiGwR6E44euay6R4zm5CACPT
iM51HQ7u9rcYf8D0YwzUhEI+f5J/TMImYPgGh84Ptgn075E+X8ib91qm/xnG/AUHzJ/gTsLVCAAAAABJ
RU5ErkJggg==
</value>
</data>
<data name="TsFavView.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOcSURBVFhH1VZbS1RRFF5WKGN5pQvdHworU0R7iBD6AT31
GPTUQz1ETz30VPQSQRLl9cyxjKJSsMtkWGBRZjUWpKZlgVZq9zIx7GI6c/aZ01q7tY8z42k6Y07QBx/M
7L3W9629z9pnH/hvEfJCgaWDRQzpUMTD/w6mDkdUAaYXNB7+N7CqYdmwDuOqgOFKCISOQQ5PJx4hDfaR
8Xg5DBHlLuhQytOJhVUJc0Z1+CJX35DdYl7OukW/v2nwHXcmg8MSB2y+XdK8GkaCL9a9C/ate2uVwgjv
wiEOSxzGvfCJzIQv/bY1VGwRTV9mM42N6fCZwxIDXP12Mhrxwo9gb/5LVYDxvHDg62EYpTk8krs5fPoR
1OCNXP3FidUrmhfTZC8EdBjk8KkjVAOLcCUbsNu34Kr34LOtwrN+hQyGD4IwevKeRRdgPCvooTmKoVjK
oVypQVqoyfKRwMn1mHDUrAIfJrerY/U7ivq0O9HminLOIUeRtdvJizyxwGKIDgpnsDrptXU6ucX0ZTSZ
zUtuWp2r252Mwyke5nSI64tbhS/jvjiZ3B2oThp00lakV2q9+mNemXtLtK1sNV4V9TuJ/w0D/YUfxYMV
beRh+6G3fAy4HWfswQZ8sTgITAsbslpsH/SU5gpYzQl7kjraSeAvKC6k2/1BXmwbCVMDrwqyzqW1OAlN
heJ82l3bHD3Yzhm4NWUqWNSm/rbj3VLUpfptc9Rmm9jAwJKJIjx+J2E3FGc9rWHmJSzvDvicDthFXMp8
4GQQi2bjvEbbHLVYNj4IHbpkAWc895xMYlHuHOV6oZPl4gd96UiRq/Pj7gWzacENyqUvJ5aLD6HjkE0C
soC2FV1OJrEoOnLuq3xLgyyWdQ+8IzYqgUBvwQcnk1gMDhTJm5NIlxHLugdeFDuleUXSeycD49Gqp6Jm
Rqdkd26HU0xQS5JFYAHbWNY98MaqoGRxKjlC3Hi8phcvmcdqdYoY57ee5EZcVjgmj2HcR5CASdek8OUs
2YDSuDalI8LUC61CA/stRzTPem6K7rWyaLxXZCPiMWxkWfcwdBiQJv7lflE3e6KhkIYXnuNH6WYOpce1
CY/so/AYs87TTLkc38eh7mDth1nhYjZ/ff3u4LBJwEK2qsIn8RzM5LA/A5smP1oAx/bydEyQEcbuHquE
4Yh8DfI4xB1UIt5e5aEySOFh16BvQGo+fBEZpMPD7oGrWBiqgqX8d8pAnSLS4r9RAPgJg1qWgjdsnQgA
AAAASUVORK5CYII=
</value>
</data>
<metadata name="vS2015BlueTheme1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>247, 17</value>
</metadata>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>127, 17</value>
</metadata>
<metadata name="vsToolStripExtender1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>414, 17</value>
</metadata>
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>591, 17</value>
</metadata>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIACnAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAAFeSURBVFhHYwACpgHGqAJ/V7o0/F/l8h+Gd6zy/6+5Kvm/4Ko0qmGBlWkNSHai
OuDfSpcDyA7oWBWK1RCK8MrUA0h2jjoAwviz0skXZDkxDlhw99D/w69uEoW3P73432R7LaoZ2ByAbjEu
B/ju7/lPKui4sgnFDOwhsNwlCpQDCIWA9Lrc/zUXVoMNJRaDHI1sxmgiHJwOeDnbWfz3UmdHYhxgsaMe
HK/EYlC6QTEDmwP+rXLZjGwxLgc47m6Fpm3iASjRIpuB1QGwHEAoBFQ3FoPzNrY8jwuHHZ6EYsZoIhx1
AEWJUGNT6f85d/ZjTWwgDJIDqUHWg4GxOmCFyzRki3E5AFQGEAIgNch6MDA2B7xZ6CRNbEEEKguwFTgg
DJJDV4+BRxPhoHTAn1Uu3sQ0SKiCsTkA3WK6O+D3Ukd3kCNGbhqA4VEHoHdO967y/a+/Kgm7QWRivJ1T
+mIGJgAuN5QLZkIuvQAAAABJRU5ErkJggg==
</value>
</data>
</root>
@@ -1,61 +0,0 @@
namespace SuperDesign.Tools.SmartEditor
{
partial class FrmResultText
{
/// <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.findAllResultsPanel1 = new ScintillaNET_FindReplaceDialog.FindAllResults.FindAllResultsPanel();
this.SuspendLayout();
//
// findAllResultsPanel1
//
this.findAllResultsPanel1.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.findAllResultsPanel1.Location = new System.Drawing.Point(1, 1);
this.findAllResultsPanel1.Name = "findAllResultsPanel1";
this.findAllResultsPanel1.Size = new System.Drawing.Size(800, 446);
this.findAllResultsPanel1.TabIndex = 0;
this.findAllResultsPanel1.OnResultClick += new ScintillaNET_FindReplaceDialog.FindAllResults.FindAllResultsPanel.ResultEventHandler(this.FindAllResultsPanel1_OnResultClick);
//
// FrmResultText
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 450);
this.Controls.Add(this.findAllResultsPanel1);
this.Name = "FrmResultText";
this.Text = "查找结果";
this.ResumeLayout(false);
}
#endregion
public ScintillaNET_FindReplaceDialog.FindAllResults.FindAllResultsPanel findAllResultsPanel1;
}
}
@@ -1,31 +0,0 @@
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;
using WeifenLuo.WinFormsUI.Docking;
using 开发辅助工具.Tools.SmartEditor;
namespace SuperDesign.Tools.SmartEditor
{
public partial class FrmResultText : DockContent
{
public FrmResultText()
{
InitializeComponent();
}
private void FindAllResultsPanel1_OnResultClick(object sender, ScintillaNET_FindReplaceDialog.FindResult r)
{
var frm= FrmMainEditor.MainEditor.OpenFile(r.Path);
if (frm.IsDisposed) { return; }
frm.highlightEditor1.Editor.SetSelection(r.Result.CpMin, r.Result.CpMax);
frm.highlightEditor1.Editor.ScrollCaret();
frm.highlightEditor1.Editor.Focus();
}
}
}
@@ -1,119 +0,0 @@
namespace SuperDesign.Tools.SmartEditor
{
partial class FrmSaveMsg
{
/// <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(FrmSaveMsg));
this.BtnCancel = new ryControls.ButtonEx();
this.BtnNoSave = new ryControls.ButtonEx();
this.BtnSave = new ryControls.ButtonEx();
this.labelTx1 = new ryControls.LabelTx();
this.SuspendLayout();
//
// BtnCancel
//
this.BtnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.BtnCancel.BaseColor = System.Drawing.Color.Gray;
this.BtnCancel.ColorGradient = true;
this.BtnCancel.Location = new System.Drawing.Point(314, 147);
this.BtnCancel.Name = "BtnCancel";
this.BtnCancel.Size = new System.Drawing.Size(88, 31);
this.BtnCancel.TabIndex = 3;
this.BtnCancel.Text = "取消";
this.BtnCancel.UseDefSkin = false;
this.BtnCancel.UseVisualStyleBackColor = true;
this.BtnCancel.Click += new System.EventHandler(this.BtnCancel_Click);
//
// BtnNoSave
//
this.BtnNoSave.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.BtnNoSave.BaseColor = System.Drawing.Color.Red;
this.BtnNoSave.ColorGradient = true;
this.BtnNoSave.Location = new System.Drawing.Point(220, 147);
this.BtnNoSave.Name = "BtnNoSave";
this.BtnNoSave.Size = new System.Drawing.Size(88, 31);
this.BtnNoSave.TabIndex = 2;
this.BtnNoSave.Text = "不保存";
this.BtnNoSave.UseDefSkin = false;
this.BtnNoSave.UseVisualStyleBackColor = true;
this.BtnNoSave.Click += new System.EventHandler(this.BtnNoSave_Click);
//
// BtnSave
//
this.BtnSave.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.BtnSave.BaseColor = System.Drawing.Color.Green;
this.BtnSave.ColorGradient = true;
this.BtnSave.Location = new System.Drawing.Point(126, 147);
this.BtnSave.Name = "BtnSave";
this.BtnSave.Size = new System.Drawing.Size(88, 31);
this.BtnSave.TabIndex = 1;
this.BtnSave.Text = "保存";
this.BtnSave.UseDefSkin = false;
this.BtnSave.UseVisualStyleBackColor = true;
this.BtnSave.Click += new System.EventHandler(this.BtnSave_Click);
//
// labelTx1
//
this.labelTx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.labelTx1.LineDistance = 5;
this.labelTx1.Location = new System.Drawing.Point(13, 9);
this.labelTx1.Name = "labelTx1";
this.labelTx1.Size = new System.Drawing.Size(392, 19);
this.labelTx1.TabIndex = 0;
this.labelTx1.Text = "提示文本";
//
// FrmSaveMsg
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(418, 190);
this.Controls.Add(this.BtnCancel);
this.Controls.Add(this.BtnNoSave);
this.Controls.Add(this.BtnSave);
this.Controls.Add(this.labelTx1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FrmSaveMsg";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "是否保存?";
this.TopMost = true;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmSaveMsg_FormClosing);
this.ResumeLayout(false);
}
#endregion
private ryControls.ButtonEx BtnSave;
private ryControls.ButtonEx BtnNoSave;
private ryControls.ButtonEx BtnCancel;
public ryControls.LabelTx labelTx1;
}
}
@@ -1,43 +0,0 @@
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 SuperDesign.Tools.SmartEditor
{
public partial class FrmSaveMsg : Form
{
public FrmSaveMsg()
{
InitializeComponent();
}
private void BtnCancel_Click(object sender, EventArgs e)
{
DialogResult= DialogResult.Cancel;
}
private void BtnSave_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Yes;
}
private void BtnNoSave_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.No;
}
private void FrmSaveMsg_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
e.Cancel = true;
}
}
}
}
@@ -1,107 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SuperDesign.Tools.SmartEditor
{
public class MyFileSystemInfo : IEquatable<MyFileSystemInfo>
{
public MyFileSystemInfo(FileSystemInfo fileSystemInfo,string name)
{
if (fileSystemInfo == null) throw new ArgumentNullException("fileSystemInfo");
this.info = fileSystemInfo;
if (name.Length == 0)
{
this.Name = info.Name;
}
else { this.Name = name; }
}
public bool IsDirectory { get { return this.AsDirectory != null; } }
public DirectoryInfo AsDirectory { get { return this.info as DirectoryInfo; } }
public FileInfo AsFile { get { return this.info as FileInfo; } }
private readonly FileSystemInfo info;
public string Name
{
get; set;
} = "";
public string Extension
{
get { return this.info.Extension; }
}
public DateTime LastWriteTime
{
get { return this.info.LastWriteTime; }
}
public DateTime CreationTime
{
get { return this.info.CreationTime; }
}
public string FullName
{
get { return this.info.FullName; }
}
public FileAttributes Attributes
{
get { return this.info.Attributes; }
}
public long Length
{
get { return this.AsFile.Length; }
}
public IEnumerable GetFileSystemInfos()
{
ArrayList children = new ArrayList();
if (this.IsDirectory)
{
foreach(var x in this.AsDirectory.GetDirectories())
{
children.Add(new MyFileSystemInfo(x, ""));
}
foreach (var x in this.AsDirectory.GetFiles())
{
children.Add(new MyFileSystemInfo(x, ""));
}
}
return children;
}
// Two file system objects are equal if they point to the same file system path
public bool Equals(MyFileSystemInfo other)
{
if (ReferenceEquals(null, other)) return false;
if (ReferenceEquals(this, other)) return true;
return Equals(other.info.FullName, this.info.FullName);
}
public override bool Equals(object obj)
{
if (ReferenceEquals(null, obj)) return false;
if (ReferenceEquals(this, obj)) return true;
if (obj.GetType() != typeof(MyFileSystemInfo)) return false;
return Equals((MyFileSystemInfo)obj);
}
public override int GetHashCode()
{
return (this.info != null ? this.info.FullName.GetHashCode() : 0);
}
public static bool operator ==(MyFileSystemInfo left, MyFileSystemInfo right)
{
return Equals(left, right);
}
public static bool operator !=(MyFileSystemInfo left, MyFileSystemInfo right)
{
return !Equals(left, right);
}
}
}
@@ -1,305 +0,0 @@
/*
* [File purpose]
* Author: Phillip Piper
* Date: 1 May 2007 7:44 PM
*
* CHANGE LOG:
* 2009-07-08 JPP Don't cache the image collections
* 1 May 2007 JPP Initial Version
*/
using System;
using System.Drawing;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using BrightIdeasSoftware;
namespace ObjectListViewDemo
{
/// <summary>
/// This helper class allows listviews and tree views to use image from the system image list.
/// </summary>
/// <remarks>Instances of this helper class know how to retrieve icon from the Windows shell for
/// a given file path. These icons are then added to the imagelist on the given control. ListViews need
/// special handling since they have two image lists which need to be kept in sync.</remarks>
public class SysImageListHelper
{
private SysImageListHelper()
{
}
protected ImageList.ImageCollection SmallImageCollection {
get {
if (this.listView != null)
return this.listView.SmallImageList.Images;
if (this.treeView != null)
return this.treeView.ImageList.Images;
return null;
}
}
protected ImageList.ImageCollection LargeImageCollection {
get {
if (this.listView != null)
return this.listView.LargeImageList.Images;
return null;
}
}
protected ImageList SmallImageList {
get {
if (this.listView != null)
return this.listView.SmallImageList;
if (this.treeView != null)
return this.treeView.ImageList;
return null;
}
}
protected ImageList LargeImageList {
get {
if (this.listView != null)
return this.listView.LargeImageList;
return null;
}
}
/// <summary>
/// Create a SysImageListHelper that will fetch images for the given tree control
/// </summary>
/// <param name="treeView">The tree view that will use the images</param>
public SysImageListHelper(TreeView treeView)
{
if (treeView.ImageList == null) {
treeView.ImageList = new ImageList();
treeView.ImageList.ImageSize = new Size(16, 16);
}
this.treeView = treeView;
}
protected TreeView treeView;
/// <summary>
/// Create a SysImageListHelper that will fetch images for the given listview control.
/// </summary>
/// <param name="listView">The listview that will use the images</param>
/// <remarks>Listviews manage two image lists, but each item can only have one image index.
/// This means that the image for an item must occur at the same index in the two lists.
/// SysImageListHelper instances handle this requirement. However, if the listview already
/// has image lists installed, they <b>must</b> be of the same length.</remarks>
public SysImageListHelper(ObjectListView listView)
{
if (listView.SmallImageList == null) {
listView.SmallImageList = new ImageList();
listView.SmallImageList.ColorDepth = ColorDepth.Depth32Bit;
listView.SmallImageList.ImageSize = new Size(16, 16);
}
if (listView.LargeImageList == null) {
listView.LargeImageList = new ImageList();
listView.LargeImageList.ColorDepth = ColorDepth.Depth32Bit;
listView.LargeImageList.ImageSize = new Size(32, 32);
}
//if (listView.SmallImageList.Images.Count != listView.LargeImageList.Images.Count)
// throw new ArgumentException("Small and large image lists must have the same number of items.");
this.listView = listView;
}
protected ObjectListView listView;
/// <summary>
/// Return the index of the image that has the Shell Icon for the given file/directory.
/// </summary>
/// <param name="path">The full path to the file/directory</param>
/// <returns>The index of the image or -1 if something goes wrong.</returns>
public int GetImageIndex(string path)
{
if (System.IO.Directory.Exists(path))
path = System.Environment.SystemDirectory; // optimization! give all directories the same image
else
if (System.IO.Path.HasExtension(path))
path = System.IO.Path.GetExtension(path);
if (this.SmallImageCollection.ContainsKey(path))
return this.SmallImageCollection.IndexOfKey(path);
try {
this.AddImageToCollection(path, this.SmallImageList, ShellUtilities.GetFileIcon(path, true, true));
this.AddImageToCollection(path, this.LargeImageList, ShellUtilities.GetFileIcon(path, false, true));
} catch (ArgumentNullException) {
return -1;
}
return this.SmallImageCollection.IndexOfKey(path);
}
private void AddImageToCollection(string key, ImageList imageList, Icon image) {
if (imageList == null)
return;
if (imageList.ImageSize == image.Size) {
imageList.Images.Add(key, image);
return;
}
using (Bitmap imageAsBitmap = image.ToBitmap()) {
Bitmap bm = new Bitmap(imageList.ImageSize.Width, imageList.ImageSize.Height);
Graphics g = Graphics.FromImage(bm);
g.Clear(imageList.TransparentColor);
Size size = imageAsBitmap.Size;
int x = Math.Max(0, (bm.Size.Width - size.Width) / 2);
int y = Math.Max(0, (bm.Size.Height - size.Height) / 2);
g.DrawImage(imageAsBitmap, x, y, size.Width, size.Height);
imageList.Images.Add(key, bm);
}
}
}
/// <summary>
/// ShellUtilities contains routines to interact with the Windows Shell.
/// </summary>
public static class ShellUtilities
{
/// <summary>
/// Execute the default verb on the file or directory identified by the given path.
/// For documents, this will open them with their normal application. For executables,
/// this will cause them to run.
/// </summary>
/// <param name="path">The file or directory to be executed</param>
/// <returns>Values &lt; 31 indicate some sort of error. See ShellExecute() documentation for specifics.</returns>
/// <remarks>The same effect can be achieved by <code>System.Diagnostics.Process.Start(path)</code>.</remarks>
public static int Execute(string path)
{
return ShellUtilities.Execute(path, "");
}
/// <summary>
/// Execute the given operation on the file or directory identified by the given path.
/// Example operations are "edit", "print", "explore".
/// </summary>
/// <param name="path">The file or directory to be operated on</param>
/// <param name="operation">What operation should be performed</param>
/// <returns>Values &lt; 31 indicate some sort of error. See ShellExecute() documentation for specifics.</returns>
public static int Execute(string path, string operation)
{
IntPtr result = ShellUtilities.ShellExecute(0, operation, path, "", "", SW_SHOWNORMAL);
return result.ToInt32();
}
/// <summary>
/// Get the string that describes the file's type.
/// </summary>
/// <param name="path">The file or directory whose type is to be fetched</param>
/// <returns>A string describing the type of the file, or an empty string if something goes wrong.</returns>
public static String GetFileType(string path)
{
SHFILEINFO shfi = new SHFILEINFO();
int flags = SHGFI_TYPENAME;
IntPtr result = ShellUtilities.SHGetFileInfo(path, 0, out shfi, Marshal.SizeOf(shfi), flags);
if (result.ToInt32() == 0)
return String.Empty;
else
return shfi.szTypeName;
}
/// <summary>
/// Return the icon for the given file/directory.
/// </summary>
/// <param name="path">The full path to the file whose icon is to be returned</param>
/// <param name="isSmallImage">True if the small (16x16) icon is required, otherwise the 32x32 icon will be returned</param>
/// <param name="useFileType">If this is true, only the file extension will be considered</param>
/// <returns>The icon of the given file, or null if something goes wrong</returns>
public static Icon GetFileIcon(string path, bool isSmallImage, bool useFileType)
{
int flags = SHGFI_ICON;
if (isSmallImage)
flags |= SHGFI_SMALLICON;
int fileAttributes = 0;
if (useFileType) {
flags |= SHGFI_USEFILEATTRIBUTES;
if (System.IO.Directory.Exists(path))
fileAttributes = FILE_ATTRIBUTE_DIRECTORY;
else
fileAttributes = FILE_ATTRIBUTE_NORMAL;
}
SHFILEINFO shfi = new SHFILEINFO();
IntPtr result = ShellUtilities.SHGetFileInfo(path, fileAttributes, out shfi, Marshal.SizeOf(shfi), flags);
if (result.ToInt32() == 0)
return null;
else
return Icon.FromHandle(shfi.hIcon);
}
/// <summary>
/// Return the index into the system image list of the image that represents the given file.
/// </summary>
/// <param name="path">The full path to the file or directory whose icon is required</param>
/// <returns>The index of the icon, or -1 if something goes wrong</returns>
/// <remarks>This is only useful if you are using the system image lists directly. Since there is
/// no way to do that in .NET, it isn't a very useful.</remarks>
public static int GetSysImageIndex(string path)
{
SHFILEINFO shfi = new SHFILEINFO();
int flags = SHGFI_ICON | SHGFI_SYSICONINDEX;
IntPtr result = ShellUtilities.SHGetFileInfo(path, 0, out shfi, Marshal.SizeOf(shfi), flags);
if (result.ToInt32() == 0)
return -1;
else
return shfi.iIcon;
}
#region Native methods
private const int SHGFI_ICON = 0x00100; // get icon
private const int SHGFI_DISPLAYNAME = 0x00200; // get display name
private const int SHGFI_TYPENAME = 0x00400; // get type name
private const int SHGFI_ATTRIBUTES = 0x00800; // get attributes
private const int SHGFI_ICONLOCATION = 0x01000; // get icon location
private const int SHGFI_EXETYPE = 0x02000; // return exe type
private const int SHGFI_SYSICONINDEX = 0x04000; // get system icon index
private const int SHGFI_LINKOVERLAY = 0x08000; // put a link overlay on icon
private const int SHGFI_SELECTED = 0x10000; // show icon in selected state
private const int SHGFI_ATTR_SPECIFIED = 0x20000; // get only specified attributes
private const int SHGFI_LARGEICON = 0x00000; // get large icon
private const int SHGFI_SMALLICON = 0x00001; // get small icon
private const int SHGFI_OPENICON = 0x00002; // get open icon
private const int SHGFI_SHELLICONSIZE = 0x00004; // get shell size icon
private const int SHGFI_PIDL = 0x00008; // pszPath is a pidl
private const int SHGFI_USEFILEATTRIBUTES = 0x00010; // use passed dwFileAttribute
//if (_WIN32_IE >= 0x0500)
private const int SHGFI_ADDOVERLAYS = 0x00020; // apply the appropriate overlays
private const int SHGFI_OVERLAYINDEX = 0x00040; // Get the index of the overlay
private const int FILE_ATTRIBUTE_NORMAL = 0x00080; // Normal file
private const int FILE_ATTRIBUTE_DIRECTORY = 0x00010; // Directory
private const int MAX_PATH = 260;
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
private struct SHFILEINFO
{
public IntPtr hIcon;
public int iIcon;
public int dwAttributes;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst=MAX_PATH)]
public string szDisplayName;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst=80)]
public string szTypeName;
}
private const int SW_SHOWNORMAL = 1;
[DllImport("shell32.dll", CharSet = CharSet.Auto)]
private static extern IntPtr ShellExecute(int hwnd, string lpOperation, string lpFile,
string lpParameters, string lpDirectory, int nShowCmd);
[DllImport("shell32.dll", CharSet = CharSet.Auto)]
private static extern IntPtr SHGetFileInfo(string pszPath, int dwFileAttributes,
out SHFILEINFO psfi, int cbFileInfo, int uFlags);
#endregion
}
}