Compare commits

...

11 Commits
5.23 ... 5.24

Author SHA1 Message Date
2dust
89da3823a4 Update AssemblyInfo.cs 2022-05-29 09:40:34 +08:00
2dust
3a9a49b163 Update MsgFilterSetForm.Designer.cs 2022-05-29 09:40:31 +08:00
2dust
277b21dc86 add server filter 2022-05-29 09:32:31 +08:00
2dust
bc0e8c17ba refactor Move To menu 2022-05-29 08:43:05 +08:00
2dust
51d3df69bb refactor Move To menu 2022-05-29 08:42:22 +08:00
2dust
4913f6f37d rename 2022-05-29 08:33:25 +08:00
2dust
ff622e2ef6 Update v2rayN.csproj 2022-05-29 08:14:16 +08:00
2dust
50ad643abe Update Utils.cs 2022-05-12 09:50:48 +08:00
2dust
944849a381 v2ray_win_temp 2 guiTemp 2022-05-12 09:49:04 +08:00
2dust
6f485141f0 Improve speed test core support 2022-05-12 09:19:03 +08:00
2dust
3575291119 add multiple program auto run 2022-05-12 08:52:40 +08:00
16 changed files with 383 additions and 219 deletions

View File

@@ -30,7 +30,7 @@
{ {
this.components = new System.ComponentModel.Container(); this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
this.scMain = new System.Windows.Forms.SplitContainer(); this.scServers = new System.Windows.Forms.SplitContainer();
this.lvServers = new v2rayN.Base.ListViewFlickerFree(); this.lvServers = new v2rayN.Base.ListViewFlickerFree();
this.cmsLv = new System.Windows.Forms.ContextMenuStrip(this.components); this.cmsLv = new System.Windows.Forms.ContextMenuStrip(this.components);
this.menuAddVmessServer = new System.Windows.Forms.ToolStripMenuItem(); this.menuAddVmessServer = new System.Windows.Forms.ToolStripMenuItem();
@@ -46,8 +46,10 @@
this.menuRemoveDuplicateServer = new System.Windows.Forms.ToolStripMenuItem(); this.menuRemoveDuplicateServer = new System.Windows.Forms.ToolStripMenuItem();
this.menuCopyServer = new System.Windows.Forms.ToolStripMenuItem(); this.menuCopyServer = new System.Windows.Forms.ToolStripMenuItem();
this.menuSetDefaultServer = new System.Windows.Forms.ToolStripMenuItem(); this.menuSetDefaultServer = new System.Windows.Forms.ToolStripMenuItem();
this.menuServerFilter = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.menuMoveToGroup = new System.Windows.Forms.ToolStripMenuItem(); this.menuMoveToGroup = new System.Windows.Forms.ToolStripMenuItem();
this.menuMoveEvent = new System.Windows.Forms.ToolStripMenuItem();
this.menuMoveTop = new System.Windows.Forms.ToolStripMenuItem(); this.menuMoveTop = new System.Windows.Forms.ToolStripMenuItem();
this.menuMoveUp = new System.Windows.Forms.ToolStripMenuItem(); this.menuMoveUp = new System.Windows.Forms.ToolStripMenuItem();
this.menuMoveDown = new System.Windows.Forms.ToolStripMenuItem(); this.menuMoveDown = new System.Windows.Forms.ToolStripMenuItem();
@@ -65,11 +67,11 @@
this.menuExport2ServerConfig = new System.Windows.Forms.ToolStripMenuItem(); this.menuExport2ServerConfig = new System.Windows.Forms.ToolStripMenuItem();
this.menuExport2ShareUrl = new System.Windows.Forms.ToolStripMenuItem(); this.menuExport2ShareUrl = new System.Windows.Forms.ToolStripMenuItem();
this.menuExport2SubContent = new System.Windows.Forms.ToolStripMenuItem(); this.menuExport2SubContent = new System.Windows.Forms.ToolStripMenuItem();
this.tsbServer = new System.Windows.Forms.ToolStripDropDownButton();
this.tabGroup = new System.Windows.Forms.TabControl(); this.tabGroup = new System.Windows.Forms.TabControl();
this.qrCodeControl = new v2rayN.Forms.QRCodeControl(); this.qrCodeControl = new v2rayN.Forms.QRCodeControl();
this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.tsbServer = new System.Windows.Forms.ToolStripDropDownButton();
this.groupBox1 = new System.Windows.Forms.GroupBox(); this.scBig = new System.Windows.Forms.SplitContainer();
this.gbServers = new System.Windows.Forms.GroupBox();
this.mainMsgControl = new v2rayN.Forms.MainMsgControl(); this.mainMsgControl = new v2rayN.Forms.MainMsgControl();
this.notifyMain = new System.Windows.Forms.NotifyIcon(this.components); this.notifyMain = new System.Windows.Forms.NotifyIcon(this.components);
this.cmsMain = new System.Windows.Forms.ContextMenuStrip(this.components); this.cmsMain = new System.Windows.Forms.ContextMenuStrip(this.components);
@@ -121,35 +123,35 @@
this.tsbPromotion = new System.Windows.Forms.ToolStripButton(); this.tsbPromotion = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator();
this.tsbClose = new System.Windows.Forms.ToolStripButton(); this.tsbClose = new System.Windows.Forms.ToolStripButton();
((System.ComponentModel.ISupportInitialize)(this.scMain)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.scServers)).BeginInit();
this.scMain.Panel1.SuspendLayout(); this.scServers.Panel1.SuspendLayout();
this.scMain.Panel2.SuspendLayout(); this.scServers.Panel2.SuspendLayout();
this.scMain.SuspendLayout(); this.scServers.SuspendLayout();
this.cmsLv.SuspendLayout(); this.cmsLv.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.scBig)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout(); this.scBig.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout(); this.scBig.Panel2.SuspendLayout();
this.splitContainer1.SuspendLayout(); this.scBig.SuspendLayout();
this.groupBox1.SuspendLayout(); this.gbServers.SuspendLayout();
this.cmsMain.SuspendLayout(); this.cmsMain.SuspendLayout();
this.tsMain.SuspendLayout(); this.tsMain.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// scMain // scServers
// //
resources.ApplyResources(this.scMain, "scMain"); resources.ApplyResources(this.scServers, "scServers");
this.scMain.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; this.scServers.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
this.scMain.Name = "scMain"; this.scServers.Name = "scServers";
// //
// scMain.Panel1 // scServers.Panel1
// //
this.scMain.Panel1.Controls.Add(this.lvServers); this.scServers.Panel1.Controls.Add(this.lvServers);
this.scMain.Panel1.Controls.Add(this.tabGroup); this.scServers.Panel1.Controls.Add(this.tabGroup);
// //
// scMain.Panel2 // scServers.Panel2
// //
this.scMain.Panel2.Controls.Add(this.qrCodeControl); this.scServers.Panel2.Controls.Add(this.qrCodeControl);
this.scMain.TabStop = false; this.scServers.TabStop = false;
// //
// lvServers // lvServers
// //
@@ -188,12 +190,10 @@
this.menuRemoveDuplicateServer, this.menuRemoveDuplicateServer,
this.menuCopyServer, this.menuCopyServer,
this.menuSetDefaultServer, this.menuSetDefaultServer,
this.menuServerFilter,
this.toolStripSeparator3, this.toolStripSeparator3,
this.menuMoveToGroup, this.menuMoveToGroup,
this.menuMoveTop, this.menuMoveEvent,
this.menuMoveUp,
this.menuMoveDown,
this.menuMoveBottom,
this.menuSelectAll, this.menuSelectAll,
this.toolStripSeparator9, this.toolStripSeparator9,
this.menuPingServer, this.menuPingServer,
@@ -287,6 +287,12 @@
resources.ApplyResources(this.menuSetDefaultServer, "menuSetDefaultServer"); resources.ApplyResources(this.menuSetDefaultServer, "menuSetDefaultServer");
this.menuSetDefaultServer.Click += new System.EventHandler(this.menuSetDefaultServer_Click); this.menuSetDefaultServer.Click += new System.EventHandler(this.menuSetDefaultServer_Click);
// //
// menuServerFilter
//
this.menuServerFilter.Name = "menuServerFilter";
resources.ApplyResources(this.menuServerFilter, "menuServerFilter");
this.menuServerFilter.Click += new System.EventHandler(this.menuServerFilter_Click);
//
// toolStripSeparator3 // toolStripSeparator3
// //
this.toolStripSeparator3.Name = "toolStripSeparator3"; this.toolStripSeparator3.Name = "toolStripSeparator3";
@@ -298,6 +304,16 @@
resources.ApplyResources(this.menuMoveToGroup, "menuMoveToGroup"); resources.ApplyResources(this.menuMoveToGroup, "menuMoveToGroup");
this.menuMoveToGroup.Click += new System.EventHandler(this.menuMoveToGroup_Click); this.menuMoveToGroup.Click += new System.EventHandler(this.menuMoveToGroup_Click);
// //
// menuMoveEvent
//
this.menuMoveEvent.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuMoveTop,
this.menuMoveUp,
this.menuMoveDown,
this.menuMoveBottom});
this.menuMoveEvent.Name = "menuMoveEvent";
resources.ApplyResources(this.menuMoveEvent, "menuMoveEvent");
//
// menuMoveTop // menuMoveTop
// //
this.menuMoveTop.Name = "menuMoveTop"; this.menuMoveTop.Name = "menuMoveTop";
@@ -398,13 +414,6 @@
resources.ApplyResources(this.menuExport2SubContent, "menuExport2SubContent"); resources.ApplyResources(this.menuExport2SubContent, "menuExport2SubContent");
this.menuExport2SubContent.Click += new System.EventHandler(this.menuExport2SubContent_Click); this.menuExport2SubContent.Click += new System.EventHandler(this.menuExport2SubContent_Click);
// //
// tsbServer
//
this.tsbServer.DropDown = this.cmsLv;
this.tsbServer.Image = global::v2rayN.Properties.Resources.server;
resources.ApplyResources(this.tsbServer, "tsbServer");
this.tsbServer.Name = "tsbServer";
//
// tabGroup // tabGroup
// //
resources.ApplyResources(this.tabGroup, "tabGroup"); resources.ApplyResources(this.tabGroup, "tabGroup");
@@ -417,25 +426,32 @@
resources.ApplyResources(this.qrCodeControl, "qrCodeControl"); resources.ApplyResources(this.qrCodeControl, "qrCodeControl");
this.qrCodeControl.Name = "qrCodeControl"; this.qrCodeControl.Name = "qrCodeControl";
// //
// splitContainer1 // tsbServer
// //
resources.ApplyResources(this.splitContainer1, "splitContainer1"); this.tsbServer.DropDown = this.cmsLv;
this.splitContainer1.Name = "splitContainer1"; this.tsbServer.Image = global::v2rayN.Properties.Resources.server;
resources.ApplyResources(this.tsbServer, "tsbServer");
this.tsbServer.Name = "tsbServer";
// //
// splitContainer1.Panel1 // scBig
// //
this.splitContainer1.Panel1.Controls.Add(this.groupBox1); resources.ApplyResources(this.scBig, "scBig");
this.scBig.Name = "scBig";
// //
// splitContainer1.Panel2 // scBig.Panel1
// //
this.splitContainer1.Panel2.Controls.Add(this.mainMsgControl); this.scBig.Panel1.Controls.Add(this.gbServers);
// //
// groupBox1 // scBig.Panel2
// //
this.groupBox1.Controls.Add(this.scMain); this.scBig.Panel2.Controls.Add(this.mainMsgControl);
resources.ApplyResources(this.groupBox1, "groupBox1"); //
this.groupBox1.Name = "groupBox1"; // gbServers
this.groupBox1.TabStop = false; //
this.gbServers.Controls.Add(this.scServers);
resources.ApplyResources(this.gbServers, "gbServers");
this.gbServers.Name = "gbServers";
this.gbServers.TabStop = false;
// //
// mainMsgControl // mainMsgControl
// //
@@ -796,7 +812,7 @@
// //
resources.ApplyResources(this, "$this"); resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.splitContainer1); this.Controls.Add(this.scBig);
this.Controls.Add(this.panel1); this.Controls.Add(this.panel1);
this.Controls.Add(this.tsMain); this.Controls.Add(this.tsMain);
this.MaximizeBox = true; this.MaximizeBox = true;
@@ -807,16 +823,16 @@
this.Shown += new System.EventHandler(this.MainForm_Shown); this.Shown += new System.EventHandler(this.MainForm_Shown);
this.VisibleChanged += new System.EventHandler(this.MainForm_VisibleChanged); this.VisibleChanged += new System.EventHandler(this.MainForm_VisibleChanged);
this.Resize += new System.EventHandler(this.MainForm_Resize); this.Resize += new System.EventHandler(this.MainForm_Resize);
this.scMain.Panel1.ResumeLayout(false); this.scServers.Panel1.ResumeLayout(false);
this.scMain.Panel2.ResumeLayout(false); this.scServers.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.scMain)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.scServers)).EndInit();
this.scMain.ResumeLayout(false); this.scServers.ResumeLayout(false);
this.cmsLv.ResumeLayout(false); this.cmsLv.ResumeLayout(false);
this.splitContainer1.Panel1.ResumeLayout(false); this.scBig.Panel1.ResumeLayout(false);
this.splitContainer1.Panel2.ResumeLayout(false); this.scBig.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.scBig)).EndInit();
this.splitContainer1.ResumeLayout(false); this.scBig.ResumeLayout(false);
this.groupBox1.ResumeLayout(false); this.gbServers.ResumeLayout(false);
this.cmsMain.ResumeLayout(false); this.cmsMain.ResumeLayout(false);
this.tsMain.ResumeLayout(false); this.tsMain.ResumeLayout(false);
this.tsMain.PerformLayout(); this.tsMain.PerformLayout();
@@ -827,7 +843,7 @@
#endregion #endregion
private System.Windows.Forms.GroupBox groupBox1; private System.Windows.Forms.GroupBox gbServers;
private v2rayN.Base.ListViewFlickerFree lvServers; private v2rayN.Base.ListViewFlickerFree lvServers;
private System.Windows.Forms.NotifyIcon notifyMain; private System.Windows.Forms.NotifyIcon notifyMain;
private System.Windows.Forms.ContextMenuStrip cmsMain; private System.Windows.Forms.ContextMenuStrip cmsMain;
@@ -851,10 +867,6 @@
private System.Windows.Forms.ToolStripSeparator toolStripSeparator5; private System.Windows.Forms.ToolStripSeparator toolStripSeparator5;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator6; private System.Windows.Forms.ToolStripSeparator toolStripSeparator6;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator7; private System.Windows.Forms.ToolStripSeparator toolStripSeparator7;
private System.Windows.Forms.ToolStripMenuItem menuMoveTop;
private System.Windows.Forms.ToolStripMenuItem menuMoveUp;
private System.Windows.Forms.ToolStripMenuItem menuMoveDown;
private System.Windows.Forms.ToolStripMenuItem menuMoveBottom;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator9; private System.Windows.Forms.ToolStripSeparator toolStripSeparator9;
private System.Windows.Forms.ToolStripMenuItem menuSysAgentMode; private System.Windows.Forms.ToolStripMenuItem menuSysAgentMode;
private System.Windows.Forms.ToolStripMenuItem menuGlobal; private System.Windows.Forms.ToolStripMenuItem menuGlobal;
@@ -862,7 +874,7 @@
private System.Windows.Forms.ToolStripMenuItem menuAddCustomServer; private System.Windows.Forms.ToolStripMenuItem menuAddCustomServer;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1; private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripMenuItem menuAddShadowsocksServer; private System.Windows.Forms.ToolStripMenuItem menuAddShadowsocksServer;
private System.Windows.Forms.SplitContainer scMain; private System.Windows.Forms.SplitContainer scServers;
private QRCodeControl qrCodeControl; private QRCodeControl qrCodeControl;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator10; private System.Windows.Forms.ToolStripSeparator toolStripSeparator10;
private System.Windows.Forms.ToolStripDropDownButton tsbCheckUpdate; private System.Windows.Forms.ToolStripDropDownButton tsbCheckUpdate;
@@ -910,7 +922,7 @@
private System.Windows.Forms.ToolStripMenuItem tsbBackupGuiNConfig; private System.Windows.Forms.ToolStripMenuItem tsbBackupGuiNConfig;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator15; private System.Windows.Forms.ToolStripSeparator toolStripSeparator15;
private System.Windows.Forms.ToolStripMenuItem tsbCheckUpdateGeo; private System.Windows.Forms.ToolStripMenuItem tsbCheckUpdateGeo;
private System.Windows.Forms.SplitContainer splitContainer1; private System.Windows.Forms.SplitContainer scBig;
private System.Windows.Forms.ToolStripMenuItem tsbSubUpdateViaProxy; private System.Windows.Forms.ToolStripMenuItem tsbSubUpdateViaProxy;
private System.Windows.Forms.ToolStripMenuItem menuUpdateSubViaProxy; private System.Windows.Forms.ToolStripMenuItem menuUpdateSubViaProxy;
private System.Windows.Forms.ToolStripMenuItem tsbGlobalHotkeySetting; private System.Windows.Forms.ToolStripMenuItem tsbGlobalHotkeySetting;
@@ -918,6 +930,12 @@
private System.Windows.Forms.ToolStripMenuItem tsbGroupSetting; private System.Windows.Forms.ToolStripMenuItem tsbGroupSetting;
private System.Windows.Forms.ToolStripMenuItem menuMoveToGroup; private System.Windows.Forms.ToolStripMenuItem menuMoveToGroup;
private MainMsgControl mainMsgControl; private MainMsgControl mainMsgControl;
private System.Windows.Forms.ToolStripMenuItem menuMoveEvent;
private System.Windows.Forms.ToolStripMenuItem menuMoveTop;
private System.Windows.Forms.ToolStripMenuItem menuMoveUp;
private System.Windows.Forms.ToolStripMenuItem menuMoveDown;
private System.Windows.Forms.ToolStripMenuItem menuMoveBottom;
private System.Windows.Forms.ToolStripMenuItem menuServerFilter;
} }
} }

