mirror of
https://github.com/2dust/v2rayN.git
synced 2025-08-24 11:56:55 +00:00
添加更新单个订阅功能
This commit is contained in:
parent
a33e586ff4
commit
5077854a30
8 changed files with 1134 additions and 986 deletions
|
@ -1369,12 +1369,67 @@ namespace v2rayN.Forms
|
||||||
private void tsbSubSetting_Click(object sender, EventArgs e)
|
private void tsbSubSetting_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
SubSettingForm fm = new SubSettingForm();
|
SubSettingForm fm = new SubSettingForm();
|
||||||
|
fm.SubUpdate_Event += new SubUpdate_Delegate(SubUpdate_Single);
|
||||||
if (fm.ShowDialog() == DialogResult.OK)
|
if (fm.ShowDialog() == DialogResult.OK)
|
||||||
{
|
{
|
||||||
RefreshServers();
|
RefreshServers();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public delegate void SubUpdate_Delegate(SubItem item, int index);
|
||||||
|
private void SubUpdate_Single(SubItem item, int index=-1)
|
||||||
|
{
|
||||||
|
if (index == -1) index = config.subItem.IndexOf(item)+1;
|
||||||
|
string id = config.subItem[index - 1].id.TrimEx();
|
||||||
|
string url = config.subItem[index - 1].url.TrimEx();
|
||||||
|
string hashCode = $"{index}->";
|
||||||
|
if (config.subItem[index - 1].enabled == false)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (Utils.IsNullOrEmpty(id) || Utils.IsNullOrEmpty(url))
|
||||||
|
{
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgNoValidSubscription")}");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
DownloadHandle downloadHandle3 = new DownloadHandle();
|
||||||
|
downloadHandle3.UpdateCompleted += (sender2, args) =>
|
||||||
|
{
|
||||||
|
if (args.Success)
|
||||||
|
{
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgGetSubscriptionSuccessfully")}");
|
||||||
|
var result = Utils.Base64Decode(args.Msg);
|
||||||
|
if (Utils.IsNullOrEmpty(result))
|
||||||
|
{
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgSubscriptionDecodingFailed")}");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ConfigHandler.RemoveServerViaSubid(ref config, id);
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgClearSubscription")}");
|
||||||
|
RefreshServers();
|
||||||
|
if (AddBatchServers(result, id) == 0)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgFailedImportSubscription")}");
|
||||||
|
}
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgUpdateSubscriptionEnd")}");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
AppendText(false, args.Msg);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
downloadHandle3.Error += (sender2, args) =>
|
||||||
|
{
|
||||||
|
AppendText(true, args.GetException().Message);
|
||||||
|
};
|
||||||
|
|
||||||
|
downloadHandle3.WebDownloadString(url);
|
||||||
|
AppendText(false, $"{hashCode}{UIRes.I18N("MsgStartGettingSubscriptions")}");
|
||||||
|
}
|
||||||
private void tsbSubUpdate_Click(object sender, EventArgs e)
|
private void tsbSubUpdate_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
AppendText(false, UIRes.I18N("MsgUpdateSubscriptionStart"));
|
AppendText(false, UIRes.I18N("MsgUpdateSubscriptionStart"));
|
||||||
|
@ -1387,56 +1442,57 @@ namespace v2rayN.Forms
|
||||||
|
|
||||||
for (int k = 1; k <= config.subItem.Count; k++)
|
for (int k = 1; k <= config.subItem.Count; k++)
|
||||||
{
|
{
|
||||||
string id = config.subItem[k - 1].id.TrimEx();
|
SubUpdate_Single(config.subItem[k - 1], k);
|
||||||
string url = config.subItem[k - 1].url.TrimEx();
|
//string id = config.subItem[k - 1].id.TrimEx();
|
||||||
string hashCode = $"{k}->";
|
//string url = config.subItem[k - 1].url.TrimEx();
|
||||||
if (config.subItem[k - 1].enabled == false)
|
//string hashCode = $"{k}->";
|
||||||
{
|
//if (config.subItem[k - 1].enabled == false)
|
||||||
continue;
|
//{
|
||||||
}
|
// continue;
|
||||||
if (Utils.IsNullOrEmpty(id) || Utils.IsNullOrEmpty(url))
|
//}
|
||||||
{
|
//if (Utils.IsNullOrEmpty(id) || Utils.IsNullOrEmpty(url))
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgNoValidSubscription")}");
|
//{
|
||||||
continue;
|
// AppendText(false, $"{hashCode}{UIRes.I18N("MsgNoValidSubscription")}");
|
||||||
}
|
// continue;
|
||||||
|
//}
|
||||||
|
|
||||||
DownloadHandle downloadHandle3 = new DownloadHandle();
|
//DownloadHandle downloadHandle3 = new DownloadHandle();
|
||||||
downloadHandle3.UpdateCompleted += (sender2, args) =>
|
//downloadHandle3.UpdateCompleted += (sender2, args) =>
|
||||||
{
|
//{
|
||||||
if (args.Success)
|
// if (args.Success)
|
||||||
{
|
// {
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgGetSubscriptionSuccessfully")}");
|
// AppendText(false, $"{hashCode}{UIRes.I18N("MsgGetSubscriptionSuccessfully")}");
|
||||||
var result = Utils.Base64Decode(args.Msg);
|
// var result = Utils.Base64Decode(args.Msg);
|
||||||
if (Utils.IsNullOrEmpty(result))
|
// if (Utils.IsNullOrEmpty(result))
|
||||||
{
|
// {
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgSubscriptionDecodingFailed")}");
|
// AppendText(false, $"{hashCode}{UIRes.I18N("MsgSubscriptionDecodingFailed")}");
|
||||||
return;
|
// return;
|
||||||
}
|
// }
|
||||||
|
|
||||||
ConfigHandler.RemoveServerViaSubid(ref config, id);
|
// ConfigHandler.RemoveServerViaSubid(ref config, id);
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgClearSubscription")}");
|
// AppendText(false, $"{hashCode}{UIRes.I18N("MsgClearSubscription")}");
|
||||||
RefreshServers();
|
// RefreshServers();
|
||||||
if (AddBatchServers(result, id) == 0)
|
// if (AddBatchServers(result, id) == 0)
|
||||||
{
|
// {
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgFailedImportSubscription")}");
|
// AppendText(false, $"{hashCode}{UIRes.I18N("MsgFailedImportSubscription")}");
|
||||||
}
|
// }
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgUpdateSubscriptionEnd")}");
|
// AppendText(false, $"{hashCode}{UIRes.I18N("MsgUpdateSubscriptionEnd")}");
|
||||||
}
|
// }
|
||||||
else
|
// else
|
||||||
{
|
// {
|
||||||
AppendText(false, args.Msg);
|
// AppendText(false, args.Msg);
|
||||||
}
|
// }
|
||||||
};
|
//};
|
||||||
downloadHandle3.Error += (sender2, args) =>
|
//downloadHandle3.Error += (sender2, args) =>
|
||||||
{
|
//{
|
||||||
AppendText(true, args.GetException().Message);
|
// AppendText(true, args.GetException().Message);
|
||||||
};
|
//};
|
||||||
|
|
||||||
downloadHandle3.WebDownloadString(url);
|
//downloadHandle3.WebDownloadString(url);
|
||||||
AppendText(false, $"{hashCode}{UIRes.I18N("MsgStartGettingSubscriptions")}");
|
//AppendText(false, $"{hashCode}{UIRes.I18N("MsgStartGettingSubscriptions")}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
10
v2rayN/v2rayN/Forms/SubSettingControl.Designer.cs
generated
10
v2rayN/v2rayN/Forms/SubSettingControl.Designer.cs
generated
|
@ -30,6 +30,7 @@
|
||||||
{
|
{
|
||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SubSettingControl));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SubSettingControl));
|
||||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||||
|
this.btnUpdate = new System.Windows.Forms.Button();
|
||||||
this.chkEnabled = new System.Windows.Forms.CheckBox();
|
this.chkEnabled = new System.Windows.Forms.CheckBox();
|
||||||
this.btnRemove = new System.Windows.Forms.Button();
|
this.btnRemove = new System.Windows.Forms.Button();
|
||||||
this.txtUrl = new System.Windows.Forms.TextBox();
|
this.txtUrl = new System.Windows.Forms.TextBox();
|
||||||
|
@ -42,6 +43,7 @@
|
||||||
// groupBox2
|
// groupBox2
|
||||||
//
|
//
|
||||||
resources.ApplyResources(this.groupBox2, "groupBox2");
|
resources.ApplyResources(this.groupBox2, "groupBox2");
|
||||||
|
this.groupBox2.Controls.Add(this.btnUpdate);
|
||||||
this.groupBox2.Controls.Add(this.chkEnabled);
|
this.groupBox2.Controls.Add(this.chkEnabled);
|
||||||
this.groupBox2.Controls.Add(this.btnRemove);
|
this.groupBox2.Controls.Add(this.btnRemove);
|
||||||
this.groupBox2.Controls.Add(this.txtUrl);
|
this.groupBox2.Controls.Add(this.txtUrl);
|
||||||
|
@ -51,6 +53,13 @@
|
||||||
this.groupBox2.Name = "groupBox2";
|
this.groupBox2.Name = "groupBox2";
|
||||||
this.groupBox2.TabStop = false;
|
this.groupBox2.TabStop = false;
|
||||||
//
|
//
|
||||||
|
// btnUpdate
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.btnUpdate, "btnUpdate");
|
||||||
|
this.btnUpdate.Name = "btnUpdate";
|
||||||
|
this.btnUpdate.UseVisualStyleBackColor = true;
|
||||||
|
this.btnUpdate.Click += new System.EventHandler(this.btnUpdate_Click);
|
||||||
|
//
|
||||||
// chkEnabled
|
// chkEnabled
|
||||||
//
|
//
|
||||||
resources.ApplyResources(this.chkEnabled, "chkEnabled");
|
resources.ApplyResources(this.chkEnabled, "chkEnabled");
|
||||||
|
@ -109,5 +118,6 @@
|
||||||
private System.Windows.Forms.Label label3;
|
private System.Windows.Forms.Label label3;
|
||||||
private System.Windows.Forms.Button btnRemove;
|
private System.Windows.Forms.Button btnRemove;
|
||||||
private System.Windows.Forms.CheckBox chkEnabled;
|
private System.Windows.Forms.CheckBox chkEnabled;
|
||||||
|
private System.Windows.Forms.Button btnUpdate;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using v2rayN.Base;
|
using v2rayN.Base;
|
||||||
using v2rayN.Mode;
|
using v2rayN.Mode;
|
||||||
|
using v2rayN.Handler;
|
||||||
|
using static v2rayN.Forms.MainForm;
|
||||||
|
|
||||||
namespace v2rayN.Forms
|
namespace v2rayN.Forms
|
||||||
{
|
{
|
||||||
|
@ -59,5 +61,13 @@ namespace v2rayN.Forms
|
||||||
OnButtonClicked(sender, e);
|
OnButtonClicked(sender, e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public event SubUpdate_Delegate SubUpdate_Event;
|
||||||
|
private void btnUpdate_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (subItem != null)
|
||||||
|
{
|
||||||
|
SubUpdate_Event(subItem, -1);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,28 +124,40 @@
|
||||||
<data name=">>txtUrl.Parent" xml:space="preserve">
|
<data name=">>txtUrl.Parent" xml:space="preserve">
|
||||||
<value>groupBox2</value>
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<data name="txtRemarks.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
<data name="chkEnabled.Size" type="System.Drawing.Size, System.Drawing">
|
<value>4, 4, 4, 4</value>
|
||||||
<value>60, 16</value>
|
</data>
|
||||||
|
<data name=">>btnUpdate.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>txtUrl.Name" xml:space="preserve">
|
<data name=">>txtUrl.Name" xml:space="preserve">
|
||||||
<value>txtUrl</value>
|
<value>txtUrl</value>
|
||||||
</data>
|
</data>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="btnRemove.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>80, 29</value>
|
||||||
|
</data>
|
||||||
<data name="btnRemove.Text" xml:space="preserve">
|
<data name="btnRemove.Text" xml:space="preserve">
|
||||||
<value>&Remove</value>
|
<value>&Remove</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnRemove.Location" type="System.Drawing.Point, System.Drawing">
|
<data name=">>txtRemarks.Name" xml:space="preserve">
|
||||||
<value>484, 21</value>
|
<value>txtRemarks</value>
|
||||||
</data>
|
</data>
|
||||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
<data name="btnRemove.TabIndex" type="System.Int32, mscorlib">
|
<data name="btnRemove.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>24</value>
|
<value>24</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtUrl.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtUrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>432, 46</value>
|
<value>623, 56</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>$this.Name" xml:space="preserve">
|
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
<value>SubSettingControl</value>
|
<value>4, 4, 4, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnRemove.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>4, 4, 4, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnUpdate.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>80, 29</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>txtRemarks.Type" xml:space="preserve">
|
<data name=">>txtRemarks.Type" xml:space="preserve">
|
||||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
@ -157,35 +169,53 @@
|
||||||
<value>groupBox2</value>
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>83, 12</value>
|
<value>111, 15</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>groupBox2.Name" xml:space="preserve">
|
<data name="txtRemarks.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>groupBox2</value>
|
<value>352, 25</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnUpdate.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>26</value>
|
||||||
</data>
|
</data>
|
||||||
<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>8, 15</value>
|
||||||
|
</data>
|
||||||
|
<data name="groupBox2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>4, 4, 4, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>label3.Name" xml:space="preserve">
|
<data name=">>label3.Name" xml:space="preserve">
|
||||||
<value>label3</value>
|
<value>label3</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtRemarks.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="txtRemarks.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>127, 21</value>
|
<value>155, 26</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label3.AutoSize" type="System.Boolean, mscorlib">
|
<data name="label3.AutoSize" type="System.Boolean, mscorlib">
|
||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>label2.Parent" xml:space="preserve">
|
||||||
|
<value>groupBox2</value>
|
||||||
|
</data>
|
||||||
|
<data name="txtUrl.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>4, 4, 4, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkEnabled.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>77, 19</value>
|
||||||
|
</data>
|
||||||
<data name=">>chkEnabled.ZOrder" xml:space="preserve">
|
<data name=">>chkEnabled.ZOrder" xml:space="preserve">
|
||||||
<value>0</value>
|
<value>1</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>12, 55</value>
|
<value>16, 69</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtUrl.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="txtUrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>127, 55</value>
|
<value>155, 69</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label2.TabIndex" type="System.Int32, mscorlib">
|
<data name="label2.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>10</value>
|
<value>10</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>btnUpdate.Name" xml:space="preserve">
|
||||||
|
<value>btnUpdate</value>
|
||||||
|
</data>
|
||||||
<data name="groupBox2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
<data name="groupBox2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||||
<value>Bottom</value>
|
<value>Bottom</value>
|
||||||
</data>
|
</data>
|
||||||
|
@ -193,22 +223,25 @@
|
||||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>txtUrl.ZOrder" xml:space="preserve">
|
<data name=">>txtUrl.ZOrder" xml:space="preserve">
|
||||||
<value>2</value>
|
<value>3</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>chkEnabled.Parent" xml:space="preserve">
|
<data name=">>chkEnabled.Parent" xml:space="preserve">
|
||||||
<value>groupBox2</value>
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>label2.ZOrder" xml:space="preserve">
|
<data name=">>label2.ZOrder" xml:space="preserve">
|
||||||
<value>4</value>
|
<value>5</value>
|
||||||
|
</data>
|
||||||
|
<data name="label2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>4, 0, 4, 0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>47, 12</value>
|
<value>63, 15</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="groupBox2.Text" xml:space="preserve">
|
<data name=">>btnRemove.Name" xml:space="preserve">
|
||||||
<value>Subscription details</value>
|
<value>btnRemove</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="groupBox2.Location" type="System.Drawing.Point, System.Drawing">
|
<data name=">>txtUrl.Type" xml:space="preserve">
|
||||||
<value>0, 9</value>
|
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkEnabled.Text" xml:space="preserve">
|
<data name="chkEnabled.Text" xml:space="preserve">
|
||||||
<value>Enable</value>
|
<value>Enable</value>
|
||||||
|
@ -217,13 +250,22 @@
|
||||||
<value>chkEnabled</value>
|
<value>chkEnabled</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>txtRemarks.ZOrder" xml:space="preserve">
|
<data name=">>txtRemarks.ZOrder" xml:space="preserve">
|
||||||
<value>3</value>
|
<value>4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnRemove.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
<data name="btnRemove.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
<value>NoControl</value>
|
<value>NoControl</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label3.Text" xml:space="preserve">
|
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>Address (url)</value>
|
<value>800, 149</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnRemove.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>612, 24</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>btnRemove.ZOrder" xml:space="preserve">
|
||||||
|
<value>2</value>
|
||||||
|
</data>
|
||||||
|
<data name="label3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>4, 0, 4, 0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkEnabled.TabIndex" type="System.Int32, mscorlib">
|
<data name="chkEnabled.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>25</value>
|
<value>25</value>
|
||||||
|
@ -231,14 +273,17 @@
|
||||||
<data name="txtUrl.TabIndex" type="System.Int32, mscorlib">
|
<data name="txtUrl.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>23</value>
|
<value>23</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>label2.Parent" xml:space="preserve">
|
<data name="chkEnabled.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
<value>groupBox2</value>
|
<value>4, 4, 4, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnUpdate.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
|
<value>NoControl</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>btnRemove.Parent" xml:space="preserve">
|
<data name=">>btnRemove.Parent" xml:space="preserve">
|
||||||
<value>groupBox2</value>
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkEnabled.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="chkEnabled.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>406, 23</value>
|
<value>527, 29</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label2.AutoSize" type="System.Boolean, mscorlib">
|
<data name="label2.AutoSize" type="System.Boolean, mscorlib">
|
||||||
<value>True</value>
|
<value>True</value>
|
||||||
|
@ -246,9 +291,6 @@
|
||||||
<data name="chkEnabled.AutoSize" type="System.Boolean, mscorlib">
|
<data name="chkEnabled.AutoSize" type="System.Boolean, mscorlib">
|
||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>btnRemove.Name" xml:space="preserve">
|
|
||||||
<value>btnRemove</value>
|
|
||||||
</data>
|
|
||||||
<data name="label3.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
<data name="label3.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
<value>NoControl</value>
|
<value>NoControl</value>
|
||||||
</data>
|
</data>
|
||||||
|
@ -258,14 +300,17 @@
|
||||||
<data name=">>groupBox2.Type" xml:space="preserve">
|
<data name=">>groupBox2.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="groupBox2.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="groupBox2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
<value>584, 110</value>
|
<value>4, 4, 4, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>$this.Name" xml:space="preserve">
|
||||||
|
<value>SubSettingControl</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkEnabled.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
<data name="chkEnabled.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
<value>NoControl</value>
|
<value>NoControl</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="groupBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>584, 119</value>
|
<value>800, 138</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtRemarks.TabIndex" type="System.Int32, mscorlib">
|
<data name="txtRemarks.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>11</value>
|
<value>11</value>
|
||||||
|
@ -276,29 +321,38 @@
|
||||||
<data name="label3.TabIndex" type="System.Int32, mscorlib">
|
<data name="label3.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label2.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="btnUpdate.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>12, 25</value>
|
<value>699, 24</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnRemove.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="label2.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>75, 23</value>
|
<value>16, 31</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>groupBox2.Name" xml:space="preserve">
|
||||||
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>label3.Parent" xml:space="preserve">
|
<data name=">>label3.Parent" xml:space="preserve">
|
||||||
<value>groupBox2</value>
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtRemarks.Size" type="System.Drawing.Size, System.Drawing">
|
<data name=">>btnUpdate.ZOrder" xml:space="preserve">
|
||||||
<value>265, 21</value>
|
<value>0</value>
|
||||||
|
</data>
|
||||||
|
<data name="groupBox2.Text" xml:space="preserve">
|
||||||
|
<value>Subscription details</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="groupBox2.TabIndex" type="System.Int32, mscorlib">
|
<data name="groupBox2.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>10</value>
|
<value>10</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>txtUrl.Type" xml:space="preserve">
|
<data name=">>btnUpdate.Parent" xml:space="preserve">
|
||||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>groupBox2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>btnRemove.ZOrder" xml:space="preserve">
|
<data name="groupBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>1</value>
|
<value>0, 11</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>groupBox2.Parent" xml:space="preserve">
|
<data name="label3.Text" xml:space="preserve">
|
||||||
<value>$this</value>
|
<value>Address (url)</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnUpdate.Text" xml:space="preserve">
|
||||||
|
<value>Update</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>btnRemove.Type" xml:space="preserve">
|
<data name=">>btnRemove.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>
|
||||||
|
@ -309,11 +363,11 @@
|
||||||
<data name=">>groupBox2.ZOrder" xml:space="preserve">
|
<data name=">>groupBox2.ZOrder" xml:space="preserve">
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>txtRemarks.Name" xml:space="preserve">
|
<data name=">>groupBox2.Parent" xml:space="preserve">
|
||||||
<value>txtRemarks</value>
|
<value>$this</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>label3.ZOrder" xml:space="preserve">
|
<data name=">>label3.ZOrder" xml:space="preserve">
|
||||||
<value>5</value>
|
<value>6</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>chkEnabled.Type" xml:space="preserve">
|
<data name=">>chkEnabled.Type" xml:space="preserve">
|
||||||
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
|
|
@ -118,23 +118,32 @@
|
||||||
<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.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="btnUpdate.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>685, 24</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnUpdate.Text" xml:space="preserve">
|
||||||
|
<value>更新</value>
|
||||||
|
</data>
|
||||||
<data name="chkEnabled.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="chkEnabled.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>48, 16</value>
|
<value>59, 19</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkEnabled.Text" xml:space="preserve">
|
<data name="chkEnabled.Text" xml:space="preserve">
|
||||||
<value>启用</value>
|
<value>启用</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnRemove.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>594, 24</value>
|
||||||
|
</data>
|
||||||
<data name="btnRemove.Text" xml:space="preserve">
|
<data name="btnRemove.Text" xml:space="preserve">
|
||||||
<value>移除</value>
|
<value>移除</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>29, 12</value>
|
<value>37, 15</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label2.Text" xml:space="preserve">
|
<data name="label2.Text" xml:space="preserve">
|
||||||
<value>备注</value>
|
<value>备注</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>65, 12</value>
|
<value>85, 15</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="label3.Text" xml:space="preserve">
|
<data name="label3.Text" xml:space="preserve">
|
||||||
<value>地址 (url)</value>
|
<value>地址 (url)</value>
|
||||||
|
|
|
@ -3,6 +3,7 @@ using System.Collections.Generic;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using v2rayN.Handler;
|
using v2rayN.Handler;
|
||||||
using v2rayN.Mode;
|
using v2rayN.Mode;
|
||||||
|
using static v2rayN.Forms.MainForm;
|
||||||
|
|
||||||
namespace v2rayN.Forms
|
namespace v2rayN.Forms
|
||||||
{
|
{
|
||||||
|
@ -28,6 +29,7 @@ namespace v2rayN.Forms
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 刷新列表
|
/// 刷新列表
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
public event SubUpdate_Delegate SubUpdate_Event;
|
||||||
private void RefreshSubsView()
|
private void RefreshSubsView()
|
||||||
{
|
{
|
||||||
panCon.Controls.Clear();
|
panCon.Controls.Clear();
|
||||||
|
@ -51,6 +53,7 @@ namespace v2rayN.Forms
|
||||||
{
|
{
|
||||||
var item = config.subItem[k];
|
var item = config.subItem[k];
|
||||||
SubSettingControl control = new SubSettingControl();
|
SubSettingControl control = new SubSettingControl();
|
||||||
|
control.SubUpdate_Event += new SubUpdate_Delegate(SubUpdate_Notice);
|
||||||
control.OnButtonClicked += Control_OnButtonClicked;
|
control.OnButtonClicked += Control_OnButtonClicked;
|
||||||
control.subItem = item;
|
control.subItem = item;
|
||||||
control.Dock = DockStyle.Top;
|
control.Dock = DockStyle.Top;
|
||||||
|
@ -61,7 +64,10 @@ namespace v2rayN.Forms
|
||||||
lstControls.Add(control);
|
lstControls.Add(control);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
private void SubUpdate_Notice(SubItem item, int index)
|
||||||
|
{
|
||||||
|
SubUpdate_Event(item, index);
|
||||||
|
}
|
||||||
private void Control_OnButtonClicked(object sender, EventArgs e)
|
private void Control_OnButtonClicked(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
RefreshSubsView();
|
RefreshSubsView();
|
||||||
|
|
|
@ -157,7 +157,7 @@
|
||||||
<value>0, 0</value>
|
<value>0, 0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="panCon.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="panCon.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>581, 569</value>
|
<value>797, 726</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="panCon.TabIndex" type="System.Int32, mscorlib">
|
<data name="panCon.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>10</value>
|
<value>10</value>
|
||||||
|
@ -232,10 +232,10 @@
|
||||||
<value>Bottom</value>
|
<value>Bottom</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>0, 569</value>
|
<value>0, 726</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>581, 60</value>
|
<value>797, 60</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
|
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>7</value>
|
<value>7</value>
|
||||||
|
@ -256,10 +256,13 @@
|
||||||
<value>True</value>
|
<value>True</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>8, 15</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>581, 629</value>
|
<value>797, 786</value>
|
||||||
|
</data>
|
||||||
|
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>5, 5, 5, 5</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.Text" xml:space="preserve">
|
<data name="$this.Text" xml:space="preserve">
|
||||||
<value>Subscription settings</value>
|
<value>Subscription settings</value>
|
||||||
|
|
Loading…
Reference in a new issue