Add Settings page

Add Page tab order setting
Add Window opacity setting
This commit is contained in:
2023-10-13 22:45:24 +08:00
parent c2be92c41b
commit eda70a2aae
41 changed files with 2169 additions and 745 deletions

View File

@@ -18,13 +18,15 @@
**/
using System.Windows.Forms;
using GrasscutterTools.Properties;
using GrasscutterTools.Utils;
namespace GrasscutterTools.Pages
{
internal partial class PageAbout : BasePage
{
public override string Text => Resources.PageAboutTitle;
public PageAbout()
{
InitializeComponent();

View File

@@ -10,6 +10,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageAchievement : BasePage
{
public override string Text => Resources.PageAchievementTitle;
public PageAchievement()
{
InitializeComponent();

View File

@@ -22,12 +22,15 @@ using System.Linq;
using System.Windows.Forms;
using GrasscutterTools.Game;
using GrasscutterTools.Properties;
using GrasscutterTools.Utils;
namespace GrasscutterTools.Pages
{
internal partial class PageAvatar : BasePage
{
public override string Text => Resources.PageAvatarTitle;
public PageAvatar()
{
InitializeComponent();

View File

@@ -30,6 +30,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageCustomCommands : BasePage
{
public override string Text => Resources.PageCustomCommandsTitle;
public PageCustomCommands()
{
InitializeComponent();

View File

@@ -30,6 +30,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageGiveArtifact : BasePage
{
public override string Text => Resources.PageGetArtifactTitle;
public PageGiveArtifact()
{
InitializeComponent();

View File

@@ -33,6 +33,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageGiveItem : BasePage
{
public override string Text => Resources.PageGiveItemTitle;
public PageGiveItem()
{
InitializeComponent();

View File

@@ -20,12 +20,15 @@
using System;
using GrasscutterTools.Game;
using GrasscutterTools.Properties;
using GrasscutterTools.Utils;
namespace GrasscutterTools.Pages
{
internal partial class PageGiveWeapon : BasePage
{
public override string Text => Resources.PageGiveWeaponTitle;
public PageGiveWeapon()
{
InitializeComponent();

View File

@@ -36,19 +36,15 @@
this.BtnOpenTextMap = new System.Windows.Forms.Button();
this.BtnOpenGachaBannerEditor = new System.Windows.Forms.Button();
this.GrasscutterToolsIcon = new System.Windows.Forms.PictureBox();
this.GrpSettings = new System.Windows.Forms.GroupBox();
this.LblGCVersion = new System.Windows.Forms.Label();
this.CmbGcVersions = new System.Windows.Forms.ComboBox();
this.ChkTopMost = new System.Windows.Forms.CheckBox();
this.BtnActivityEditor = new System.Windows.Forms.Button();
this.LblTip1 = new System.Windows.Forms.Label();
this.LblTip2 = new System.Windows.Forms.Label();
this.LblTip3 = new System.Windows.Forms.Label();
this.LblTip4 = new System.Windows.Forms.Label();
this.LblTip5 = new System.Windows.Forms.Label();
this.CmbLanguage = new System.Windows.Forms.ComboBox();
this.LblLanguage = new System.Windows.Forms.Label();
this.NUDUid = new System.Windows.Forms.NumericUpDown();
this.ChkIncludeUID = new System.Windows.Forms.CheckBox();
this.LblDefaultUid = new System.Windows.Forms.Label();
this.BtnActivityEditor = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.GrasscutterToolsIcon)).BeginInit();
this.GrpSettings.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.NUDUid)).BeginInit();
this.SuspendLayout();
//
// BtnOpenShopEditor
@@ -98,37 +94,42 @@
this.GrasscutterToolsIcon.Name = "GrasscutterToolsIcon";
this.GrasscutterToolsIcon.TabStop = false;
//
// GrpSettings
// BtnActivityEditor
//
resources.ApplyResources(this.GrpSettings, "GrpSettings");
this.GrpSettings.Controls.Add(this.LblGCVersion);
this.GrpSettings.Controls.Add(this.CmbGcVersions);
this.GrpSettings.Controls.Add(this.ChkTopMost);
this.GrpSettings.Controls.Add(this.CmbLanguage);
this.GrpSettings.Controls.Add(this.LblLanguage);
this.GrpSettings.Controls.Add(this.NUDUid);
this.GrpSettings.Controls.Add(this.ChkIncludeUID);
this.GrpSettings.Controls.Add(this.LblDefaultUid);
this.GrpSettings.Name = "GrpSettings";
this.GrpSettings.TabStop = false;
resources.ApplyResources(this.BtnActivityEditor, "BtnActivityEditor");
this.BtnActivityEditor.Name = "BtnActivityEditor";
this.BtnActivityEditor.UseVisualStyleBackColor = true;
this.BtnActivityEditor.Click += new System.EventHandler(this.BtnActivityEditor_Click);
//
// LblGCVersion
// LblTip1
//
resources.ApplyResources(this.LblGCVersion, "LblGCVersion");
this.LblGCVersion.Name = "LblGCVersion";
resources.ApplyResources(this.LblTip1, "LblTip1");
this.LblTip1.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblTip1.Name = "LblTip1";
//
// CmbGcVersions
// LblTip2
//
resources.ApplyResources(this.CmbGcVersions, "CmbGcVersions");
this.CmbGcVersions.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CmbGcVersions.FormattingEnabled = true;
this.CmbGcVersions.Name = "CmbGcVersions";
resources.ApplyResources(this.LblTip2, "LblTip2");
this.LblTip2.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblTip2.Name = "LblTip2";
//
// ChkTopMost
// LblTip3
//
resources.ApplyResources(this.ChkTopMost, "ChkTopMost");
this.ChkTopMost.Name = "ChkTopMost";
this.ChkTopMost.UseVisualStyleBackColor = true;
resources.ApplyResources(this.LblTip3, "LblTip3");
this.LblTip3.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblTip3.Name = "LblTip3";
//
// LblTip4
//
resources.ApplyResources(this.LblTip4, "LblTip4");
this.LblTip4.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblTip4.Name = "LblTip4";
//
// LblTip5
//
resources.ApplyResources(this.LblTip5, "LblTip5");
this.LblTip5.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblTip5.Name = "LblTip5";
//
// CmbLanguage
//
@@ -140,59 +141,30 @@
// LblLanguage
//
resources.ApplyResources(this.LblLanguage, "LblLanguage");
this.LblLanguage.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblLanguage.Name = "LblLanguage";
//
// NUDUid
//
resources.ApplyResources(this.NUDUid, "NUDUid");
this.NUDUid.Maximum = new decimal(new int[] {
2147483647,
0,
0,
0});
this.NUDUid.Name = "NUDUid";
this.NUDUid.Value = new decimal(new int[] {
10001,
0,
0,
0});
//
// ChkIncludeUID
//
resources.ApplyResources(this.ChkIncludeUID, "ChkIncludeUID");
this.ChkIncludeUID.Name = "ChkIncludeUID";
this.ChkIncludeUID.UseVisualStyleBackColor = true;
//
// LblDefaultUid
//
resources.ApplyResources(this.LblDefaultUid, "LblDefaultUid");
this.LblDefaultUid.Name = "LblDefaultUid";
//
// BtnActivityEditor
//
resources.ApplyResources(this.BtnActivityEditor, "BtnActivityEditor");
this.BtnActivityEditor.Name = "BtnActivityEditor";
this.BtnActivityEditor.UseVisualStyleBackColor = true;
this.BtnActivityEditor.Click += new System.EventHandler(this.BtnActivityEditor_Click);
//
// PageHome
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.CmbLanguage);
this.Controls.Add(this.LblLanguage);
this.Controls.Add(this.LblTip5);
this.Controls.Add(this.LblTip4);
this.Controls.Add(this.LblTip3);
this.Controls.Add(this.LblTip2);
this.Controls.Add(this.LblTip1);
this.Controls.Add(this.LnkNewVersion);
this.Controls.Add(this.BtnActivityEditor);
this.Controls.Add(this.LblAbout);
this.Controls.Add(this.BtnOpenTextMap);
this.Controls.Add(this.BtnOpenGachaBannerEditor);
this.Controls.Add(this.BtnOpenDropEditor);
this.Controls.Add(this.BtnOpenShopEditor);
this.Controls.Add(this.GrasscutterToolsIcon);
this.Controls.Add(this.GrpSettings);
this.Controls.Add(this.LnkNewVersion);
this.Controls.Add(this.LblAbout);
this.Name = "PageHome";
((System.ComponentModel.ISupportInitialize)(this.GrasscutterToolsIcon)).EndInit();
this.GrpSettings.ResumeLayout(false);
this.GrpSettings.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.NUDUid)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@@ -207,15 +179,13 @@
private System.Windows.Forms.Button BtnOpenTextMap;
private System.Windows.Forms.Button BtnOpenGachaBannerEditor;
private System.Windows.Forms.PictureBox GrasscutterToolsIcon;
private System.Windows.Forms.GroupBox GrpSettings;
private System.Windows.Forms.Label LblGCVersion;
private System.Windows.Forms.ComboBox CmbGcVersions;
private System.Windows.Forms.CheckBox ChkTopMost;
private System.Windows.Forms.Button BtnActivityEditor;
private System.Windows.Forms.Label LblTip1;
private System.Windows.Forms.Label LblTip2;
private System.Windows.Forms.Label LblTip3;
private System.Windows.Forms.Label LblTip4;
private System.Windows.Forms.Label LblTip5;
private System.Windows.Forms.ComboBox CmbLanguage;
private System.Windows.Forms.Label LblLanguage;
private System.Windows.Forms.NumericUpDown NUDUid;
private System.Windows.Forms.CheckBox ChkIncludeUID;
private System.Windows.Forms.Label LblDefaultUid;
private System.Windows.Forms.Button BtnActivityEditor;
}
}

View File

@@ -19,14 +19,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using GrasscutterTools.Forms;
using GrasscutterTools.Game;
using GrasscutterTools.Properties;
using GrasscutterTools.Utils;
@@ -34,6 +31,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageHome : BasePage
{
public override string Text => Resources.PageHomeTitle;
/// <summary>
/// 初始化首页设置
/// </summary>
@@ -42,26 +41,6 @@ namespace GrasscutterTools.Pages
InitializeComponent();
if (DesignMode) return;
// 玩家UID
NUDUid.Value = Settings.Default.Uid;
NUDUid.ValueChanged += (o, e) => Settings.Default.Uid = NUDUid.Value;
// 是否包含UID
ChkIncludeUID.Checked = Settings.Default.IsIncludeUID;
ChkIncludeUID.CheckedChanged += (o, e) => Settings.Default.IsIncludeUID = ChkIncludeUID.Checked;
// 置顶
ChkTopMost.Checked = Settings.Default.IsTopMost;
ChkTopMost.CheckedChanged += (o, e) => Settings.Default.IsTopMost = ParentForm.TopMost = ChkTopMost.Checked;
// 命令版本初始化
if (Version.TryParse(Settings.Default.CommandVersion, out Version current))
CommandVersion.Current = current;
CmbGcVersions.DataSource = CommandVersion.List.Select(it => it.ToString(3)).ToList();
CmbGcVersions.SelectedIndex = Array.IndexOf(CommandVersion.List, CommandVersion.Current);
CmbGcVersions.SelectedIndexChanged += (o, e) => CommandVersion.Current = CommandVersion.List[CmbGcVersions.SelectedIndex];
CommandVersion.VersionChanged += (o, e) => Settings.Default.CommandVersion = CommandVersion.Current.ToString(3);
// 初始化多语言
CmbLanguage.DataSource = MultiLanguage.LanguageNames;
if (string.IsNullOrEmpty(Settings.Default.DefaultLanguage))
@@ -76,7 +55,6 @@ namespace GrasscutterTools.Pages
CmbLanguage.SelectedIndex = Array.IndexOf(MultiLanguage.Languages, Settings.Default.DefaultLanguage);
}
CmbLanguage.SelectedIndexChanged += CmbLanguage_SelectedIndexChanged;
#if !DEBUG // 仅正式版
// 检查更新,但不要弹窗
Task.Run(async () => { try { await LoadUpdate(); } catch { /* 启动时检查更新,忽略异常 */ }});
@@ -115,7 +93,7 @@ namespace GrasscutterTools.Pages
form.TopMost = false;
}
private readonly Dictionary<string, Form> MyForms = new Dictionary<string, Form>();
private readonly Dictionary<string, Form> MyForms = new();
private void ShowForm<T>(string tag) where T : Form, new()
{
@@ -157,12 +135,7 @@ namespace GrasscutterTools.Pages
/// </summary>
private void BtnActivityEditor_Click(object sender, EventArgs e)
=> ShowForm<FormActivityEditor>("ActivityEditor");
/// <summary>
/// 当选中语言改变时触发
/// </summary>
public Action OnLanguageChanged { get; set; }
/// <summary>
/// 语言选中项改变时触发
/// </summary>
@@ -173,8 +146,8 @@ namespace GrasscutterTools.Pages
MultiLanguage.SetDefaultLanguage(MultiLanguage.Languages[CmbLanguage.SelectedIndex]);
// 动态更改语言
MultiLanguage.LoadLanguage(ParentForm, ParentForm.GetType());
// 通知语言改变
OnLanguageChanged?.Invoke();
// 重载界面
FormMain.Instance.Reload();
}
/// <summary>

View File

@@ -127,33 +127,12 @@
<value>Have a nice time!</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="BtnOpenTextMap.Size" type="System.Drawing.Size, System.Drawing">
<value>120, 23</value>
</data>
<data name="BtnOpenTextMap.Text" xml:space="preserve">
<value>TextMapBrowser</value>
</data>
<data name="BtnOpenGachaBannerEditor.Text" xml:space="preserve">
<value>Gacha Editor</value>
</data>
<data name="ChkTopMost.Size" type="System.Drawing.Size, System.Drawing">
<value>109, 21</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>Always on top</value>
</data>
<data name="ChkIncludeUID.Size" type="System.Drawing.Size, System.Drawing">
<value>95, 21</value>
</data>
<data name="ChkIncludeUID.Text" xml:space="preserve">
<value>Include UID</value>
</data>
<data name="GrpSettings.Text" xml:space="preserve">
<value>Settings</value>
</data>
<data name="BtnActivityEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>542, 213</value>
</data>
<data name="BtnActivityEditor.Text" xml:space="preserve">
<value>Activity Editor</value>
</data>

View File

@@ -117,508 +117,475 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="BtnOpenShopEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnOpenShopEditor.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="LblAbout.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
<data name="BtnOpenShopEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 118</value>
</data>
<data name="&gt;&gt;ChkTopMost.Name" xml:space="preserve">
<value>ChkTopMost</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.Name" xml:space="preserve">
<value>GrasscutterToolsIcon</value>
<data name="BtnOpenShopEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 25</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="LblLanguage.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="BtnOpenTextMap.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="&gt;&gt;LnkNewVersion.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="LblGCVersion.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="&gt;&gt;LblGCVersion.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="&gt;&gt;NUDUid.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="&gt;&gt;BtnOpenGachaBannerEditor.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="LblDefaultUid.Text" xml:space="preserve">
<value>UID</value>
</data>
<data name="LblGCVersion.Text" xml:space="preserve">
<value>GC</value>
</data>
<data name="LblLanguage.Text" xml:space="preserve">
<value>语言/Language/язык</value>
</data>
<data name="ChkIncludeUID.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="BtnOpenGachaBannerEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 213</value>
</data>
<data name="&gt;&gt;CmbLanguage.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblLanguage.TabIndex" type="System.Int32, mscorlib">
<data name="BtnOpenShopEditor.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="&gt;&gt;LblLanguage.Name" xml:space="preserve">
<value>LblLanguage</value>
</data>
<data name="GrasscutterToolsIcon.Size" type="System.Drawing.Size, System.Drawing">
<value>333, 175</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="BtnOpenTextMap.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="CmbGcVersions.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="LblAbout.Text" xml:space="preserve">
<value>祝你玩得愉快!</value>
</data>
<data name="&gt;&gt;LblDefaultUid.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="BtnActivityEditor.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="BtnOpenDropEditor.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="LblAbout.Size" type="System.Drawing.Size, System.Drawing">
<value>320, 102</value>
</data>
<data name="GrpSettings.Size" type="System.Drawing.Size, System.Drawing">
<value>301, 111</value>
</data>
<data name="LblDefaultUid.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.Type" xml:space="preserve">
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblAbout.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="GrpSettings.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="&gt;&gt;BtnOpenShopEditor.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;LblDefaultUid.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="GrasscutterToolsIcon.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 3</value>
</data>
<data name="ChkIncludeUID.Text" xml:space="preserve">
<value>生成的命令包含UID</value>
</data>
<data name="LnkNewVersion.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>PageHome</value>
</data>
<data name="ChkIncludeUID.Location" type="System.Drawing.Point, System.Drawing">
<value>147, 23</value>
</data>
<data name="BtnOpenDropEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnOpenGachaBannerEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="LblDefaultUid.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.Name" xml:space="preserve">
<value>ChkIncludeUID</value>
</data>
<data name="GrasscutterToolsIcon.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
<value>CenterImage</value>
<data name="BtnOpenShopEditor.Text" xml:space="preserve">
<value>商店编辑器</value>
</data>
<data name="&gt;&gt;BtnOpenShopEditor.Name" xml:space="preserve">
<value>BtnOpenShopEditor</value>
</data>
<data name="CmbLanguage.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="BtnOpenTextMap.Location" type="System.Drawing.Point, System.Drawing">
<value>416, 213</value>
</data>
<data name="&gt;&gt;LblAbout.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblLanguage.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblAbout.Name" xml:space="preserve">
<value>LblAbout</value>
</data>
<data name="BtnOpenShopEditor.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="&gt;&gt;LblGCVersion.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;GrpSettings.Name" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="&gt;&gt;CmbGcVersions.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblLanguage.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="BtnOpenGachaBannerEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="&gt;&gt;BtnOpenDropEditor.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;BtnOpenDropEditor.Name" xml:space="preserve">
<value>BtnOpenDropEditor</value>
</data>
<data name="BtnOpenShopEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="ChkTopMost.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblDefaultUid.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnOpenDropEditor.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="&gt;&gt;BtnOpenGachaBannerEditor.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="LblAbout.Font" type="System.Drawing.Font, System.Drawing">
<value>Microsoft YaHei UI, 13pt</value>
</data>
<data name="&gt;&gt;LblLanguage.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>窗口置顶</value>
</data>
<data name="GrpSettings.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 125</value>
<data name="&gt;&gt;BtnOpenShopEditor.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;BtnOpenShopEditor.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="BtnOpenGachaBannerEditor.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
<data name="&gt;&gt;BtnOpenShopEditor.ZOrder" xml:space="preserve">
<value>12</value>
</data>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>7, 17</value>
</data>
<data name="NUDUid.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="GrpSettings.Text" xml:space="preserve">
<value>设置</value>
</data>
<data name="BtnOpenTextMap.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="ChkIncludeUID.Size" type="System.Drawing.Size, System.Drawing">
<value>133, 21</value>
</data>
<data name="BtnOpenTextMap.Text" xml:space="preserve">
<value>文本浏览器</value>
</data>
<data name="LnkNewVersion.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<data name="BtnOpenDropEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="&gt;&gt;GrpSettings.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="NUDUid.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="LblDefaultUid.Size" type="System.Drawing.Size, System.Drawing">
<value>30, 17</value>
</data>
<data name="&gt;&gt;LblDefaultUid.Name" xml:space="preserve">
<value>LblDefaultUid</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.Name" xml:space="preserve">
<value>BtnOpenTextMap</value>
</data>
<data name="LblAbout.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleCenter</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>GrasscutterTools.Pages.BasePage, GrasscutterTools, Version=1.9.0.0, Culture=neutral, PublicKeyToken=de2b1c089621e923</value>
</data>
<data name="LnkNewVersion.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="LnkNewVersion.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="ChkTopMost.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<data name="BtnOpenDropEditor.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnActivityEditor.Text" xml:space="preserve">
<value>活动编辑器</value>
<data name="BtnOpenDropEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 149</value>
</data>
<data name="&gt;&gt;LblGCVersion.Name" xml:space="preserve">
<value>LblGCVersion</value>
<data name="BtnOpenDropEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 25</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NUDUid.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="BtnOpenDropEditor.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="BtnOpenDropEditor.Text" xml:space="preserve">
<value>掉落物编辑器</value>
</data>
<data name="&gt;&gt;ChkTopMost.Parent" xml:space="preserve">
<value>GrpSettings</value>
<data name="&gt;&gt;BtnOpenDropEditor.Name" xml:space="preserve">
<value>BtnOpenDropEditor</value>
</data>
<data name="&gt;&gt;LblAbout.Parent" xml:space="preserve">
<data name="&gt;&gt;BtnOpenDropEditor.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;BtnOpenDropEditor.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LnkNewVersion.Type" xml:space="preserve">
<value>System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="&gt;&gt;BtnOpenDropEditor.ZOrder" xml:space="preserve">
<value>11</value>
</data>
<data name="LblAbout.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
<data name="LnkNewVersion.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="LblGCVersion.AutoSize" type="System.Boolean, mscorlib">
<data name="LnkNewVersion.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;ChkTopMost.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblDefaultUid.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;CmbLanguage.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="LblGCVersion.Size" type="System.Drawing.Size, System.Drawing">
<value>25, 17</value>
</data>
<data name="LblGCVersion.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<data name="LnkNewVersion.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="CmbGcVersions.Location" type="System.Drawing.Point, System.Drawing">
<value>41, 80</value>
<data name="LnkNewVersion.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 3</value>
</data>
<data name="CmbGcVersions.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 25</value>
<data name="LnkNewVersion.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 17</value>
</data>
<data name="&gt;&gt;GrpSettings.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="CmbLanguage.Location" type="System.Drawing.Point, System.Drawing">
<value>41, 51</value>
</data>
<data name="&gt;&gt;CmbGcVersions.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="NUDUid.Location" type="System.Drawing.Point, System.Drawing">
<value>41, 22</value>
</data>
<data name="&gt;&gt;CmbLanguage.Name" xml:space="preserve">
<value>CmbLanguage</value>
</data>
<data name="ChkTopMost.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 21</value>
</data>
<data name="&gt;&gt;CmbGcVersions.Name" xml:space="preserve">
<value>CmbGcVersions</value>
</data>
<data name="&gt;&gt;ChkTopMost.ZOrder" xml:space="preserve">
<value>2</value>
<data name="LnkNewVersion.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="LnkNewVersion.Text" xml:space="preserve">
<value>New Version Tip</value>
</data>
<data name="LnkNewVersion.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;LnkNewVersion.Name" xml:space="preserve">
<value>LnkNewVersion</value>
</data>
<data name="&gt;&gt;LnkNewVersion.Type" xml:space="preserve">
<value>System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LnkNewVersion.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LnkNewVersion.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="LblAbout.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left</value>
</data>
<data name="LblAbout.Font" type="System.Drawing.Font, System.Drawing">
<value>Microsoft YaHei UI, 13pt</value>
</data>
<data name="LblAbout.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="LblAbout.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="LblAbout.Size" type="System.Drawing.Size, System.Drawing">
<value>320, 102</value>
</data>
<data name="LblAbout.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="LblAbout.Text" xml:space="preserve">
<value>祝你玩得愉快!</value>
</data>
<data name="LblAbout.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleCenter</value>
</data>
<data name="&gt;&gt;LblAbout.Name" xml:space="preserve">
<value>LblAbout</value>
</data>
<data name="&gt;&gt;LblAbout.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblAbout.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblAbout.ZOrder" xml:space="preserve">
<value>14</value>
</data>
<data name="BtnOpenTextMap.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnOpenTextMap.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnOpenTextMap.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 211</value>
</data>
<data name="BtnOpenTextMap.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 25</value>
</data>
<data name="BtnOpenTextMap.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
</data>
<data name="BtnOpenTextMap.Text" xml:space="preserve">
<value>文本浏览器</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.Name" xml:space="preserve">
<value>BtnOpenTextMap</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.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;BtnOpenTextMap.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.ZOrder" xml:space="preserve">
<value>9</value>
</data>
<data name="BtnOpenGachaBannerEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnOpenGachaBannerEditor.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnOpenGachaBannerEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 90</value>
</data>
<data name="BtnOpenGachaBannerEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 25</value>
</data>
<data name="BtnOpenGachaBannerEditor.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="BtnOpenGachaBannerEditor.Text" xml:space="preserve">
<value>奖池编辑器</value>
</data>
<data name="&gt;&gt;BtnOpenGachaBannerEditor.Name" xml:space="preserve">
<value>BtnOpenGachaBannerEditor</value>
</data>
<data name="GrpSettings.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="LblLanguage.Location" type="System.Drawing.Point, System.Drawing">
<value>147, 54</value>
</data>
<data name="BtnOpenShopEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="GrasscutterToolsIcon.TabIndex" type="System.Int32, mscorlib">
<value>14</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="&gt;&gt;LnkNewVersion.ZOrder" xml:space="preserve">
<value>8</value>
</data>
<data name="LblLanguage.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnOpenDropEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
<data name="&gt;&gt;BtnOpenGachaBannerEditor.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;BtnOpenGachaBannerEditor.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;BtnOpenDropEditor.ZOrder" xml:space="preserve">
<value>4</value>
<data name="&gt;&gt;BtnOpenGachaBannerEditor.ZOrder" xml:space="preserve">
<value>10</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.Type" xml:space="preserve">
<data name="GrasscutterToolsIcon.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="GrasscutterToolsIcon.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="GrasscutterToolsIcon.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 3</value>
</data>
<data name="GrasscutterToolsIcon.Size" type="System.Drawing.Size, System.Drawing">
<value>333, 202</value>
</data>
<data name="GrasscutterToolsIcon.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
<value>CenterImage</value>
</data>
<data name="GrasscutterToolsIcon.TabIndex" type="System.Int32, mscorlib">
<value>14</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.Name" xml:space="preserve">
<value>GrasscutterToolsIcon</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.Type" xml:space="preserve">
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.ZOrder" xml:space="preserve">
<value>13</value>
</data>
<data name="BtnActivityEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnActivityEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 180</value>
</data>
<data name="BtnActivityEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 25</value>
</data>
<data name="BtnActivityEditor.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="BtnActivityEditor.Text" xml:space="preserve">
<value>活动编辑器</value>
</data>
<data name="&gt;&gt;BtnActivityEditor.Name" xml:space="preserve">
<value>BtnActivityEditor</value>
</data>
<data name="&gt;&gt;BtnActivityEditor.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;BtnActivityEditor.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="BtnOpenGachaBannerEditor.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
<data name="&gt;&gt;BtnActivityEditor.ZOrder" xml:space="preserve">
<value>8</value>
</data>
<data name="ChkIncludeUID.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
<data name="LblTip1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnActivityEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>522, 213</value>
<data name="LblTip1.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="BtnActivityEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
<data name="LblTip1.Location" type="System.Drawing.Point, System.Drawing">
<value>159, 94</value>
</data>
<data name="BtnOpenDropEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>416, 184</value>
<data name="LblTip1.Size" type="System.Drawing.Size, System.Drawing">
<value>118, 17</value>
</data>
<data name="ChkTopMost.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
<data name="LblTip1.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="&gt;&gt;NUDUid.ZOrder" xml:space="preserve">
<value>5</value>
<data name="LblTip1.Text" xml:space="preserve">
<value>/data/Banners.json</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.ZOrder" xml:space="preserve">
<value>2</value>
<data name="&gt;&gt;LblTip1.Name" xml:space="preserve">
<value>LblTip1</value>
</data>
<data name="&gt;&gt;NUDUid.Name" xml:space="preserve">
<value>NUDUid</value>
<data name="&gt;&gt;LblTip1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LnkNewVersion.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 17</value>
</data>
<data name="LblLanguage.Size" type="System.Drawing.Size, System.Drawing">
<value>128, 17</value>
</data>
<data name="&gt;&gt;BtnOpenTextMap.Parent" xml:space="preserve">
<data name="&gt;&gt;LblTip1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="BtnOpenShopEditor.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BtnActivityEditor.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="&gt;&gt;CmbLanguage.Parent" xml:space="preserve">
<value>GrpSettings</value>
</data>
<data name="BtnOpenGachaBannerEditor.Text" xml:space="preserve">
<value>奖池编辑器</value>
</data>
<data name="LblAbout.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left</value>
</data>
<data name="&gt;&gt;GrasscutterToolsIcon.ZOrder" xml:space="preserve">
<data name="&gt;&gt;LblTip1.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="&gt;&gt;LblAbout.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="LnkNewVersion.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;BtnOpenDropEditor.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="BtnOpenTextMap.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<data name="LblTip2.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="ChkIncludeUID.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
<data name="LblTip2.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;LnkNewVersion.Name" xml:space="preserve">
<value>LnkNewVersion</value>
<data name="LblTip2.Location" type="System.Drawing.Point, System.Drawing">
<value>159, 122</value>
</data>
<data name="LblTip2.Size" type="System.Drawing.Size, System.Drawing">
<value>101, 17</value>
</data>
<data name="LblTip2.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="LblTip2.Text" xml:space="preserve">
<value>/data/Shop.json</value>
</data>
<data name="&gt;&gt;LblTip2.Name" xml:space="preserve">
<value>LblTip2</value>
</data>
<data name="&gt;&gt;LblTip2.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblTip2.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblTip2.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="LblTip3.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="LblTip3.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblTip3.Location" type="System.Drawing.Point, System.Drawing">
<value>159, 153</value>
</data>
<data name="LblTip3.Size" type="System.Drawing.Size, System.Drawing">
<value>101, 17</value>
</data>
<data name="LblTip3.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="LblTip3.Text" xml:space="preserve">
<value>/data/Drop.json</value>
</data>
<data name="&gt;&gt;LblTip3.Name" xml:space="preserve">
<value>LblTip3</value>
</data>
<data name="&gt;&gt;LblTip3.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblTip3.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblTip3.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="LblTip4.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="LblTip4.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblTip4.Location" type="System.Drawing.Point, System.Drawing">
<value>159, 184</value>
</data>
<data name="LblTip4.Size" type="System.Drawing.Size, System.Drawing">
<value>149, 17</value>
</data>
<data name="LblTip4.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="LblTip4.Text" xml:space="preserve">
<value>/data/ActivityConfig.json</value>
</data>
<data name="&gt;&gt;LblTip4.Name" xml:space="preserve">
<value>LblTip4</value>
</data>
<data name="&gt;&gt;LblTip4.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblTip4.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblTip4.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="LblTip5.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="LblTip5.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblTip5.Location" type="System.Drawing.Point, System.Drawing">
<value>159, 215</value>
</data>
<data name="LblTip5.Size" type="System.Drawing.Size, System.Drawing">
<value>96, 17</value>
</data>
<data name="LblTip5.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="LblTip5.Text" xml:space="preserve">
<value>/Res/TextMaps</value>
</data>
<data name="&gt;&gt;LblTip5.Name" xml:space="preserve">
<value>LblTip5</value>
</data>
<data name="&gt;&gt;LblTip5.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblTip5.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblTip5.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="CmbLanguage.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="CmbLanguage.Location" type="System.Drawing.Point, System.Drawing">
<value>543, 211</value>
</data>
<data name="CmbLanguage.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 25</value>
</data>
<data name="BtnOpenShopEditor.Text" xml:space="preserve">
<value>商店编辑器</value>
<data name="CmbLanguage.TabIndex" type="System.Int32, mscorlib">
<value>15</value>
</data>
<data name="ChkTopMost.Location" type="System.Drawing.Point, System.Drawing">
<value>147, 82</value>
<data name="&gt;&gt;CmbLanguage.Name" xml:space="preserve">
<value>CmbLanguage</value>
</data>
<data name="&gt;&gt;BtnOpenShopEditor.ZOrder" xml:space="preserve">
<value>5</value>
<data name="&gt;&gt;CmbLanguage.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblGCVersion.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="&gt;&gt;CmbLanguage.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="GrasscutterToolsIcon.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="&gt;&gt;BtnActivityEditor.ZOrder" xml:space="preserve">
<data name="&gt;&gt;CmbLanguage.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="BtnOpenShopEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 184</value>
<data name="LblLanguage.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="&gt;&gt;GrpSettings.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="LblLanguage.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;CmbGcVersions.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;BtnActivityEditor.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;BtnActivityEditor.Name" xml:space="preserve">
<value>BtnActivityEditor</value>
</data>
<data name="LblGCVersion.Location" type="System.Drawing.Point, System.Drawing">
<value>7, 83</value>
</data>
<data name="LnkNewVersion.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 105</value>
</data>
<data name="LblDefaultUid.Location" type="System.Drawing.Point, System.Drawing">
<value>7, 24</value>
</data>
<data name="GrasscutterToolsIcon.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<data name="LblLanguage.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="LblLanguage.Location" type="System.Drawing.Point, System.Drawing">
<value>409, 215</value>
</data>
<data name="LblLanguage.Size" type="System.Drawing.Size, System.Drawing">
<value>128, 17</value>
</data>
<data name="LblLanguage.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
</data>
<data name="LblLanguage.Text" xml:space="preserve">
<value>语言/Language/язык</value>
</data>
<data name="&gt;&gt;LblLanguage.Name" xml:space="preserve">
<value>LblLanguage</value>
</data>
<data name="&gt;&gt;LblLanguage.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblLanguage.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblLanguage.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>7, 17</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>PageHome</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>GrasscutterTools.Pages.BasePage, GrasscutterTools, Version=1.13.0.0, Culture=neutral, PublicKeyToken=de2b1c089621e923</value>
</data>
</root>

View File

@@ -117,84 +117,21 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="BtnOpenShopEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>140, 23</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="BtnOpenShopEditor.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="BtnOpenShopEditor.Text" xml:space="preserve">
<value>Редактор магазина</value>
</data>
<data name="BtnOpenDropEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>456, 184</value>
</data>
<data name="BtnOpenDropEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>140, 23</value>
</data>
<data name="BtnOpenDropEditor.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="BtnOpenDropEditor.Text" xml:space="preserve">
<value>Редактор дропа</value>
</data>
<data name="LblAbout.Text" xml:space="preserve">
<value>Желаем приятно провести время!</value>
</data>
<data name="BtnOpenTextMap.Location" type="System.Drawing.Point, System.Drawing">
<value>456, 213</value>
</data>
<data name="BtnOpenTextMap.Size" type="System.Drawing.Size, System.Drawing">
<value>140, 23</value>
</data>
<data name="BtnOpenTextMap.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="BtnOpenTextMap.Text" xml:space="preserve">
<value>Браузер карт</value>
</data>
<data name="BtnOpenGachaBannerEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>140, 23</value>
</data>
<data name="BtnOpenGachaBannerEditor.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="BtnOpenGachaBannerEditor.Text" xml:space="preserve">
<value>Редактор баннеров</value>
</data>
<data name="GrasscutterToolsIcon.Size" type="System.Drawing.Size, System.Drawing">
<value>333, 146</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="GrasscutterToolsIcon.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
<value>Zoom</value>
</data>
<data name="GrpSettings.Text" xml:space="preserve">
<value>Настройки</value>
</data>
<data name="ChkTopMost.Size" type="System.Drawing.Size, System.Drawing">
<value>140, 21</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>Последняя версия</value>
</data>
<data name="ChkIncludeUID.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 21</value>
</data>
<data name="ChkIncludeUID.Text" xml:space="preserve">
<value>Включить UID</value>
</data>
<data name="BtnActivityEditor.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 155</value>
</data>
<data name="BtnActivityEditor.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 23</value>
</data>
<data name="BtnActivityEditor.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="BtnActivityEditor.Text" xml:space="preserve">
<value>Редактор активности</value>
</data>

View File

@@ -129,12 +129,6 @@
<data name="BtnOpenGachaBannerEditor.Text" xml:space="preserve">
<value>獎池編輯器</value>
</data>
<data name="GrpSettings.Text" xml:space="preserve">
<value>設置</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>窗口置頂</value>
</data>
<data name="BtnActivityEditor.Text" xml:space="preserve">
<value>活動編輯器</value>
</data>

View File

@@ -32,6 +32,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageHotKey : BasePage
{
public override string Text => Resources.PageHotKey;
private const string TAG = nameof(PageHotKey);
public PageHotKey()

View File

@@ -34,6 +34,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageMail : BasePage
{
public override string Text => Resources.PageMailTitle;
public PageMail()
{
InitializeComponent();

View File

@@ -28,6 +28,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageManagement : BasePage
{
public override string Text => Resources.PageManagementTitle;
public PageManagement()
{
InitializeComponent();

View File

@@ -38,6 +38,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageOpenCommand : BasePage
{
public override string Text => Resources.PageOpenCommandTitle;
private const string TAG = nameof(PageOpenCommand);
public PageOpenCommand()

View File

@@ -27,7 +27,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageProxy : BasePage
{
private const string TAG = nameof(PageProxy);
public override string Text => Resources.PageProxyTitle;
public PageProxy()
{
InitializeComponent();
@@ -41,7 +42,7 @@ namespace GrasscutterTools.Pages
if (Settings.Default.AutoStartProxy && !ProxyHelper.IsRunning)
{
Logger.I(TAG, "Auto start proxy!");
Logger.I(Name, "Auto start proxy!");
BtnStartProxy_Click(BtnStartProxy, EventArgs.Empty);
}
}
@@ -50,7 +51,7 @@ namespace GrasscutterTools.Pages
{
try
{
Logger.I(TAG, "Stop Proxy");
Logger.I(Name, "Stop Proxy");
ProxyHelper.StopProxy();
}
catch (Exception ex)
@@ -58,7 +59,7 @@ namespace GrasscutterTools.Pages
#if DEBUG
MessageBox.Show(ex.ToString(), Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
#endif
Logger.E(TAG, "Stop Proxy Failed.", ex);
Logger.E(Name, "Stop Proxy Failed.", ex);
}
}
@@ -101,7 +102,7 @@ namespace GrasscutterTools.Pages
}
catch (Exception ex)
{
Logger.E(TAG, "Start Proxy failed.", ex);
Logger.E(Name, "Start Proxy failed.", ex);
MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
@@ -127,7 +128,7 @@ namespace GrasscutterTools.Pages
/// </summary>
private void BtnDestroyCert_Click(object sender, EventArgs e)
{
Logger.I(TAG, "DestroyCertificate");
Logger.I(Name, "DestroyCertificate");
ProxyHelper.DestroyCertificate();
MessageBox.Show("OK", Resources.Tips);
}

View File

@@ -22,11 +22,14 @@ using System.Linq;
using System.Windows.Forms;
using GrasscutterTools.Game;
using GrasscutterTools.Properties;
namespace GrasscutterTools.Pages
{
internal partial class PageQuest : BasePage
{
public override string Text => Resources.PageQuestTitle;
public PageQuest()
{
InitializeComponent();

View File

@@ -27,6 +27,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageScene : BasePage
{
public override string Text => Resources.PageSceneTitle;
public PageScene()
{
InitializeComponent();

View File

@@ -20,11 +20,14 @@
using System;
using System.Windows.Forms;
using GrasscutterTools.Game;
using GrasscutterTools.Properties;
namespace GrasscutterTools.Pages
{
internal partial class PageSceneTag : BasePage
{
public override string Text => Resources.PageSceneTagTitle;
public PageSceneTag()
{
InitializeComponent();

View File

@@ -28,6 +28,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageSetProp : BasePage
{
public override string Text => Resources.PageSetPropTitle;
private const string SetPropPrefix = "/prop";
public PageSetProp()

View File

@@ -0,0 +1,202 @@
namespace GrasscutterTools.Pages
{
partial class PageSettings
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region
/// <summary>
/// 设计器支持所需的方法 - 不要修改
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PageSettings));
this.LblPageTitle = new System.Windows.Forms.Label();
this.NUDUid = new System.Windows.Forms.NumericUpDown();
this.ChkIncludeUID = new System.Windows.Forms.CheckBox();
this.LblIncludeUidTip = new System.Windows.Forms.Label();
this.GrpPageList = new System.Windows.Forms.GroupBox();
this.BtnResetPageList = new System.Windows.Forms.Button();
this.BtnMoveDown = new System.Windows.Forms.Button();
this.BtnMoveUp = new System.Windows.Forms.Button();
this.ChkListPages = new System.Windows.Forms.CheckedListBox();
this.LblGCVersion = new System.Windows.Forms.Label();
this.CmbGcVersions = new System.Windows.Forms.ComboBox();
this.LblGcVersionTip = new System.Windows.Forms.Label();
this.ChkTopMost = new System.Windows.Forms.CheckBox();
this.LblWindowOpacity = new System.Windows.Forms.Label();
this.TbWindowOpacity = new System.Windows.Forms.TrackBar();
((System.ComponentModel.ISupportInitialize)(this.NUDUid)).BeginInit();
this.GrpPageList.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.TbWindowOpacity)).BeginInit();
this.SuspendLayout();
//
// LblPageTitle
//
resources.ApplyResources(this.LblPageTitle, "LblPageTitle");
this.LblPageTitle.Name = "LblPageTitle";
//
// NUDUid
//
resources.ApplyResources(this.NUDUid, "NUDUid");
this.NUDUid.Maximum = new decimal(new int[] {
2147483647,
0,
0,
0});
this.NUDUid.Name = "NUDUid";
this.NUDUid.Value = new decimal(new int[] {
10001,
0,
0,
0});
//
// ChkIncludeUID
//
resources.ApplyResources(this.ChkIncludeUID, "ChkIncludeUID");
this.ChkIncludeUID.Name = "ChkIncludeUID";
this.ChkIncludeUID.UseVisualStyleBackColor = true;
//
// LblIncludeUidTip
//
resources.ApplyResources(this.LblIncludeUidTip, "LblIncludeUidTip");
this.LblIncludeUidTip.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblIncludeUidTip.Name = "LblIncludeUidTip";
//
// GrpPageList
//
resources.ApplyResources(this.GrpPageList, "GrpPageList");
this.GrpPageList.Controls.Add(this.BtnResetPageList);
this.GrpPageList.Controls.Add(this.BtnMoveDown);
this.GrpPageList.Controls.Add(this.BtnMoveUp);
this.GrpPageList.Controls.Add(this.ChkListPages);
this.GrpPageList.Name = "GrpPageList";
this.GrpPageList.TabStop = false;
//
// BtnResetPageList
//
resources.ApplyResources(this.BtnResetPageList, "BtnResetPageList");
this.BtnResetPageList.Name = "BtnResetPageList";
this.BtnResetPageList.UseVisualStyleBackColor = true;
this.BtnResetPageList.Click += new System.EventHandler(this.BtnResetPageList_Click);
//
// BtnMoveDown
//
resources.ApplyResources(this.BtnMoveDown, "BtnMoveDown");
this.BtnMoveDown.Name = "BtnMoveDown";
this.BtnMoveDown.UseVisualStyleBackColor = true;
this.BtnMoveDown.Click += new System.EventHandler(this.BtnMoveDown_Click);
//
// BtnMoveUp
//
resources.ApplyResources(this.BtnMoveUp, "BtnMoveUp");
this.BtnMoveUp.Name = "BtnMoveUp";
this.BtnMoveUp.UseVisualStyleBackColor = true;
this.BtnMoveUp.Click += new System.EventHandler(this.BtnMoveUp_Click);
//
// ChkListPages
//
resources.ApplyResources(this.ChkListPages, "ChkListPages");
this.ChkListPages.FormattingEnabled = true;
this.ChkListPages.Name = "ChkListPages";
this.ChkListPages.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.ChkListPages_ItemCheck);
//
// LblGCVersion
//
resources.ApplyResources(this.LblGCVersion, "LblGCVersion");
this.LblGCVersion.Name = "LblGCVersion";
//
// CmbGcVersions
//
this.CmbGcVersions.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CmbGcVersions.FormattingEnabled = true;
resources.ApplyResources(this.CmbGcVersions, "CmbGcVersions");
this.CmbGcVersions.Name = "CmbGcVersions";
//
// LblGcVersionTip
//
resources.ApplyResources(this.LblGcVersionTip, "LblGcVersionTip");
this.LblGcVersionTip.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblGcVersionTip.Name = "LblGcVersionTip";
//
// ChkTopMost
//
resources.ApplyResources(this.ChkTopMost, "ChkTopMost");
this.ChkTopMost.Name = "ChkTopMost";
this.ChkTopMost.UseVisualStyleBackColor = true;
//
// LblWindowOpacity
//
resources.ApplyResources(this.LblWindowOpacity, "LblWindowOpacity");
this.LblWindowOpacity.Name = "LblWindowOpacity";
//
// TbWindowOpacity
//
resources.ApplyResources(this.TbWindowOpacity, "TbWindowOpacity");
this.TbWindowOpacity.Maximum = 100;
this.TbWindowOpacity.Minimum = 5;
this.TbWindowOpacity.Name = "TbWindowOpacity";
this.TbWindowOpacity.TickFrequency = 20;
this.TbWindowOpacity.Value = 100;
//
// PageSettings
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.TbWindowOpacity);
this.Controls.Add(this.LblWindowOpacity);
this.Controls.Add(this.ChkTopMost);
this.Controls.Add(this.LblGcVersionTip);
this.Controls.Add(this.LblGCVersion);
this.Controls.Add(this.CmbGcVersions);
this.Controls.Add(this.GrpPageList);
this.Controls.Add(this.LblIncludeUidTip);
this.Controls.Add(this.NUDUid);
this.Controls.Add(this.ChkIncludeUID);
this.Controls.Add(this.LblPageTitle);
this.Name = "PageSettings";
((System.ComponentModel.ISupportInitialize)(this.NUDUid)).EndInit();
this.GrpPageList.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.TbWindowOpacity)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label LblPageTitle;
private System.Windows.Forms.NumericUpDown NUDUid;
private System.Windows.Forms.CheckBox ChkIncludeUID;
private System.Windows.Forms.Label LblIncludeUidTip;
private System.Windows.Forms.GroupBox GrpPageList;
private System.Windows.Forms.Button BtnMoveDown;
private System.Windows.Forms.Button BtnMoveUp;
private System.Windows.Forms.CheckedListBox ChkListPages;
private System.Windows.Forms.Label LblGCVersion;
private System.Windows.Forms.ComboBox CmbGcVersions;
private System.Windows.Forms.Label LblGcVersionTip;
private System.Windows.Forms.CheckBox ChkTopMost;
private System.Windows.Forms.Label LblWindowOpacity;
private System.Windows.Forms.TrackBar TbWindowOpacity;
private System.Windows.Forms.Button BtnResetPageList;
}
}

View File

@@ -0,0 +1,186 @@
/**
* Grasscutter Tools
* Copyright (C) 2023 jie65535
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
**/
using System;
using System.Linq;
using System.Windows.Forms;
using GrasscutterTools.Forms;
using GrasscutterTools.Game;
using GrasscutterTools.Properties;
namespace GrasscutterTools.Pages
{
internal partial class PageSettings : BasePage
{
public override string Text => Resources.PageSettingsTitle;
public PageSettings()
{
InitializeComponent();
if (DesignMode) return;
// 玩家UID
NUDUid.Value = Settings.Default.Uid;
NUDUid.ValueChanged += (o, e) => Settings.Default.Uid = NUDUid.Value;
// 是否包含UID
ChkIncludeUID.Checked = Settings.Default.IsIncludeUID;
ChkIncludeUID.CheckedChanged += (o, e) => Settings.Default.IsIncludeUID = ChkIncludeUID.Checked;
// 窗口透明度
TbWindowOpacity.Value = Settings.Default.WindowOpacity;
TbWindowOpacity.Scroll += TbWindowOpacity_Scroll;
// 置顶
ChkTopMost.Checked = FormMain.Instance.TopMost = Settings.Default.IsTopMost;
ChkTopMost.CheckedChanged += (o, e) => Settings.Default.IsTopMost = FormMain.Instance.TopMost = ChkTopMost.Checked;
// 命令版本初始化
if (Version.TryParse(Settings.Default.CommandVersion, out Version current))
CommandVersion.Current = current;
CmbGcVersions.DataSource = CommandVersion.List.Select(it => it.ToString(3)).ToList();
CmbGcVersions.SelectedIndex = Array.IndexOf(CommandVersion.List, CommandVersion.Current);
CmbGcVersions.SelectedIndexChanged += (o, e) => CommandVersion.Current = CommandVersion.List[CmbGcVersions.SelectedIndex];
CommandVersion.VersionChanged += (o, e) => Settings.Default.CommandVersion = CommandVersion.Current.ToString(3);
}
/// <summary>
/// 页面加载时触发
/// </summary>
public override void OnLoad()
{
InitPageList();
}
/// <summary>
/// 页面关闭时触发
/// </summary>
public override void OnClosed()
{
// 保存设置
Settings.Default.WindowOpacity = TbWindowOpacity.Value;
// 如果设置有更改
if (isChanged)
{
// 保存页面选项卡顺序设置
FormMain.Instance.SavePageTabOrders();
}
}
#region - Page list -
private bool isChanged;
/// <summary>
/// 初始化页面列表
/// </summary>
private void InitPageList()
{
ChkListPages.ItemCheck -= ChkListPages_ItemCheck;
ChkListPages.BeginUpdate();
ChkListPages.Items.Clear();
foreach (var pageTab in FormMain.Instance.PageTabOrders)
ChkListPages.Items.Add(FormMain.Instance.Pages[pageTab.Item1].Text, pageTab.Item2);
ChkListPages.EndUpdate();
ChkListPages.ItemCheck += ChkListPages_ItemCheck;
}
/// <summary>
/// 页面选项更改时触发
/// </summary>
private void ChkListPages_ItemCheck(object sender, ItemCheckEventArgs e)
{
var tab = FormMain.Instance.PageTabOrders[e.Index];
// 不允许修改首页和设置页的可见性
if (tab.Item1 is nameof(PageHome) or nameof(PageSettings))
return;
FormMain.Instance.PageTabOrders[e.Index] =
new Tuple<string, bool>(tab.Item1, e.NewValue == CheckState.Checked);
FormMain.Instance.UpdatePagesNav();
isChanged = true;
}
private void MovePageOrder(int from, int to)
{
// 交换记录保存顺序
var temp = FormMain.Instance.PageTabOrders[from];
FormMain.Instance.PageTabOrders.RemoveAt(from);
FormMain.Instance.PageTabOrders.Insert(to, temp);
// 交换控件选项顺序
var selectedItem = ChkListPages.SelectedItem;
ChkListPages.ItemCheck -= ChkListPages_ItemCheck;
ChkListPages.BeginUpdate();
ChkListPages.Items.RemoveAt(from);
ChkListPages.Items.Insert(to, selectedItem);
ChkListPages.SetItemChecked(to, temp.Item2);
ChkListPages.SelectedIndex = to;
ChkListPages.EndUpdate();
ChkListPages.ItemCheck += ChkListPages_ItemCheck;
// 更新导航顺序
FormMain.Instance.UpdatePagesNav();
isChanged = true;
}
/// <summary>
/// 点击向上移动时触发
/// </summary>
private void BtnMoveUp_Click(object sender, EventArgs e)
{
var i = ChkListPages.SelectedIndex;
if (i <= 1) return;
MovePageOrder(i, i - 1);
}
/// <summary>
/// 点击向下移动时触发
/// </summary>
private void BtnMoveDown_Click(object sender, EventArgs e)
{
var i = ChkListPages.SelectedIndex;
if (i == -1 || i == ChkListPages.Items.Count - 1) return;
MovePageOrder(i, i + 1);
}
#endregion
/// <summary>
/// 窗口透明度滑块滑动时触发
/// </summary>
private void TbWindowOpacity_Scroll(object sender, EventArgs e)
{
FormMain.Instance.Opacity = TbWindowOpacity.Value / 100.0;
}
/// <summary>
/// 点击重置页面列表时触发
/// </summary>
private void BtnResetPageList_Click(object sender, EventArgs e)
{
FormMain.Instance.ResetPageTabOrders();
FormMain.Instance.UpdatePagesNav();
InitPageList();
}
}
}

View File

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

View File

@@ -0,0 +1,528 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="LblPageTitle.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="LblPageTitle.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="LblPageTitle.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 17</value>
</data>
<data name="LblPageTitle.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="LblPageTitle.Text" xml:space="preserve">
<value>程序设置</value>
</data>
<data name="&gt;&gt;LblPageTitle.Name" xml:space="preserve">
<value>LblPageTitle</value>
</data>
<data name="&gt;&gt;LblPageTitle.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblPageTitle.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblPageTitle.ZOrder" xml:space="preserve">
<value>10</value>
</data>
<data name="NUDUid.Location" type="System.Drawing.Point, System.Drawing">
<value>87, 39</value>
</data>
<data name="NUDUid.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="NUDUid.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="&gt;&gt;NUDUid.Name" xml:space="preserve">
<value>NUDUid</value>
</data>
<data name="&gt;&gt;NUDUid.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NUDUid.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;NUDUid.ZOrder" xml:space="preserve">
<value>8</value>
</data>
<data name="ChkIncludeUID.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="ChkIncludeUID.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="ChkIncludeUID.Location" type="System.Drawing.Point, System.Drawing">
<value>28, 40</value>
</data>
<data name="ChkIncludeUID.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 21</value>
</data>
<data name="ChkIncludeUID.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="ChkIncludeUID.Text" xml:space="preserve">
<value>UID @</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.Name" xml:space="preserve">
<value>ChkIncludeUID</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;ChkIncludeUID.ZOrder" xml:space="preserve">
<value>9</value>
</data>
<data name="LblIncludeUidTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblIncludeUidTip.Location" type="System.Drawing.Point, System.Drawing">
<value>193, 41</value>
</data>
<data name="LblIncludeUidTip.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 17</value>
</data>
<data name="LblIncludeUidTip.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="LblIncludeUidTip.Text" xml:space="preserve">
<value>仅控制台模式勾选</value>
</data>
<data name="&gt;&gt;LblIncludeUidTip.Name" xml:space="preserve">
<value>LblIncludeUidTip</value>
</data>
<data name="&gt;&gt;LblIncludeUidTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblIncludeUidTip.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblIncludeUidTip.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="GrpPageList.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Right</value>
</data>
<data name="BtnResetPageList.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnResetPageList.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 202</value>
</data>
<data name="BtnResetPageList.Size" type="System.Drawing.Size, System.Drawing">
<value>155, 25</value>
</data>
<data name="BtnResetPageList.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="BtnResetPageList.Text" xml:space="preserve">
<value>恢复预设值</value>
</data>
<data name="&gt;&gt;BtnResetPageList.Name" xml:space="preserve">
<value>BtnResetPageList</value>
</data>
<data name="&gt;&gt;BtnResetPageList.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;BtnResetPageList.Parent" xml:space="preserve">
<value>GrpPageList</value>
</data>
<data name="&gt;&gt;BtnResetPageList.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="BtnMoveDown.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnMoveDown.Location" type="System.Drawing.Point, System.Drawing">
<value>86, 171</value>
</data>
<data name="BtnMoveDown.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 25</value>
</data>
<data name="BtnMoveDown.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="BtnMoveDown.Text" xml:space="preserve">
<value>↓</value>
</data>
<data name="&gt;&gt;BtnMoveDown.Name" xml:space="preserve">
<value>BtnMoveDown</value>
</data>
<data name="&gt;&gt;BtnMoveDown.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;BtnMoveDown.Parent" xml:space="preserve">
<value>GrpPageList</value>
</data>
<data name="&gt;&gt;BtnMoveDown.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="BtnMoveUp.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
</data>
<data name="BtnMoveUp.Location" type="System.Drawing.Point, System.Drawing">
<value>5, 171</value>
</data>
<data name="BtnMoveUp.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 25</value>
</data>
<data name="BtnMoveUp.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="BtnMoveUp.Text" xml:space="preserve">
<value>↑</value>
</data>
<data name="&gt;&gt;BtnMoveUp.Name" xml:space="preserve">
<value>BtnMoveUp</value>
</data>
<data name="&gt;&gt;BtnMoveUp.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;BtnMoveUp.Parent" xml:space="preserve">
<value>GrpPageList</value>
</data>
<data name="&gt;&gt;BtnMoveUp.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="ChkListPages.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="ChkListPages.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 22</value>
</data>
<data name="ChkListPages.Size" type="System.Drawing.Size, System.Drawing">
<value>155, 148</value>
</data>
<data name="ChkListPages.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;ChkListPages.Name" xml:space="preserve">
<value>ChkListPages</value>
</data>
<data name="&gt;&gt;ChkListPages.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;ChkListPages.Parent" xml:space="preserve">
<value>GrpPageList</value>
</data>
<data name="&gt;&gt;ChkListPages.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="GrpPageList.Location" type="System.Drawing.Point, System.Drawing">
<value>476, 3</value>
</data>
<data name="GrpPageList.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 233</value>
</data>
<data name="GrpPageList.TabIndex" type="System.Int32, mscorlib">
<value>100</value>
</data>
<data name="GrpPageList.Text" xml:space="preserve">
<value>页面列表</value>
</data>
<data name="&gt;&gt;GrpPageList.Name" xml:space="preserve">
<value>GrpPageList</value>
</data>
<data name="&gt;&gt;GrpPageList.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;GrpPageList.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;GrpPageList.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="LblGCVersion.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblGCVersion.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="LblGCVersion.Location" type="System.Drawing.Point, System.Drawing">
<value>53, 70</value>
</data>
<data name="LblGCVersion.Size" type="System.Drawing.Size, System.Drawing">
<value>25, 17</value>
</data>
<data name="LblGCVersion.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="LblGCVersion.Text" xml:space="preserve">
<value>GC</value>
</data>
<data name="&gt;&gt;LblGCVersion.Name" xml:space="preserve">
<value>LblGCVersion</value>
</data>
<data name="&gt;&gt;LblGCVersion.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblGCVersion.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblGCVersion.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="CmbGcVersions.Location" type="System.Drawing.Point, System.Drawing">
<value>87, 67</value>
</data>
<data name="CmbGcVersions.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 25</value>
</data>
<data name="CmbGcVersions.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="&gt;&gt;CmbGcVersions.Name" xml:space="preserve">
<value>CmbGcVersions</value>
</data>
<data name="&gt;&gt;CmbGcVersions.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;CmbGcVersions.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;CmbGcVersions.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="LblGcVersionTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblGcVersionTip.Location" type="System.Drawing.Point, System.Drawing">
<value>193, 70</value>
</data>
<data name="LblGcVersionTip.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 17</value>
</data>
<data name="LblGcVersionTip.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="LblGcVersionTip.Text" xml:space="preserve">
<value>用于区分命令版本</value>
</data>
<data name="&gt;&gt;LblGcVersionTip.Name" xml:space="preserve">
<value>LblGcVersionTip</value>
</data>
<data name="&gt;&gt;LblGcVersionTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblGcVersionTip.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblGcVersionTip.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="ChkTopMost.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="ChkTopMost.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="ChkTopMost.Location" type="System.Drawing.Point, System.Drawing">
<value>197, 98</value>
</data>
<data name="ChkTopMost.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 21</value>
</data>
<data name="ChkTopMost.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>窗口置顶</value>
</data>
<data name="&gt;&gt;ChkTopMost.Name" xml:space="preserve">
<value>ChkTopMost</value>
</data>
<data name="&gt;&gt;ChkTopMost.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;ChkTopMost.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;ChkTopMost.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="LblWindowOpacity.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblWindowOpacity.Location" type="System.Drawing.Point, System.Drawing">
<value>25, 99</value>
</data>
<data name="LblWindowOpacity.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 17</value>
</data>
<data name="LblWindowOpacity.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="LblWindowOpacity.Text" xml:space="preserve">
<value>不透明度</value>
</data>
<data name="&gt;&gt;LblWindowOpacity.Name" xml:space="preserve">
<value>LblWindowOpacity</value>
</data>
<data name="&gt;&gt;LblWindowOpacity.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblWindowOpacity.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;LblWindowOpacity.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="TbWindowOpacity.Location" type="System.Drawing.Point, System.Drawing">
<value>87, 98</value>
</data>
<data name="TbWindowOpacity.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 45</value>
</data>
<data name="TbWindowOpacity.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
</data>
<data name="&gt;&gt;TbWindowOpacity.Name" xml:space="preserve">
<value>TbWindowOpacity</value>
</data>
<data name="&gt;&gt;TbWindowOpacity.Type" xml:space="preserve">
<value>System.Windows.Forms.TrackBar, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TbWindowOpacity.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;TbWindowOpacity.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>7, 17</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>PageSettings</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>GrasscutterTools.Pages.BasePage, GrasscutterTools, Version=1.13.0.0, Culture=neutral, PublicKeyToken=de2b1c089621e923</value>
</data>
</root>

View File

@@ -0,0 +1,158 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="LblPageTitle.Size" type="System.Drawing.Size, System.Drawing">
<value>73, 17</value>
</data>
<data name="LblPageTitle.Text" xml:space="preserve">
<value>Настройка</value>
</data>
<data name="LblIncludeUidTip.Size" type="System.Drawing.Size, System.Drawing">
<value>217, 17</value>
</data>
<data name="LblIncludeUidTip.Text" xml:space="preserve">
<value>Требуется только режим консоли</value>
</data>
<data name="GrpPageList.Text" xml:space="preserve">
<value>Список страниц</value>
</data>
<data name="BtnResetPageList.Text" xml:space="preserve">
<value>Восстановление</value>
</data>
<data name="LblGcVersionTip.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 17</value>
</data>
<data name="LblGcVersionTip.Text" xml:space="preserve">
<value>Различие версий команд </value>
</data>
<data name="ChkTopMost.Size" type="System.Drawing.Size, System.Drawing">
<value>140, 21</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>Последняя версия</value>
</data>
<data name="LblWindowOpacity.Size" type="System.Drawing.Size, System.Drawing">
<value>67, 34</value>
</data>
<data name="LblWindowOpacity.Text" xml:space="preserve">
<value>Непрозр-
ачность</value>
</data>
</root>

View File

@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="LblPageTitle.Text" xml:space="preserve">
<value>程式設定</value>
</data>
<data name="LblIncludeUidTip.Text" xml:space="preserve">
<value>僅控制台模式勾選</value>
</data>
<data name="GrpPageList.Text" xml:space="preserve">
<value>頁面清單</value>
</data>
<data name="BtnResetPageList.Text" xml:space="preserve">
<value>恢復預設值</value>
</data>
<data name="LblGcVersionTip.Text" xml:space="preserve">
<value>用於區分命令版本</value>
</data>
<data name="ChkTopMost.Text" xml:space="preserve">
<value>窗口置頂</value>
</data>
</root>

View File

@@ -33,10 +33,12 @@ namespace GrasscutterTools.Pages
{
internal partial class PageSpawn : BasePage
{
public override string Text => Resources.PageSpawnTitle;
public PageSpawn()
{
InitializeComponent();
if (DesignMode) return;
InitSpawnRecord();
}

View File

@@ -16,7 +16,7 @@ namespace GrasscutterTools.Pages
{
internal partial class PageTasks : BasePage
{
private const string TAG = nameof(PageTasks);
public override string Text => Resources.PageTasksTitle;
public PageTasks()
{
@@ -83,7 +83,7 @@ namespace GrasscutterTools.Pages
catch (Exception ex)
{
Tasks = new List<LoopTask>();
Logger.W(TAG, "Parsing Tasks json failed", ex);
Logger.W(Name, "Parsing Tasks json failed", ex);
}
}
else
@@ -228,7 +228,7 @@ namespace GrasscutterTools.Pages
{
try
{
Logger.I(TAG, $"Task \"{task.Tag}\" started");
Logger.I(Name, $"Task \"{task.Tag}\" started");
// 循环执行命令
for (int c = 0;
!token.IsCancellationRequested
@@ -250,14 +250,14 @@ namespace GrasscutterTools.Pages
{
// 任务结束后取消勾选状态
BeginInvoke(new Action(() => item.Checked = false));
Logger.I(TAG, $"Task \"{task.Tag}\" stoped");
Logger.I(Name, $"Task \"{task.Tag}\" stoped");
}
}, token);
}
}
catch (Exception ex)
{
Logger.E(TAG, "Start or Stop Task failed.", ex);
Logger.E(Name, "Start or Stop Task failed.", ex);
MessageBox.Show(ex.ToString(), Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

View File

@@ -36,6 +36,8 @@ namespace GrasscutterTools.Pages
{
internal partial class PageTools : BasePage
{
public override string Text => "Tools";
public PageTools()
{
InitializeComponent();