View File

@@ -21,6 +21,7 @@ namespace v2rayN.Forms
private StatisticsHandler statistics = null; private StatisticsHandler statistics = null;
private List<VmessItem> lstVmess = null; private List<VmessItem> lstVmess = null;
private string groupId = string.Empty; private string groupId = string.Empty;
private string serverFilter = string.Empty;
#region Window #region Window
@@ -149,7 +150,7 @@ namespace v2rayN.Forms
private void RestoreUI() private void RestoreUI()
{ {
scMain.Panel2Collapsed = true; scServers.Panel2Collapsed = true;
if (!config.uiItem.mainLocation.IsEmpty) if (!config.uiItem.mainLocation.IsEmpty)
{ {
@@ -212,6 +213,7 @@ namespace v2rayN.Forms
{ {
lstVmess = config.vmess lstVmess = config.vmess
.Where(it => Utils.IsNullOrEmpty(groupId) ? true : it.groupId == groupId) .Where(it => Utils.IsNullOrEmpty(groupId) ? true : it.groupId == groupId)
.Where(it => Utils.IsNullOrEmpty(serverFilter) ? true : it.remarks.Contains(serverFilter))
.OrderBy(it => it.sort) .OrderBy(it => it.sort)
.ToList(); .ToList();
@@ -628,6 +630,9 @@ namespace v2rayN.Forms
case Keys.T: case Keys.T:
menuSpeedServer_Click(null, null); menuSpeedServer_Click(null, null);
break; break;
case Keys.F:
menuServerFilter_Click(null, null);
break;
} }
} }
else else
@@ -717,6 +722,17 @@ namespace v2rayN.Forms
SetDefaultServer(index); SetDefaultServer(index);
} }
private void menuServerFilter_Click(object sender, EventArgs e)
{
var fm = new MsgFilterSetForm();
fm.MsgFilter = serverFilter;
if (fm.ShowDialog() == DialogResult.OK)
{
serverFilter = fm.MsgFilter;
gbServers.Text = string.Format(ResUI.MsgServerTitle, serverFilter);
RefreshServers();
}
}
private void menuPingServer_Click(object sender, EventArgs e) private void menuPingServer_Click(object sender, EventArgs e)
{ {
@@ -1418,7 +1434,7 @@ namespace v2rayN.Forms
private void tsbQRCodeSwitch_CheckedChanged(object sender, EventArgs e) private void tsbQRCodeSwitch_CheckedChanged(object sender, EventArgs e)
{ {
bool bShow = tsbQRCodeSwitch.Checked; bool bShow = tsbQRCodeSwitch.Checked;
scMain.Panel2Collapsed = !bShow; scServers.Panel2Collapsed = !bShow;
} }
#endregion #endregion
@@ -1501,5 +1517,6 @@ namespace v2rayN.Forms
} }
} }
#endregion #endregion
} }
} }

View File

@@ -118,11 +118,11 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="scMain.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="scServers.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="scMain.Location" type="System.Drawing.Point, System.Drawing"> <data name="scServers.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 17</value> <value>3, 17</value>
</data> </data>
<metadata name="cmsLv.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="cmsLv.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@@ -203,6 +203,12 @@
<data name="menuSetDefaultServer.Text" xml:space="preserve"> <data name="menuSetDefaultServer.Text" xml:space="preserve">
<value>Set as active server (Enter)</value> <value>Set as active server (Enter)</value>
</data> </data>
<data name="menuServerFilter.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
</data>
<data name="menuServerFilter.Text" xml:space="preserve">
<value>Set server filter (Ctrl+F)</value>
</data>
<data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing"> <data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing">
<value>352, 6</value> <value>352, 6</value>
</data> </data>
@@ -213,29 +219,35 @@
<value>Move to Group</value> <value>Move to Group</value>
</data> </data>
<data name="menuMoveTop.Size" type="System.Drawing.Size, System.Drawing"> <data name="menuMoveTop.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value> <value>192, 22</value>
</data> </data>
<data name="menuMoveTop.Text" xml:space="preserve"> <data name="menuMoveTop.Text" xml:space="preserve">
<value>Move to top (T)</value> <value>Move to top (T)</value>
</data> </data>
<data name="menuMoveUp.Size" type="System.Drawing.Size, System.Drawing"> <data name="menuMoveUp.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value> <value>192, 22</value>
</data> </data>
<data name="menuMoveUp.Text" xml:space="preserve"> <data name="menuMoveUp.Text" xml:space="preserve">
<value>Up (U)</value> <value>Up (U)</value>
</data> </data>
<data name="menuMoveDown.Size" type="System.Drawing.Size, System.Drawing"> <data name="menuMoveDown.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value> <value>192, 22</value>
</data> </data>
<data name="menuMoveDown.Text" xml:space="preserve"> <data name="menuMoveDown.Text" xml:space="preserve">
<value>Down (D)</value> <value>Down (D)</value>
</data> </data>
<data name="menuMoveBottom.Size" type="System.Drawing.Size, System.Drawing"> <data name="menuMoveBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value> <value>192, 22</value>
</data> </data>
<data name="menuMoveBottom.Text" xml:space="preserve"> <data name="menuMoveBottom.Text" xml:space="preserve">
<value>Move to bottom (B)</value> <value>Move to bottom (B)</value>
</data> </data>
<data name="menuMoveEvent.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
</data>
<data name="menuMoveEvent.Text" xml:space="preserve">
<value>Move to</value>
</data>
<data name="menuSelectAll.Size" type="System.Drawing.Size, System.Drawing"> <data name="menuSelectAll.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value> <value>355, 22</value>
</data> </data>
@@ -309,7 +321,7 @@
<value>Export subscription (base64) share to clipboard</value> <value>Export subscription (base64) share to clipboard</value>
</data> </data>
<data name="cmsLv.Size" type="System.Drawing.Size, System.Drawing"> <data name="cmsLv.Size" type="System.Drawing.Size, System.Drawing">
<value>356, 666</value> <value>356, 622</value>
</data> </data>
<data name="&gt;&gt;cmsLv.Name" xml:space="preserve"> <data name="&gt;&gt;cmsLv.Name" xml:space="preserve">
<value>cmsLv</value> <value>cmsLv</value>
@@ -354,7 +366,7 @@
<value>v2rayN.Base.ListViewFlickerFree, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value> <value>v2rayN.Base.ListViewFlickerFree, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;lvServers.Parent" xml:space="preserve"> <data name="&gt;&gt;lvServers.Parent" xml:space="preserve">
<value>scMain.Panel1</value> <value>scServers.Panel1</value>
</data> </data>
<data name="&gt;&gt;lvServers.ZOrder" xml:space="preserve"> <data name="&gt;&gt;lvServers.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
@@ -378,21 +390,21 @@
<value>System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;tabGroup.Parent" xml:space="preserve"> <data name="&gt;&gt;tabGroup.Parent" xml:space="preserve">
<value>scMain.Panel1</value> <value>scServers.Panel1</value>
</data> </data>
<data name="&gt;&gt;tabGroup.ZOrder" xml:space="preserve"> <data name="&gt;&gt;tabGroup.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel1.Name" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel1.Name" xml:space="preserve">
<value>scMain.Panel1</value> <value>scServers.Panel1</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel1.Type" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel1.Type" xml:space="preserve">
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel1.Parent" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel1.Parent" xml:space="preserve">
<value>scMain</value> <value>scServers</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel1.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="qrCodeControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="qrCodeControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
@@ -417,45 +429,45 @@
<value>v2rayN.Forms.QRCodeControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value> <value>v2rayN.Forms.QRCodeControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;qrCodeControl.Parent" xml:space="preserve"> <data name="&gt;&gt;qrCodeControl.Parent" xml:space="preserve">
<value>scMain.Panel2</value> <value>scServers.Panel2</value>
</data> </data>
<data name="&gt;&gt;qrCodeControl.ZOrder" xml:space="preserve"> <data name="&gt;&gt;qrCodeControl.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel2.Name" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel2.Name" xml:space="preserve">
<value>scMain.Panel2</value> <value>scServers.Panel2</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel2.Type" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel2.Parent" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel2.Parent" xml:space="preserve">
<value>scMain</value> <value>scServers</value>
</data> </data>
<data name="&gt;&gt;scMain.Panel2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;scServers.Panel2.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="scMain.Panel2MinSize" type="System.Int32, mscorlib"> <data name="scServers.Panel2MinSize" type="System.Int32, mscorlib">
<value>100</value> <value>100</value>
</data> </data>
<data name="scMain.Size" type="System.Drawing.Size, System.Drawing"> <data name="scServers.Size" type="System.Drawing.Size, System.Drawing">
<value>946, 280</value> <value>946, 280</value>
</data> </data>
<data name="scMain.SplitterDistance" type="System.Int32, mscorlib"> <data name="scServers.SplitterDistance" type="System.Int32, mscorlib">
<value>686</value> <value>686</value>
</data> </data>
<data name="scMain.TabIndex" type="System.Int32, mscorlib"> <data name="scServers.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;scMain.Name" xml:space="preserve"> <data name="&gt;&gt;scServers.Name" xml:space="preserve">
<value>scMain</value> <value>scServers</value>
</data> </data>
<data name="&gt;&gt;scMain.Type" xml:space="preserve"> <data name="&gt;&gt;scServers.Type" xml:space="preserve">
<value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;scMain.Parent" xml:space="preserve"> <data name="&gt;&gt;scServers.Parent" xml:space="preserve">
<value>groupBox1</value> <value>gbServers</value>
</data> </data>
<data name="&gt;&gt;scMain.ZOrder" xml:space="preserve"> <data name="&gt;&gt;scServers.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="tsbServer.ImageTransparentColor" type="System.Drawing.Color, System.Drawing"> <data name="tsbServer.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
@@ -470,49 +482,49 @@
<data name="tsbServer.TextImageRelation" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms"> <data name="tsbServer.TextImageRelation" type="System.Windows.Forms.TextImageRelation, System.Windows.Forms">
<value>ImageAboveText</value> <value>ImageAboveText</value>
</data> </data>
<data name="splitContainer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="scBig.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="splitContainer1.Location" type="System.Drawing.Point, System.Drawing"> <data name="scBig.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 66</value> <value>0, 66</value>
</data> </data>
<data name="splitContainer1.Orientation" type="System.Windows.Forms.Orientation, System.Windows.Forms"> <data name="scBig.Orientation" type="System.Windows.Forms.Orientation, System.Windows.Forms">
<value>Horizontal</value> <value>Horizontal</value>
</data> </data>
<data name="groupBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="gbServers.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing"> <data name="gbServers.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing"> <data name="gbServers.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 300</value> <value>952, 300</value>
</data> </data>
<data name="groupBox1.TabIndex" type="System.Int32, mscorlib"> <data name="gbServers.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;groupBox1.Name" xml:space="preserve"> <data name="&gt;&gt;gbServers.Name" xml:space="preserve">
<value>groupBox1</value> <value>gbServers</value>
</data> </data>
<data name="&gt;&gt;groupBox1.Type" xml:space="preserve"> <data name="&gt;&gt;gbServers.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;groupBox1.Parent" xml:space="preserve"> <data name="&gt;&gt;gbServers.Parent" xml:space="preserve">
<value>splitContainer1.Panel1</value> <value>scBig.Panel1</value>
</data> </data>
<data name="&gt;&gt;groupBox1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;gbServers.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel1.Name" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel1.Name" xml:space="preserve">
<value>splitContainer1.Panel1</value> <value>scBig.Panel1</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel1.Type" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel1.Type" xml:space="preserve">
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel1.Parent" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel1.Parent" xml:space="preserve">
<value>splitContainer1</value> <value>scBig</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel1.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="mainMsgControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="mainMsgControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
@@ -534,42 +546,42 @@
<value>v2rayN.Forms.MainMsgControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value> <value>v2rayN.Forms.MainMsgControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;mainMsgControl.Parent" xml:space="preserve"> <data name="&gt;&gt;mainMsgControl.Parent" xml:space="preserve">
<value>splitContainer1.Panel2</value> <value>scBig.Panel2</value>
</data> </data>
<data name="&gt;&gt;mainMsgControl.ZOrder" xml:space="preserve"> <data name="&gt;&gt;mainMsgControl.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel2.Name" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel2.Name" xml:space="preserve">
<value>splitContainer1.Panel2</value> <value>scBig.Panel2</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel2.Type" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel2.Parent" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel2.Parent" xml:space="preserve">
<value>splitContainer1</value> <value>scBig</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Panel2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;scBig.Panel2.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="splitContainer1.Size" type="System.Drawing.Size, System.Drawing"> <data name="scBig.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 527</value> <value>952, 527</value>
</data> </data>
<data name="splitContainer1.SplitterDistance" type="System.Int32, mscorlib"> <data name="scBig.SplitterDistance" type="System.Int32, mscorlib">
<value>300</value> <value>300</value>
</data> </data>
<data name="splitContainer1.TabIndex" type="System.Int32, mscorlib"> <data name="scBig.TabIndex" type="System.Int32, mscorlib">
<value>5</value> <value>5</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Name" xml:space="preserve"> <data name="&gt;&gt;scBig.Name" xml:space="preserve">
<value>splitContainer1</value> <value>scBig</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Type" xml:space="preserve"> <data name="&gt;&gt;scBig.Type" xml:space="preserve">
<value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.Parent" xml:space="preserve"> <data name="&gt;&gt;scBig.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
</data> </data>
<data name="&gt;&gt;splitContainer1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;scBig.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<metadata name="notifyMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="notifyMain.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@@ -945,7 +957,7 @@
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>90</value> <value>64</value>
</metadata> </metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 12</value> <value>6, 12</value>
@@ -1037,6 +1049,12 @@
<data name="&gt;&gt;menuSetDefaultServer.Type" xml:space="preserve"> <data name="&gt;&gt;menuSetDefaultServer.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;menuServerFilter.Name" xml:space="preserve">
<value>menuServerFilter</value>
</data>
<data name="&gt;&gt;menuServerFilter.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;toolStripSeparator3.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator3.Name" xml:space="preserve">
<value>toolStripSeparator3</value> <value>toolStripSeparator3</value>
</data> </data>
@@ -1049,6 +1067,12 @@
<data name="&gt;&gt;menuMoveToGroup.Type" xml:space="preserve"> <data name="&gt;&gt;menuMoveToGroup.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;menuMoveEvent.Name" xml:space="preserve">
<value>menuMoveEvent</value>
</data>
<data name="&gt;&gt;menuMoveEvent.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;menuMoveTop.Name" xml:space="preserve"> <data name="&gt;&gt;menuMoveTop.Name" xml:space="preserve">
<value>menuMoveTop</value> <value>menuMoveTop</value>
</data> </data>

View File

@@ -555,4 +555,10 @@
<data name="menuMoveToGroup.Text" xml:space="preserve"> <data name="menuMoveToGroup.Text" xml:space="preserve">
<value>移至分组</value> <value>移至分组</value>
</data> </data>
<data name="menuMoveEvent.Text" xml:space="preserve">
<value>上下移至</value>
</data>
<data name="menuServerFilter.Text" xml:space="preserve">
<value>设置服务器过滤器 (Ctrl+F)</value>
</data>
</root> </root>

View File

@@ -183,6 +183,7 @@ namespace v2rayN.Forms
{ {
var fm = new MsgFilterSetForm(); var fm = new MsgFilterSetForm();
fm.MsgFilter = MsgFilter; fm.MsgFilter = MsgFilter;
fm.ShowDefFilter = true;
if (fm.ShowDialog() == DialogResult.OK) if (fm.ShowDialog() == DialogResult.OK)
{ {
MsgFilter = fm.MsgFilter; MsgFilter = fm.MsgFilter;

View File

@@ -30,12 +30,13 @@
{ {
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MsgFilterSetForm)); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MsgFilterSetForm));
this.groupBox1 = new System.Windows.Forms.GroupBox(); this.groupBox1 = new System.Windows.Forms.GroupBox();
this.btnFilderProxy = new System.Windows.Forms.Button();
this.btnFilterDirect = new System.Windows.Forms.Button();
this.txtMsgFilter = new System.Windows.Forms.TextBox(); this.txtMsgFilter = new System.Windows.Forms.TextBox();
this.panel2 = new System.Windows.Forms.Panel(); this.panel2 = new System.Windows.Forms.Panel();
this.btnClose = new System.Windows.Forms.Button(); this.btnClose = new System.Windows.Forms.Button();
this.btnOK = new System.Windows.Forms.Button(); this.btnOK = new System.Windows.Forms.Button();
this.btnFilterDirect = new System.Windows.Forms.Button(); this.btnClear = new System.Windows.Forms.Button();
this.btnFilderProxy = new System.Windows.Forms.Button();
this.groupBox1.SuspendLayout(); this.groupBox1.SuspendLayout();
this.panel2.SuspendLayout(); this.panel2.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
@@ -49,6 +50,20 @@
this.groupBox1.Name = "groupBox1"; this.groupBox1.Name = "groupBox1";
this.groupBox1.TabStop = false; this.groupBox1.TabStop = false;
// //
// btnFilderProxy
//
resources.ApplyResources(this.btnFilderProxy, "btnFilderProxy");
this.btnFilderProxy.Name = "btnFilderProxy";
this.btnFilderProxy.UseVisualStyleBackColor = true;
this.btnFilderProxy.Click += new System.EventHandler(this.btnFilderProxy_Click);
//
// btnFilterDirect
//
resources.ApplyResources(this.btnFilterDirect, "btnFilterDirect");
this.btnFilterDirect.Name = "btnFilterDirect";
this.btnFilterDirect.UseVisualStyleBackColor = true;
this.btnFilterDirect.Click += new System.EventHandler(this.btnFilterDirect_Click);
//
// txtMsgFilter // txtMsgFilter
// //
resources.ApplyResources(this.txtMsgFilter, "txtMsgFilter"); resources.ApplyResources(this.txtMsgFilter, "txtMsgFilter");
@@ -56,6 +71,7 @@
// //
// panel2 // panel2
// //
this.panel2.Controls.Add(this.btnClear);
this.panel2.Controls.Add(this.btnClose); this.panel2.Controls.Add(this.btnClose);
this.panel2.Controls.Add(this.btnOK); this.panel2.Controls.Add(this.btnOK);
resources.ApplyResources(this.panel2, "panel2"); resources.ApplyResources(this.panel2, "panel2");
@@ -76,24 +92,18 @@
this.btnOK.UseVisualStyleBackColor = true; this.btnOK.UseVisualStyleBackColor = true;
this.btnOK.Click += new System.EventHandler(this.btnOK_Click); this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
// //
// btnFilterDirect // btnClear
// //
resources.ApplyResources(this.btnFilterDirect, "btnFilterDirect"); resources.ApplyResources(this.btnClear, "btnClear");
this.btnFilterDirect.Name = "btnFilterDirect"; this.btnClear.Name = "btnClear";
this.btnFilterDirect.UseVisualStyleBackColor = true; this.btnClear.UseVisualStyleBackColor = true;
this.btnFilterDirect.Click += new System.EventHandler(this.btnFilterDirect_Click); this.btnClear.Click += new System.EventHandler(this.btnClear_Click);
//
// btnFilderProxy
//
resources.ApplyResources(this.btnFilderProxy, "btnFilderProxy");
this.btnFilderProxy.Name = "btnFilderProxy";
this.btnFilderProxy.UseVisualStyleBackColor = true;
this.btnFilderProxy.Click += new System.EventHandler(this.btnFilderProxy_Click);
// //
// MsgFilterSetForm // MsgFilterSetForm
// //
resources.ApplyResources(this, "$this"); resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btnClose;
this.Controls.Add(this.groupBox1); this.Controls.Add(this.groupBox1);
this.Controls.Add(this.panel2); this.Controls.Add(this.panel2);
this.Name = "MsgFilterSetForm"; this.Name = "MsgFilterSetForm";
@@ -114,5 +124,6 @@
private System.Windows.Forms.Button btnOK; private System.Windows.Forms.Button btnOK;
private System.Windows.Forms.Button btnFilderProxy; private System.Windows.Forms.Button btnFilderProxy;
private System.Windows.Forms.Button btnFilterDirect; private System.Windows.Forms.Button btnFilterDirect;
private System.Windows.Forms.Button btnClear;
} }
} }

View File

@@ -13,6 +13,7 @@ namespace v2rayN.Forms
public partial class MsgFilterSetForm : BaseForm public partial class MsgFilterSetForm : BaseForm
{ {
public string MsgFilter { get; set; } public string MsgFilter { get; set; }
public bool ShowDefFilter { get; set; }
public MsgFilterSetForm() public MsgFilterSetForm()
{ {
@@ -22,6 +23,8 @@ namespace v2rayN.Forms
private void MsgFilterSetForm_Load(object sender, EventArgs e) private void MsgFilterSetForm_Load(object sender, EventArgs e)
{ {
txtMsgFilter.Text = MsgFilter; txtMsgFilter.Text = MsgFilter;
btnFilderProxy.Visible =
btnFilterDirect.Visible = ShowDefFilter;
} }
private void btnOK_Click(object sender, EventArgs e) private void btnOK_Click(object sender, EventArgs e)
@@ -44,5 +47,11 @@ namespace v2rayN.Forms
{ {
txtMsgFilter.Text = "^(?!.*direct).*$"; txtMsgFilter.Text = "^(?!.*direct).*$";
} }
private void btnClear_Click(object sender, EventArgs e)
{
MsgFilter = string.Empty;
this.DialogResult = DialogResult.OK;
}
} }
} }

View File

@@ -117,14 +117,78 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="&gt;&gt;btnFilderProxy.Name" xml:space="preserve">
<value>btnFilderProxy</value>
</data>
<data name="&gt;&gt;btnFilderProxy.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnFilderProxy.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;btnFilderProxy.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;btnFilterDirect.Name" xml:space="preserve">
<value>btnFilterDirect</value>
</data>
<data name="&gt;&gt;btnFilterDirect.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnFilterDirect.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;btnFilterDirect.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;txtMsgFilter.Name" xml:space="preserve">
<value>txtMsgFilter</value>
</data>
<data name="&gt;&gt;txtMsgFilter.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtMsgFilter.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;txtMsgFilter.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="groupBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>490, 76</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="groupBox1.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>Filter</value>
</data>
<data name="&gt;&gt;groupBox1.Name" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;groupBox1.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;groupBox1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;groupBox1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnFilderProxy.Location" type="System.Drawing.Point, System.Drawing"> <data name="btnFilderProxy.Location" type="System.Drawing.Point, System.Drawing">
<value>157, 47</value> <value>157, 47</value>
</data> </data>
<data name="btnFilderProxy.Size" type="System.Drawing.Size, System.Drawing"> <data name="btnFilderProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>95, 23</value> <value>95, 23</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="btnFilderProxy.TabIndex" type="System.Int32, mscorlib"> <data name="btnFilderProxy.TabIndex" type="System.Int32, mscorlib">
<value>13</value> <value>13</value>
</data> </data>
@@ -143,7 +207,6 @@
<data name="&gt;&gt;btnFilderProxy.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btnFilderProxy.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="btnFilterDirect.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms"> <data name="btnFilterDirect.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value> <value>NoControl</value>
</data> </data>
@@ -192,81 +255,33 @@
<data name="&gt;&gt;txtMsgFilter.ZOrder" xml:space="preserve"> <data name="&gt;&gt;txtMsgFilter.ZOrder" xml:space="preserve">
<value>2</value> <value>2</value>
</data> </data>
<data name="groupBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="btnClear.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Fill</value> <value>NoControl</value>
</data> </data>
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing"> <data name="btnClear.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value> <value>211, 17</value>
</data> </data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing"> <data name="btnClear.Size" type="System.Drawing.Size, System.Drawing">
<value>490, 76</value> <value>75, 23</value>
</data> </data>
<data name="groupBox1.TabIndex" type="System.Int32, mscorlib"> <data name="btnClear.TabIndex" type="System.Int32, mscorlib">
<value>8</value> <value>14</value>
</data> </data>
<data name="groupBox1.Text" xml:space="preserve"> <data name="btnClear.Text" xml:space="preserve">
<value>Filter</value> <value>Clear</value>
</data> </data>
<data name="&gt;&gt;groupBox1.Name" xml:space="preserve"> <data name="&gt;&gt;btnClear.Name" xml:space="preserve">
<value>groupBox1</value> <value>btnClear</value>
</data> </data>
<data name="&gt;&gt;groupBox1.Type" xml:space="preserve"> <data name="&gt;&gt;btnClear.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;groupBox1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;groupBox1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;btnClose.Name" xml:space="preserve">
<value>btnClose</value>
</data>
<data name="&gt;&gt;btnClose.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;btnClose.Parent" xml:space="preserve"> <data name="&gt;&gt;btnClear.Parent" xml:space="preserve">
<value>panel2</value> <value>panel2</value>
</data> </data>
<data name="&gt;&gt;btnClose.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btnClear.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<data name="&gt;&gt;btnOK.Name" xml:space="preserve">
<value>btnOK</value>
</data>
<data name="&gt;&gt;btnOK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnOK.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
</data>
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 76</value>
</data>
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>490, 60</value>
</data>
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="&gt;&gt;panel2.Name" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="btnClose.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms"> <data name="btnClose.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value> <value>NoControl</value>
</data> </data>
@@ -292,7 +307,7 @@
<value>panel2</value> <value>panel2</value>
</data> </data>
<data name="&gt;&gt;btnClose.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btnClose.ZOrder" xml:space="preserve">
<value>0</value> <value>1</value>
</data> </data>
<data name="btnOK.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms"> <data name="btnOK.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value> <value>NoControl</value>
@@ -319,6 +334,30 @@
<value>panel2</value> <value>panel2</value>
</data> </data>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
</data>
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 76</value>
</data>
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>490, 60</value>
</data>
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="&gt;&gt;panel2.Name" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">

View File

@@ -135,4 +135,7 @@
<data name="btnFilterDirect.Text" xml:space="preserve"> <data name="btnFilterDirect.Text" xml:space="preserve">
<value>过滤Direct</value> <value>过滤Direct</value>
</data> </data>
<data name="btnClear.Text" xml:space="preserve">
<value>清空</value>
</data>
</root> </root>

View File

@@ -254,7 +254,7 @@ namespace v2rayN.Handler
try try
{ {
string fileName = V2rayFindexe(new List<string> { "xray" }); string fileName = V2rayFindexe(new List<string> { "xray", "wv2ray", "v2ray" });
if (fileName == "") return -1; if (fileName == "") return -1;
Process p = new Process Process p = new Process

View File

@@ -32,4 +32,4 @@ using System.Runtime.InteropServices;
// 方法是按如下所示使用“*”: // 方法是按如下所示使用“*”:
//[assembly: AssemblyVersion("1.0.*")] //[assembly: AssemblyVersion("1.0.*")]
//[assembly: AssemblyVersion("1.0.0")] //[assembly: AssemblyVersion("1.0.0")]
[assembly: AssemblyFileVersion("5.23")] [assembly: AssemblyFileVersion("5.24")]

View File

@@ -600,6 +600,15 @@ namespace v2rayN.Resx {
} }
} }
/// <summary>
/// 查找类似 Servers (Filter : {0}) 的本地化字符串。
/// </summary>
internal static string MsgServerTitle {
get {
return ResourceManager.GetString("MsgServerTitle", resourceCulture);
}
}
/// <summary> /// <summary>
/// 查找类似 Simplify PAC Success 的本地化字符串。 /// 查找类似 Simplify PAC Success 的本地化字符串。
/// </summary> /// </summary>

View File

@@ -469,4 +469,7 @@
<data name="LabLocal" xml:space="preserve"> <data name="LabLocal" xml:space="preserve">
<value>Local</value> <value>Local</value>
</data> </data>
<data name="MsgServerTitle" xml:space="preserve">
<value>Servers (Filter : {0})</value>
</data>
</root> </root>

View File

@@ -469,4 +469,7 @@
<data name="LabLocal" xml:space="preserve"> <data name="LabLocal" xml:space="preserve">
<value>本地</value> <value>本地</value>
</data> </data>
<data name="MsgServerTitle" xml:space="preserve">
<value>服务器 (过滤器 : {0})</value>
</data>
</root> </root>

View File

@@ -23,6 +23,7 @@ using Newtonsoft.Json.Linq;
using System.Web; using System.Web;
using log4net; using log4net;
using System.Linq; using System.Linq;
using System.Security.Cryptography;
namespace v2rayN namespace v2rayN
{ {
@@ -397,6 +398,20 @@ namespace v2rayN
{ {
return HttpUtility.UrlDecode(url); return HttpUtility.UrlDecode(url);
} }
public static string GetMD5(string str)
{
var md5 = MD5.Create();
byte[] byteOld = Encoding.UTF8.GetBytes(str);
byte[] byteNew = md5.ComputeHash(byteOld);
StringBuilder sb = new StringBuilder();
foreach (byte b in byteNew)
{
sb.Append(b.ToString("x2"));
}
return sb.ToString();
}
#endregion #endregion
@@ -529,7 +544,13 @@ namespace v2rayN
#region #region
private static string autoRunName = "v2rayNAutoRun"; private static string autoRunName
{
get
{
return $"v2rayNAutoRun_{GetMD5(StartupPath())}";
}
}
private static string autoRunRegPath private static string autoRunRegPath
{ {
get get
@@ -961,7 +982,7 @@ namespace v2rayN
// return path to store temporary files // return path to store temporary files
public static string GetTempPath(string filename = "") public static string GetTempPath(string filename = "")
{ {
string _tempPath = Path.Combine(StartupPath(), "v2ray_win_temp"); string _tempPath = Path.Combine(StartupPath(), "guiTemps");
if (!Directory.Exists(_tempPath)) if (!Directory.Exists(_tempPath))
{ {
Directory.CreateDirectory(_tempPath); Directory.CreateDirectory(_tempPath);

View File

@@ -489,13 +489,13 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Google.Protobuf"> <PackageReference Include="Google.Protobuf">
<Version>3.20.0</Version> <Version>3.21.1</Version>
</PackageReference> </PackageReference>
<PackageReference Include="Grpc.Core"> <PackageReference Include="Grpc.Core">
<Version>2.45.0</Version> <Version>2.46.3</Version>
</PackageReference> </PackageReference>
<PackageReference Include="Grpc.Tools"> <PackageReference Include="Grpc.Tools">
<Version>2.45.0</Version> <Version>2.46.3</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
</PackageReference> </PackageReference>