增加快进功能

This commit is contained in:
ww-rm
2025-03-26 02:31:07 +08:00
parent 2d44be31f7
commit a7441b968d
5 changed files with 378 additions and 195 deletions

View File

@@ -34,9 +34,12 @@
tableLayoutPanel1 = new TableLayoutPanel(); tableLayoutPanel1 = new TableLayoutPanel();
panel_Container = new Panel(); panel_Container = new Panel();
flowLayoutPanel1 = new FlowLayoutPanel(); flowLayoutPanel1 = new FlowLayoutPanel();
button_Start = new Button();
imageList = new ImageList(components);
button_Stop = new Button(); button_Stop = new Button();
imageList = new ImageList(components);
button_Restart = new Button();
button_Start = new Button();
button_ForwardStep = new Button();
button_ForwardFast = new Button();
toolTip = new ToolTip(components); toolTip = new ToolTip(components);
tableLayoutPanel1.SuspendLayout(); tableLayoutPanel1.SuspendLayout();
panel_Container.SuspendLayout(); panel_Container.SuspendLayout();
@@ -46,7 +49,7 @@
// panel // panel
// //
panel.BackColor = SystemColors.ControlDarkDark; panel.BackColor = SystemColors.ControlDarkDark;
panel.Location = new Point(151, 136); panel.Location = new Point(157, 136);
panel.Margin = new Padding(0); panel.Margin = new Padding(0);
panel.Name = "panel"; panel.Name = "panel";
panel.Size = new Size(320, 320); panel.Size = new Size(320, 320);
@@ -88,14 +91,59 @@
flowLayoutPanel1.Anchor = AnchorStyles.None; flowLayoutPanel1.Anchor = AnchorStyles.None;
flowLayoutPanel1.AutoSize = true; flowLayoutPanel1.AutoSize = true;
flowLayoutPanel1.AutoSizeMode = AutoSizeMode.GrowAndShrink; flowLayoutPanel1.AutoSizeMode = AutoSizeMode.GrowAndShrink;
flowLayoutPanel1.Controls.Add(button_Start);
flowLayoutPanel1.Controls.Add(button_Stop); flowLayoutPanel1.Controls.Add(button_Stop);
flowLayoutPanel1.Location = new Point(254, 594); flowLayoutPanel1.Controls.Add(button_Restart);
flowLayoutPanel1.Controls.Add(button_Start);
flowLayoutPanel1.Controls.Add(button_ForwardStep);
flowLayoutPanel1.Controls.Add(button_ForwardFast);
flowLayoutPanel1.Location = new Point(138, 594);
flowLayoutPanel1.Margin = new Padding(0); flowLayoutPanel1.Margin = new Padding(0);
flowLayoutPanel1.Name = "flowLayoutPanel1"; flowLayoutPanel1.Name = "flowLayoutPanel1";
flowLayoutPanel1.Size = new Size(132, 42); flowLayoutPanel1.Size = new Size(365, 42);
flowLayoutPanel1.TabIndex = 1; flowLayoutPanel1.TabIndex = 1;
// //
// button_Stop
//
button_Stop.AutoSize = true;
button_Stop.AutoSizeMode = AutoSizeMode.GrowAndShrink;
button_Stop.ImageKey = "stop";
button_Stop.ImageList = imageList;
button_Stop.Location = new Point(3, 3);
button_Stop.Name = "button_Stop";
button_Stop.Padding = new Padding(15, 3, 15, 3);
button_Stop.Size = new Size(67, 36);
button_Stop.TabIndex = 0;
toolTip.SetToolTip(button_Stop, "停止播放并重置时间到初始");
button_Stop.UseVisualStyleBackColor = true;
button_Stop.Click += button_Stop_Click;
//
// imageList
//
imageList.ColorDepth = ColorDepth.Depth32Bit;
imageList.ImageStream = (ImageListStreamer)resources.GetObject("imageList.ImageStream");
imageList.TransparentColor = Color.Transparent;
imageList.Images.SetKeyName(0, "stop");
imageList.Images.SetKeyName(1, "restart");
imageList.Images.SetKeyName(2, "start");
imageList.Images.SetKeyName(3, "pause");
imageList.Images.SetKeyName(4, "forward-step");
imageList.Images.SetKeyName(5, "forward-fast");
//
// button_Restart
//
button_Restart.AutoSize = true;
button_Restart.AutoSizeMode = AutoSizeMode.GrowAndShrink;
button_Restart.ImageKey = "restart";
button_Restart.ImageList = imageList;
button_Restart.Location = new Point(76, 3);
button_Restart.Name = "button_Restart";
button_Restart.Padding = new Padding(15, 3, 15, 3);
button_Restart.Size = new Size(67, 36);
button_Restart.TabIndex = 1;
toolTip.SetToolTip(button_Restart, "从头开始播放");
button_Restart.UseVisualStyleBackColor = true;
button_Restart.Click += button_Restart_Click;
//
// button_Start // button_Start
// //
button_Start.AutoSize = true; button_Start.AutoSize = true;
@@ -103,38 +151,44 @@
button_Start.BackgroundImageLayout = ImageLayout.Center; button_Start.BackgroundImageLayout = ImageLayout.Center;
button_Start.ImageKey = "pause"; button_Start.ImageKey = "pause";
button_Start.ImageList = imageList; button_Start.ImageList = imageList;
button_Start.Location = new Point(3, 3); button_Start.Location = new Point(149, 3);
button_Start.Name = "button_Start"; button_Start.Name = "button_Start";
button_Start.Padding = new Padding(15, 3, 15, 3); button_Start.Padding = new Padding(15, 3, 15, 3);
button_Start.Size = new Size(60, 36); button_Start.Size = new Size(67, 36);
button_Start.TabIndex = 1; button_Start.TabIndex = 2;
toolTip.SetToolTip(button_Start, "开始/暂停"); toolTip.SetToolTip(button_Start, "开始/暂停");
button_Start.UseVisualStyleBackColor = true; button_Start.UseVisualStyleBackColor = true;
button_Start.Click += button_Start_Click; button_Start.Click += button_Start_Click;
// //
// imageList // button_ForwardStep
// //
imageList.ColorDepth = ColorDepth.Depth32Bit; button_ForwardStep.AutoSize = true;
imageList.ImageStream = (ImageListStreamer)resources.GetObject("imageList.ImageStream"); button_ForwardStep.AutoSizeMode = AutoSizeMode.GrowAndShrink;
imageList.TransparentColor = Color.Transparent; button_ForwardStep.ImageKey = "forward-step";
imageList.Images.SetKeyName(0, "start"); button_ForwardStep.ImageList = imageList;
imageList.Images.SetKeyName(1, "pause"); button_ForwardStep.Location = new Point(222, 3);
imageList.Images.SetKeyName(2, "stop"); button_ForwardStep.Name = "button_ForwardStep";
button_ForwardStep.Padding = new Padding(15, 3, 15, 3);
button_ForwardStep.Size = new Size(67, 36);
button_ForwardStep.TabIndex = 3;
toolTip.SetToolTip(button_ForwardStep, "快进 1 帧");
button_ForwardStep.UseVisualStyleBackColor = true;
button_ForwardStep.Click += button_ForwardStep_Click;
// //
// button_Stop // button_ForwardFast
// //
button_Stop.AutoSize = true; button_ForwardFast.AutoSize = true;
button_Stop.AutoSizeMode = AutoSizeMode.GrowAndShrink; button_ForwardFast.AutoSizeMode = AutoSizeMode.GrowAndShrink;
button_Stop.ImageKey = "stop"; button_ForwardFast.ImageKey = "forward-fast";
button_Stop.ImageList = imageList; button_ForwardFast.ImageList = imageList;
button_Stop.Location = new Point(69, 3); button_ForwardFast.Location = new Point(295, 3);
button_Stop.Name = "button_Stop"; button_ForwardFast.Name = "button_ForwardFast";
button_Stop.Padding = new Padding(15, 3, 15, 3); button_ForwardFast.Padding = new Padding(15, 3, 15, 3);
button_Stop.Size = new Size(60, 36); button_ForwardFast.Size = new Size(67, 36);
button_Stop.TabIndex = 0; button_ForwardFast.TabIndex = 4;
toolTip.SetToolTip(button_Stop, "停止更新并重置时间到初始"); toolTip.SetToolTip(button_ForwardFast, "快进 10 帧");
button_Stop.UseVisualStyleBackColor = true; button_ForwardFast.UseVisualStyleBackColor = true;
button_Stop.Click += button_Stop_Click; button_ForwardFast.Click += button_ForwardFast_Click;
// //
// SpinePreviewer // SpinePreviewer
// //
@@ -162,5 +216,8 @@
private Button button_Start; private Button button_Start;
private ImageList imageList; private ImageList imageList;
private ToolTip toolTip; private ToolTip toolTip;
private Button button_ForwardStep;
private Button button_ForwardFast;
private Button button_Restart;
} }
} }

View File

@@ -287,6 +287,7 @@ namespace SpineViewer.Controls
return; return;
cancelToken = new(); cancelToken = new();
task = Task.Run(RenderTask, cancelToken.Token); task = Task.Run(RenderTask, cancelToken.Token);
IsUpdating = true;
} }
/// <summary> /// <summary>
@@ -294,6 +295,7 @@ namespace SpineViewer.Controls
/// </summary> /// </summary>
public void StopRender() public void StopRender()
{ {
IsUpdating = false;
if (task is null || cancelToken is null) if (task is null || cancelToken is null)
return; return;
cancelToken.Cancel(); cancelToken.Cancel();
@@ -307,7 +309,7 @@ namespace SpineViewer.Controls
#region #region
/// <summary> /// <summary>
/// 是否还在更新画面 /// 是否更新画面
/// </summary> /// </summary>
public bool IsUpdating public bool IsUpdating
{ {
@@ -329,36 +331,10 @@ namespace SpineViewer.Controls
private bool isUpdating = true; private bool isUpdating = true;
/// <summary> /// <summary>
/// 开始更新 /// 快进时间量
/// </summary> /// </summary>
public void StartUpdate() private float forwardDelta = 0;
{ private object _forwardDeltaLock = new();
IsUpdating = true;
}
/// <summary>
/// 暂停更新
/// </summary>
public void PauseUpdate()
{
IsUpdating = false;
}
/// <summary>
/// 停止更新, 将所有模型动画时间重置到 0 时刻
/// </summary>
public void StopUpdate()
{
IsUpdating = false;
if (SpineListView is not null)
{
lock (SpineListView.Spines)
{
foreach (var spine in SpineListView.Spines)
spine.CurrentAnimation = spine.CurrentAnimation;
}
}
}
/// <summary> /// <summary>
/// 预览画面背景色 /// 预览画面背景色
@@ -421,7 +397,17 @@ namespace SpineViewer.Controls
var spine = spines[i]; var spine = spines[i];
spine.Update(IsUpdating ? delta : 0); // 只是时间不前进, 但是坐标变换还是要更新, 否则无法移动对象 // 停止更新的时候只是时间不前进, 但是坐标变换还是要更新, 否则无法移动对象
if (!IsUpdating) delta = 0;
// 加上要快进的量
lock (_forwardDeltaLock)
{
delta += forwardDelta;
forwardDelta = 0;
}
spine.Update(delta);
if (RenderSelectedOnly && !spine.IsSelected) if (RenderSelectedOnly && !spine.IsSelected)
continue; continue;
@@ -607,15 +593,55 @@ namespace SpineViewer.Controls
private void button_Stop_Click(object sender, EventArgs e) private void button_Stop_Click(object sender, EventArgs e)
{ {
StopUpdate(); IsUpdating = false;
if (SpineListView is not null)
{
lock (SpineListView.Spines)
{
foreach (var spine in SpineListView.Spines)
spine.CurrentAnimation = spine.CurrentAnimation;
}
}
}
private void button_Restart_Click(object sender, EventArgs e)
{
if (SpineListView is not null)
{
lock (SpineListView.Spines)
{
foreach (var spine in SpineListView.Spines)
spine.CurrentAnimation = spine.CurrentAnimation;
}
}
IsUpdating = true;
} }
private void button_Start_Click(object sender, EventArgs e) private void button_Start_Click(object sender, EventArgs e)
{ {
if (IsUpdating) IsUpdating = !IsUpdating;
PauseUpdate(); }
else
StartUpdate(); private void button_ForwardStep_Click(object sender, EventArgs e)
{
lock (_forwardDeltaLock)
{
forwardDelta += 1f / maxFps;
} }
} }
private void button_ForwardFast_Click(object sender, EventArgs e)
{
lock (_forwardDeltaLock)
{
forwardDelta += 10f / maxFps;
}
}
//public void ClickStopButton() => button_Stop_Click(button_Stop, EventArgs.Empty);
//public void ClickRestartButton() => button_Restart_Click(button_Restart, EventArgs.Empty);
//public void ClickStartButton() => button_Start_Click(button_Start, EventArgs.Empty);
//public void ClickForwardStepButton() => button_ForwardStep_Click(button_ForwardStep, EventArgs.Empty);
//public void ClickForwardFastButton() => button_ForwardFast_Click(button_ForwardFast, EventArgs.Empty);
}
} }

View File

@@ -124,117 +124,200 @@
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAEZTeXN0ZW0uV2luZG93cy5Gb3JtcywgQ3VsdHVyZT1uZXV0cmFs AAEAAAD/////AQAAAAAAAAAMAgAAAEZTeXN0ZW0uV2luZG93cy5Gb3JtcywgQ3VsdHVyZT1uZXV0cmFs
LCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5BQEAAAAmU3lzdGVtLldpbmRvd3MuRm9ybXMu LCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5BQEAAAAmU3lzdGVtLldpbmRvd3MuRm9ybXMu
SW1hZ2VMaXN0U3RyZWFtZXIBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA0hkAAAJNU0Z0AUkBTAIBAQMB SW1hZ2VMaXN0U3RyZWFtZXIBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAAHi0AAAJNU0Z0AUkBTAIBAQYB
AAEIAQABCAEAARwBAAEcAQAE/wEhAQAI/wFCAU0BNgcAATYDAAEoAwABcAMAARwDAAEBAQABIAYAATEa AAFwAQABcAEAAR8BAAEYAQAE/wEhAQAI/wFCAU0BNgcAATYDAAEoAwABfAMAATADAAEBAQABIAYAAV0q
AAMkATQDNgGcAxoB2wMaAdsDGgHbAxoB2wMmATsDDAEPAwIBA0wAAwcBCQMzAU4DPQGnAxoB2wMaAdsD AAQCAy0BRQNbAc0DXQHoA1kBxgMyAU8DDwEUBAIYAAMOARIDQwF3A10BzwNbAc0DLQFFBAIYAANWAbID
GgHbAxoB2wMaAdsDGgHbAzcBpgMvAUcDBAEFBAADBAEFAy8BRwM3AaYDGgHbAxoB2wMaAdsDGgHbAxoB XQHoA1wB1gNDAXcDFgEeBAIYAAMKAQ0DSQGFA14B4wNfAeUDUQGeAyQBNAMJAQsEARgAAwsBDgM7AWQD
2wMaAdsDPQGnAzMBTgMHAQkIAAMmBDgBqgMhAdgDGgHbAxoB2wMaAdsDGgHbAxoB2wMaAdsDGgHbAxoB XgHSA1YBsv8AEQAEAgMxAUwDYQHhAwAB/wMuAfkDYAHbA0QBewMeASoDBgEIFAADGAEhA1cBwgMhAfsD
2wMaAdsDGgHbAxoB2wMaAdsDGgHbAxoB2wMaAdsDGgHbAxoB2wMaAdsDGgHbAxoB2wMaAdsDMwHHA0YB YQHhAzEBTAQCGAADWQHDAwAB/wMhAfwDXAHrA0gBhAMWAR4YAAMLAQ4DTQGSAysB+QMPAf4DUAHyA1gB
iQMcASZ0AAMFAQYDNQFUAy8BwwMDAf4DBAH+AwIB/gMAAf8DNgG+Az4BcgMmATcDDgESSAADIQEuAzoB ugM3AVoDEQEWAwIBAxQAAxcBHwNJAYYDXAHrA1kBw/8AEQAEAgMxAUwDYQHhAwAB/wMAAf8DHgH9A2AB
nAMUAe4DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DEAHuAzUBogMUARsEAAMVARwDNAGjAxAB7gMAAf8D 4ANQAZoDLgFGAxEBFgMGAQcEAQgAAxoBJANbAc0DAAH/A2EB4QMxAUwEAhgAA1kBwwMAAf8DAAH/AwAB
AAH/AwAB/wMAAf8DAAH/AwAB/wMUAe4DOgGcAyEBLggAAy8BrwMRAe8DAwH+AwAB/wMAAf8DAAH/AwAB /wNbAdADPgFrAw8BEwMCAQMQAAMLAQ4DTQGSAysB+QMAAf8DAAH/AzkB9gNcAcsDRAF5Ax4BKgMGAQcM
/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB AAQBAxgBIQNKAYsDWwHsA1kBw/8AEQAEAgMxAUwDYQHhAwAB/wMuAfkDXAHnA0MB9QNWAe4DWQG7A0MB
/wMAAf8DAAH/AwsB+QMrAdkDRgGIdAADDwETA0QBggMpAdwDGAHuAzcBzgMzAcIDAAH/AxAB+AMoAdMD dwMoATsDDwEUBAEEAAMaASQDWwHNAwAB/wNhAeEDMQFMBAIYAANZAcMDIAH8A1AB8ANDAfUDLgH5A10B
PwGdAz0BaAMnATgDCAEKQAADKQE9Ay8BtgMAAf8DFAHuAzcBwQM4AbYDOAG2AzcByAMZAeoDAAH/AycB zgNDAXcDGgEjAwIBAwwAAwsBDgNNAZIDKwH5AwEB/wMkAfoDOgH4Ay4B+QNdAeMDTgGYAyQBNQMGAQgE
wgMaASQEAAMdBCgBwwMAAf8DGQHqAzcByAM4AbYDOAG2AzcBxAMTAe8DAAH/Ay8BtgMpAT0EAAMIAQoD AQQABAEDGAEhA0oBiwNbAewDWQHD/wARAAQCAzEBTANhAeEDAAH/A1wB2QM7AWMDWQG7Az0B9wM5AfgD
GQHcAwAB/wMdAeoDNAHLAzgBtgM4AbYDOAG2AzgBtgM4AbYDOAG2AzgBtgM4AbYDOAG2AzgBtgM4AbYD XAHnA1sBxQNBAXMDEwEZAwIBAwMaASQDWwHNAwAB/wNhAeEDMQFMBAIYAANZAcMDXAHrA1ABmgNVAbED
OAG2AzgBtgM4AbYDOAG2AzgBtgM4AbYDOAG2AzkBtwMzAcwDHQHrAwsB+QMzAcd0AAMUARsDSQGeAyMB TQHzAyEB+wNbAeQDSwGPAxsBJQMDAQQIAAMLAQ4DTQGSAysB+QMfAf0DXAHZA1oBxwNDAfUDDwH+A1wB
6wMrAdcDRwGKAzgBXgMvAbYDLgHKAxAB8QMdAeoDNAHLAz4BnAMyAU4EATwAAykBPQMvAbYDAAH/AyQB 6wNSAaMDJQE3AwMBBAQABAEDGAEhA0oBiwNbAewDWQHD/wARAAQCAzEBTANhAeEDAAH/A1sBzQMaASQD
1AM7AWMDMQFJAzEBSQNCAXQDLQHLAwAB/wMnAcIDGgEkBAADHwEsAycBxQMAAf8DLQHLA0IBdAMxAUkD FgEdA1UBrwMAAf8DAAH/AwAB/wMAAf8DVQGvAxYBHQMaASQDWwHNAwAB/wNhAeEDMQFMBAIYAANZAcMD
MQFJAz4BawMjAdYDAAH/Ay8BtgMpAT0EAAMrAT8DFQHkAwAB/wM0AcsDRAF9AzEBSQMxAUkDMQFJAzEB WwHkAzsBZQMHAQkDSQGGAyEB+wMAAf8DAAH/A1kBwQMdASkIAAMLAQ4DTQGSAysB+QMrAfkDTQGSAzkE
SQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEB XgHiAwAB/wMAAf8DXQHjAzYBWAMFAQYEAAQBAxgBIQNKAYsDWwHsA1kBw/8AEQAEAgMxAUwDYQHhAwAB
SgNEAX8DMwHMAwAB/wMaAdt0AAMUARsDSQGeAyMB6wMuAcgDOgFeAw0BEQMpAT0DOwFgAzQBtgMQAe4D /wNbAc0DGgEkAwIBAwMTARoDRgF/A1sB3gMhAfsDDwH+AzkB+ANZAbsDOwFjA1wB2QMAAf8DYQHhAzEB
AAH/AxQB8QNAAbgDKgE/AyUBNAMLAQ40AAMpAT0DLwG2AwAB/wMnAcIDGgEkCAADKQE9Ay8BtgMAAf8D TAQCGAADWQHDA1sB5AM7AWUDBwQJAQwDOgFhA18B1QNCAfUDLgH5A1sBygMyAU8DDwEUAw0BEQNNAZID
JwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8BtgMpAT0IAAMhAS8DJgHGAwAB/wMvAbYDKQE9BAADSQGKAxIB KwH5AysB+QNNAZIDEQEWAy0BRANaAb8DUgHvAyEB+wNdAdwDPwFuAxYBHgMEAQUDGAEhA0oBiwNbAewD
7gMAAf8DOAG2AzEBSUgABAEDMQFKAzkBtwMAAf8DGgHbdAADFAEbA0kBngMjAesDLgHIAzoBXgMHAQkE WQHD/wARAAQCAzEBTANhAeEDAAH/A1sBzQMaASQEAAQCAxMBGgM9AWcDWQHAA1IB7wMPAf4DPQH3A1wB
AAMIAQoDLwFIAzcBpgMWAeUDDAH2AwkB+gM2AdsDRAHBAzEBUAMUARoDCAEKLAADKQE9Ay8BtgMAAf8D 5wMuAfkDAAH/A2EB4QMxAUwEAhgAA1kBwwNbAeQDOwFlAwcBCQQAAwsBDgMxAU0DWAG9AzkB9gMuAfkD
JwHCAxoBJAgAAykBPQMvAbYDAAH/AycBwgMaASQEAAMgAS4DJgHGAwAB/wMvAbYDKQE9CAADIQEvAyYB YAHbA0QBeAMhAS8DTgGVAysB+QMrAfkDTQGSAwsBDgMGAQgDIAEuA00BkgNdAdwDQwH1A1oB6QNOAZYD
xgMAAf8DLwG2AykBPQQAA1IBqwMQAfMDAAH/AzgBtgMxAUlMAAMxAUkDOAG2AwAB/wMaAdt0AAMUARsD KAE8AyABLQNLAY0DWwHsA1kBw/8AEQAEAgMxAUwDYQHhAwAB/wNbAc0DGgEkCAAEAgMMARADLwFJA1IB
SQGeAyMB6wMuAcgDOgFeAwcBCRAAAzEBSQM+AcIDAAH/AwAB/wMAAf8DBQH+AzoBswMvAUcsAAMpAT0D owNbAeQDPQH3Aw8B/gMAAf8DAAH/A2EB4QMxAUwEAhgAA1kBwwNbAeQDOwFlAwcBCQgAAxABFQM/AW0D
LwG2AwAB/wMnAcIDGgEkCAADKQE9Ay8BtgMAAf8DJwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8BtgMpAT0I XAHWAyQB+gMeAf0DXAHWA0QBeQNUAasDIQH7AysB+QNNAZIDCwEOBAADAwEEAxsBJgNBAXMDWgHEA0UB
AAMhAS8DJgHGAwAB/wMvAbYDKQE9BAADUgGrAxAB8wMAAf8DOAG2AzEBSUwAAzEBSQM4AbYDAAH/AxoB 9ANWAe4DVQG0A0QBegNRAaIDVgHuA1kBw/8AEQAEAgMxAUwDYQHhAwAB/wNbAc0DGgEkEAADCAEKAyMB
23QAAxQBGwNJAZ4DIwHrAy4ByAM6AV4DBwEJEAADCAEKAyIBMQM+AX4DNgHbAwkB+gMBAf8DCwH0AzYB MwNEAXkDVwG8A18B5QMkAfoDAAH/A2EB4QMxAUwEAhgAA1kBwwNbAeQDOwFlAwcBCQgAAwMBBAMaASQD
sgM0AVIDGAEgJAADKQE9Ay8BtgMAAf8DJwHCAxoBJAgAAykBPQMvAbYDAAH/AycBwgMaASQEAAMgAS4D QgF0A14B0gMhAfsDOQH2A10B0QNgAeADHgH9AysB+QNNAZIDCwEOCAADAgEDAxIBFwM1AVUDWAG6A1UB
JgHGAwAB/wMvAbYDKQE9CAADIQEvAyYBxgMAAf8DLwG2AykBPQQAA1IBqwMQAfMDAAH/AzgBtgMxAUlM 8QM5AfYDWwHeA2AB2wM5AfgDWQHD/wARAAQCAzEBTANhAeEDAAH/A1sBzQMaASQUAAMCAQMDDgESAyMB
AAMxAUkDOAG2AwAB/wMaAdt0AAMUARsDSQGeAyMB6wMuAcgDOgFeAwcBCRQAAwYBBwMXAR4DKQE9A0EB MgM9AWgDXgHdAwAB/wNhAeEDMQFMBAIYAANZAcMDWwHkAzsBZQMHAQkMAAMCAQMDDwETAzQBUwNdAdED
rwM5AdEDGAHuAxEB7gMjAdIDLwGvAykBPQMaASQDBwEJGAADKQE9Ay8BtgMAAf8DJwHCAxoBJAgAAykB OQH4Ax8B/AMfAf0DAAH/AysB+QNNAZIDCwEODAAEAQMJAQwDIwEzA1UBrgMgAf0DHgH9Ax8B/AMPAf4D
PQMvAbYDAAH/AycBwgMaASQEAAMgAS4DJgHGAwAB/wMvAbYDKQE9CAADIQEvAyYBxgMAAf8DLwG2AykB WQHD/wARAAQCAzEBTANhAeEDAAH/A1sBzQMaASQgAAMaASQDWwHNAwAB/wNhAeEDMQFMBAIYAANZAcMD
PQQAA1IBqwMQAfMDAAH/AzgBtgMxAUlMAAMxAUkDOAG2AwAB/wMaAdt0AAMUARsDSQGeAyMB6wMuAcgD WwHkAzsBZQMHAQkYAAMPARQDVwG5AwAB/wMAAf8DAAH/AysB+QNNAZIDCwEOGAADRwGAA1wB7QMAAf8D
OgFeAwcBCSAAAysBPgM6AWMDQAGmAygB4QMNAfoDCQH1Ay8BtgNDAYkDLwFIAxABFRQAAykBPQMvAbYD AAH/AwAB/wNZAcP/ABEABAIDMQFMA2EB4QMAAf8DWwHNAxoBJBQABAIDBwEJAxYBHQM1AVUDXAHZAwAB
AAH/AycBwgMaASQIAAMpAT0DLwG2AwAB/wMnAcIDGgEkBAADIAEuAyYBxgMAAf8DLwG2AykBPQgAAyEB /wNhAeEDMQFMBAIYAANZAcMDWwHkAzsBZQMHAQkMAAQBAw0BEQM0AVMDXQHRAy4B+QMQAf4DDwH+AwAB
LwMmAcYDAAH/Ay8BtgMpAT0EAANSAasDEAHzAwAB/wM4AbYDMQFJTAADMQFJAzgBtgMAAf8DGgHbdAAD /wMrAfkDTQGSAwsBDgwABAEDCQELAx4BKwNTAakDIAH9Ax4B/QMfAfwDDwH+A1kBw/8AEQAEAgMxAUwD
FAEbA0kBngMjAesDLgHIAzoBXgMHAQkkAAMOARIDMAFKA0IBiQM0Ab8DEwH1AwAB/wMrAeEDQAGnAzsB YQHhAwAB/wNbAc0DGgEkEAADBwEJAxsBJgM0AVMDTQGSA14B3QMuAfkDAAH/A2EB4QMxAUwEAhgAA1kB
ZgMjATEDDQEQDAADKQE9Ay8BtgMAAf8DJwHCAxoBJAgAAykBPQMvAbYDAAH/AycBwgMaASQEAAMgAS4D wwNbAeQDOwFlAwcBCQgABAIDEAEVAzkBXgNbAc0DIQH7AyEB+wNcAecDVgHuAw8B/gMrAfkDTQGSAwsB
JgHGAwAB/wMvAbYDKQE9CAADIQEvAyYBxgMAAf8DLwG2AykBPQQAA1IBqwMQAfMDAAH/AzgBtgMxAUlM DggAAwIBAwMSARcDNQFVA1gBuANVAfEDOQH2A1sB3gNgAdsDOQH4A1kBw/8AEQAEAgMxAUwDYQHhAwAB
AAMxAUkDOAG2AwAB/wMaAdt0AAMUARsDSQGeAyMB6wMuAcgDOgFeAwcBCSgAAwoBDAMaASQDNAFYAzsB /wNbAc0DGgEkCAAEAgMMARADLgFGA00BkgNcAcgDXAHrAx4B/QMAAf8DAAH/A2EB4QMxAUwEAhgAA1kB
sAMnAcQDBwH3AxoB8QM3AdADQQGFAx8BKwwAAykBPQMvAbYDAAH/AycBwgMaASQIAAMpAT0DLwG2AwAB wwNbAeQDOwFlAwcBCQgAAwkBDAMxAU4DWAG3A00B8wMeAf0DXgHdA04BlgNZAb4DHwH8AysB+QNNAZID
/wMnAcIDGgEkBAADIAEuAyYBxgMAAf8DLwG2AykBPQgAAyEBLwMmAcYDAAH/Ay8BtgMpAT0EAANSAasD CwEOBAADAwEEAxsBJgNBAXMDWgHEA0UB9ANWAe4DVQG0A0QBegNRAaIDVgHuA1kBw/8AEQAEAgMxAUwD
EAHzAwAB/wM4AbYDMQFJTAADMQFJAzgBtgMAAf8DGgHbdAADFAEbA0kBngMjAesDLgHIAzoBXgMHAQkw YQHhAwAB/wNbAc0DGgEkBAAEAgMTARoDPQFnA1oBvwNcAesDJAH6AzoB9gNcAecDLgH5AwAB/wNhAeED
AAMHAQkDGAEgAx0BKQMlAcYDBwH2AwMB/gMyAbcDKgE/BAEIAAMpAT0DLwG2AwAB/wMnAcIDGgEkCAAD MQFMBAIYAANZAcMDWwHkAzsBZQMHAQkEAAMLAQ4DLgFHA1UBrQNSAe8DOgH4A2AB2wNEAXoDJAE1A04B
KQE9Ay8BtgMAAf8DJwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8BtgMpAT0IAAMhAS8DJgHGAwAB/wMvAbYD mAMjAfoDKwH5A00BkgMLAQ4DBgEIAyABLgNNAZIDXQHcA0MB9QNaAekDTgGWAygBPAMgAS0DSwGNA1sB
KQE9BAADUgGrAxAB8wMAAf8DOAG2AzEBSUwAAzEBSQM4AbYDAAH/AxoB23QAAxQBGwNJAZ4DIwHrAy4B 7ANZAcP/ABEABAIDMQFMA2EB4QMAAf8DWwHNAxoBJAMCAQMDEwEaA0YBfwNbAd4DIQH7Aw8B/gM5AfgD
yAM6AV4DBwEJPAADGgEkAycBwgMAAf8DLwHDAzUBVAMFAQYIAAMpAT0DLwG2AwAB/wMnAcIDGgEkCAAD WQG7AzsBYwNcAdkDAAH/A2EB4QMxAUwEAhgAA1kBwwNbAeQDOwFlAwcECQEMAzoBYQNdAdQDRQH0Ay4B
KQE9Ay8BtgMAAf8DJwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8BtgMpAT0IAAMhAS8DJgHGAwAB/wMvAbYD +QNbAcoDMgFPAw8BFAMNAREDTQGSAysB+QMrAfkDTQGSAxEBFgMtAUQDWgG/A1IB7wMgAfwDYAHgA0AB
KQE9BAADUgGrAxAB8wMAAf8DOAG2AzEBSUwAAzEBSQM4AbYDAAH/AxoB23QAAxQBGwNJAZ4DIwHrAy4B cQMXAR8DBAEFAxgBIQNKAYsDWwHsA1kBw/8AEQAEAgMxAUwDYQHhAwAB/wNbAc0DGgEkAxYBHQNVAa8D
yAM6AV4DBwEJMAADBwEJAxcBHwMaASQDJQHGAwcB9gMAAf8DMAG4AysBQAQBCAADKQE9Ay8BtgMAAf8D AAH/AwAB/wMAAf8DAAH/A1UBrwMWAR0DGgEkA1sBzQMAAf8DYQHhAzEBTAQCGAADWQHDA1sB5AM7AWUD
JwHCAxoBJAgAAykBPQMvAbYDAAH/AycBwgMaASQEAAMgAS4DJgHGAwAB/wMvAbYDKQE9CAADIQEvAyYB BwEJA0kBhgMhAfsDAAH/AwAB/wNZAcEDHQEpCAADCwEOA00BkgMrAfkDKwH5A00BkgM5BF4B4gMAAf8D
xgMAAf8DLwG2AykBPQQAA1IBqwMQAfMDAAH/AzgBtgMxAUlMAAMxAUkDOAG2AwAB/wMaAdt0AAMUARsD AAH/A1gB7QNKAYsDGAEgCAEDGAEhA0oBiwNbAewDWQHD/wARAAQCAzEBTANhAeEDAAH/A1wB2QM7AWMD
SQGeAyMB6wMuAcgDOgFeAwcBCSgAAwMBBAMSARgDMgFSAzwBrwMnAcIDBwH2AxkB8gM0AdYDQQGMAyEB WQG7Az0B9wMgAfwDRQH0A1wB2QNGAX4DEwEaAwIBAwMaASQDWwHNAwAB/wNhAeEDMQFMBAIYAANZAcMD
LgwAAykBPQMvAbYDAAH/AycBwgMaASQIAAMpAT0DLwG2AwAB/wMnAcIDGgEkBAADIAEuAyYBxgMAAf8D XAHrA1ABmgNVAbEDTQHzAyEB+wNfAeUDSwGPAxsBJQMDAQQIAAMLAQ4DTQGSAysB+QMhAfsDVgGzA0wB
LwG2AykBPQgAAyEBLwMmAcYDAAH/Ay8BtgMpAT0EAANSAasDEAHzAwAB/wM4AbYDMQFJTAADMQFJAzgB jgNcAesDDwH+A1AB8ANXAbkDLgFHAwYBCAQABAEDGAEhA0oBiwNbAewDWQHD/wARAAQCAzEBTANhAeED
tgMAAf8DGgHbdAADFAEbA0kBngMjAesDLgHIAzoBXgMHAQkkAAMOARIDKQE8Az8BdAM7AbQDEwH1AwAB AAH/Ay4B+QNcAecDQwH1A1QB8QNbAdMDUQGkAzgBWwMTARkEAgQAAxoBJANbAc0DAAH/A2EB4QMxAUwE
/wMXAfMDPAGvAz0BbAMmATcDDQERDAADKQE9Ay8BtgMAAf8DJwHCAxoBJAgAAykBPQMvAbYDAAH/AycB AhgAA1kBwwMgAfwDUAHwA0MB9QMfAf0DXgHXA0YBfgMaASQDAgEDDAADCwEOA00BkgMrAfkDDwH+A00B
wgMaASQEAAMgAS4DJgHGAwAB/wMvAbYDKQE9CAADIQEvAyYBxgMAAf8DLwG2AykBPQQAA1IBqwMQAfMD 8wNWAe4DPQH3A10B4wNOAZgDJwE5AwgBCgQBBAAEAQMYASEDSgGLA1sB7ANZAcP/ABEABAIDMQFMA2EB
AAH/AzgBtgMxAUlMAAMxAUkDOAG2AwAB/wMaAdt0AAMUARsDSQGeAyMB6wMuAcgDOgFeAwcBCSAAAyoB 4QMAAf8DAAH/Ax4B/QNhAeEDUgGjAzsBYwMhAS8DCgENBAIIAAMaASQDWwHNAwAB/wNhAeEDMQFMBAIY
PAM6AWIDPwGcAzAB0wMYAfIDCQH1Ay8BtgM+AaQDMgFSAxIBGAQCEAADKQE9Ay8BtgMAAf8DJwHCAxoB AANZAcMDAAH/AwAB/wMAAf8DXQHoA0oBiwMWAR0DBAEFEAADCwEOA00BkgMrAfkDAAH/AwAB/wM5AfYD
JAgAAykBPQMvAbYDAAH/AycBwgMaASQEAAMgAS4DJgHGAwAB/wMvAbYDKQE9CAADIQEvAyYBxgMAAf8D XAHLA0QBeQMeASoDBgEHDAAEAQMYASEDSgGLA1sB7ANZAcP/ABEABAIDMQFMA2EB4QMAAf8DLgH5A2AB
LwG2AykBPQQAA1IBqwMQAfMDAAH/AzgBtgMxAUlMAAMxAUkDOAG2AwAB/wMaAdt0AAMUARsDSQGeAyMB 2wNFAXwDIQEwAwwBEAMDAQQQAAMaASMDXAHIAx8B/QNhAeEDMQFMBAIYAANZAcMDAAH/AyEB/ANcAesD
6wMuAcgDOgFeAwcBCRgAAwcBCQMpAT0DQwGqAzoBzwMYAe4DDwHyAyIB2AMvAbEDKQE9AyQBMwMLAQ4Y TgGXAyMBMwQCFAADCwEOA00BkgMrAfkDDwH+A1AB8gNYAboDNwFaAxEBFgMCAQMUAAMXAR8DSQGGA1wB
AAMpAT0DLwG2AwAB/wMnAcIDGgEkCAADKQE9Ay8BtgMAAf8DJwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8B 6wNZAcP/ABEABAIDLQFFA14B0gNQAfIDXQHJAzIBTwMQARUDAgEDGAADEwEaA1ABnwNbAeQDWwHQAy0B
tgMpAT0IAAMhAS8DJgHGAwAB/wMvAbYDKQE9BAADUgGrAxAB8wMAAf8DOAG2AzEBSUwAAzEBSQM4AbYD RQQCGAADVQG0A1cB7gNfAdoDRAF4AxgBIAMDAQQYAAMKAQ0DSQGGA10B6ANaAekDUAGfAyQBNAMJAQsE
AAH/AxoB23QAAxQBGwNJAZ4DIwHrAy4ByAM6AV4DBwEJEAADCAEKAxUBHAMpAT8DNgHbAw4B+AMBAf8D ARgAAwsBDgM7AWUDWwHTA1YBsv8AFQADAwEEAycBOgM/AW0DFAEbKAADDwETAzEBTgMdASkDAgEDHAAD
CwH1AzUBvQM9AWYDGwElJAADKQE9Ay8BtgMAAf8DJwHCAxoBJAgAAykBPQMvAbYDAAH/AycBwgMaASQE DgESAzEBTQMjATMDBAEFJAADBgEHAygBPAMoATwDBgEHJAAEAQMHAQkDCwEOAwIBA/8ABQADAgEDAw8B
AAMgAS4DJgHGAwAB/wMvAbYDKQE9CAADIQEvAyYBxgMAAf8DLwG2AykBPQQAA1IBqwMQAfMDAAH/AzgB FANJAYgDXwHlA10B6ANdAegDXQHoA10B6ANdAegDXQHoA10B6ANdAegDXQHoA10B6ANdAegDXQHoA10B
tgMxAUlMAAMxAUkDOAG2AwAB/wMaAdt0AAMUARsDSQGeAyMB6wMuAcgDOgFeAwcBCRAAAzEBSQM+AcID 6ANdAegDXQHoA10B6ANdAegDXQHoA1sB5ANGAX4DBQEGBAEoAAMCAQMDDQERAx8BLAMtAUYDVwG5A10B
AAH/AwAB/wMAAf8DAAH/AzgBtgMxAUksAAMpAT0DLwG2AwAB/wMnAcIDGgEkCAADKQE9Ay8BtgMAAf8D 6ANdAegDXQHoA10B6ANdAegDXQHoA18B4wNZAb4DMgFPAw8BEwMCAQMwAAMTARkDRgF+A10B6ANdAegD
JwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8BtgMpAT0IAAMhAS8DJgHGAwAB/wMvAbYDKQE9BAADUgGrAxAB WQHBAzkBXgMmATgDDwEUBAJcAAM5AV8DXgHiA1wB5wNdAegDXQHoA10B6ANdAegDXQHcAzwBZgMGAQgD
8wMAAf8DOAG2AzEBSUwAAzEBSQM4AbYDAAH/AxoB23QAAxQBGwNJAZ4DIwHrAy4ByAM6AV4DBwEJBAAD BgEIAzwBZgNdAdwDXQHoA10B6ANdAegDXQHoA10B3ANQAZ0DJQE2IAADDAEQAzwBZgNdAc8DHgH9AyQB
BAEFAysEQAGZAygB3AMMAfYDBQH9Ax4B8wNCAcQDMQFQAxQBGgMIAQosAAMpAT0DLwG2AwAB/wMnAcID +gNSAe8DWAHtA1gB7QNYAe0DWAHtA1gB7QNYAe0DWAHtA1gB7QNYAe0DWAHtA1gB7QNYAe0DWAHtA1gB
GgEkCAADKQE9Ay8BtgMAAf8DJwHCAxoBJAQAAyABLgMmAcYDAAH/Ay8BtgMpAT0IAAMhAS8DJgHGAwAB 7QNSAe8DJAH6AyAB/ANWAbUDKwFCAwgBCiQABAIDGAEhA0ABcANaAb8DXQHfA1oB7QNSAe8DWwHsA14B
/wMvAbYDKQE9BAADUgGrAxAB8wMAAf8DOAG2AzEBSUwAAzEBSQM4AbYDAAH/AxoB23QAAxQBGwNJAZ4D 5gNfAeUDWAHqA1gB7QNQAfADOgH2A10B0QNDAXcDHgErAwYBBywAAz0BaQNbAd4DAQH/Ay4B+QNcAewD
IwHrAy4ByAM6AV4DDQERAykBPQMzAVADNQGvAxcB6QMHAfwDFAHxAz0BxANDAZUDLAFBAwsBDjQAAykB WwHkA14B1wNEAXsDHgEqAwYBCFgAAz8BbAMfAf0DOQH4A1IB7wNYAe0DVgHuAyQB+gM5AfYDTwGbAx4B
PQMvAbYDAAH/AycBwgMaASQIAAMpAT0DLwG2AwAB/wMnAcIDGgEkBAADIAEuAyYBxgMAAf8DLwG2AykB KwMgAS0DUAGdAzkB9gMkAfoDVgHuA1gB7QNSAe8DPQH3A1AB8gM7AWUgAAMTARkDUAGcAz0B9wM6AfYD
PQgAAyEBLwMmAcYDAAH/Ay8BtgMpAT0EAANMAZIDEgHvAwAB/wM4AbYDMQFJTAADMQFJAzgBtgMAAf8D XQHMA0sBjQNGAYADRgGAA0YBgANGAYADRgGAA0YBgANGAYADRgGAA0YBgANGAYADRgGAA0YBgANGAYAD
GgHbdAADFAEbA0kBngMjAesDLQHQA0YBfgM3AVsDLwG2Ay8BwQMQAe4DHQHqAzQBywM+AZwDNQFVAyIB RgGAA0sBjwNcAdkDHgH9A1QB8QNOAZQDEgEYJAADBQEGAzEBTgNbAdADUAHyA14B4gNVAa4DSgGKA0YB
MAMGAQc4AAMpAT0DLwG2AwAB/wMkAdQDOwFjAzEBSQMxAUkDQgF0Ay0BywMAAf8DJwHCAxoBJAQAAx8B fwNDAXcDQwF2A0UBfANGAYADTwGbA14B3QNdAegDXwHaA04BlgMoATwDCQEMKAADRwGDAzkB+AMgAfwD
LAMnAcUDAAH/Ay0BywNCAXQDMQFJAzEBSQM+AWsDIwHWAwAB/wMvAbYDKQE9BAADMgFOAxYB5gMAAf8D WwHTA1MBpgNcAdkDLgH5A2AB4ANQAZoDLQFEAwsBDlQAAz8BbAMgAfwDWwHTA0wBjgNGAYADSgGKA10B
NAHLA0QBfQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkD 3AMfAf0DXgHdAzoBYAM6AWIDXQHfAx4B/QNdAdwDSgGKA0YBgANMAY4DWwHTAyAB/AM/AWwgAAMUARsD
MQFJAzEBSQMxAUkDMQFJAzEBSQMxAUkDRAF9AzQBywMAAf8DGgHbdAADDwETA0UBgwMoAd0DIQHkA0EB UgGlAx0B/QNbAdADPwFsAxgBIQMOARIDDgESAw4BEgMOARIDDgESAw4BEgMOARIDDgESAw4BEgMOARID
vQM2Ab4DAAH/AwQB/gMfAekDQAGpAz0BaQMnATgDCAEKQAADKQE9Ay8BtgMAAf8DFAHuAzcBwQM4AbYD DgESAw4BEgMOARIDDgESAyABLgNXAbkDHgH9Ax0B/QNSAaUDFAEbJAADBQEGAzEBTQNaAccDXAHIA0AB
OAG2AzcByAMZAeoDAAH/AycBwgMaASQEAAMdBCgBwwMAAf8DGQHqAzcByAM4AbYDOAG2AzcBxAMTAe8D bwMlATcDEwEaAw4BEgMNAREDDAEQAw4BEgMOARIDHQEoAzoBYANLAY8DWwHYA14B5gNWAbYDMQFNAwYB
AAH/Ay8BtgMpAT0EAAMPARMDGAHdAwAB/wMdAeoDNAHLAzgBtgM4AbYDOAG2AzgBtgM4AbYDOAG2AzgB CCQAA0kBhgMhAfsDLgH5A1UBrgMqAUADPwFtA10B0QNDAfUDVgHuA1gBtwM2AVcDFgEdAwwBEAQCSAAD
tgM4AbYDOAG2AzgBtgM4AbYDOAG2AzgBtgM4AbYDOAG2AzgBtgM4AbYDOAG2AzgBtgM0AcsDHQHqAwEB PwFsAy4B+QNVAa4DIAEtAw4BEgMbASUDWQG+AwAB/wNYAe0DPwFtAz8BbQNYAe0DAAH/A1kBvgMbASUD
/wMdAdl0AAMGAQcDNgFWAy8BxAMOAfkDGAH0AwgB/AMAAf8DKAHIA0MBmgMyAU0DDgESSAADIQEuAzoB DgESAyABLQNVAa4DLgH5Az8BbCAAAxQBGwNSAaUDHQH9A1YBtgMoATwDCAEKOAADFgEeA1YBswMeAf0D
nAMUAe4DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DEAHuAzUBogMUARsEAAMVARwDNAGjAxEB7gMAAf8D HQH9A1IBpQMUARskAAQBAw8BFAMjATMDIQEwAwsBDgMDAQQEARQABAIDBwEJAx4BKgNLAYwDXQHfAz0B
AAH/AwAB/wMAAf8DAAH/AwAB/wMUAe4DOgGcAyEBLggAAy8BrwMMAfEDAAH/AwAB/wMAAf8DAAH/AwAB 9wNTAakDKAE7JAADSQGGAyEB+wMuAfkDUwGnAxYBHgMMARADKgFAA1gBugNOAfMDRgH0A2AB2wNXAbwD
/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB QgF0AxMBGQMCAQNEAAM/AWwDLgH5A1MBpwMVARwEAAMPARQDVwG5AwAB/wNYAe0DPwFtAz8BbQNYAe0D
/wMAAf8DAAH/AwAB/wMOAfADNQGseAADJQE1AzYBnAMXAeIDFAHoAxgB3gMaAdsDKAE+AxMBGgMHAQlM AAH/A1cBuQMPARQEAAMVARwDUwGnAy4B+QM/AWwgAAMUARsDUgGlAx0B/QNVAbQDJgE4AwcBCTgAAxYB
AAMHAQkDMwFOAz0BpwMZAeADEQHwAxAB8wMQAfMDEgHuAxcB4gM2AacDLwFHAwQBBQQAAwUBBgMxAUoD HgNWAbMDHgH9Ax0B/QNSAaUDFAEbYAADFQEcA1MBpwMuAfkDIQH7A0kBhiQAA0kBhgMhAfsDLgH5A1MB
NgGqAxUB5AMSAe8DEAHzAxAB8wMRAfADGQHgAz0BpwMzAU4DBwEJCAADJwE5Ay8BrwMYAd0DFgHmAxIB pwMVARwIAAMPARMDQwF2A1wB2QMfAf0DAAH/AwAB/wNVAa8DFgEdRAADPwFsAy4B+QNTAacDFQEcBAAD
7wMQAfMDEAHzAxAB8wMQAfMDEAHzAxAB8wMQAfMDEAHzAxAB8wMQAfMDEAHzAxAB8wMQAfMDEAHzAxAB DwEUA1cBuQMAAf8DWAHtAz8BbQM/AW0DWAHtAwAB/wNXAbkDDwEUBAADFQEcA1MBpwMuAfkDPwFsIAAD
8wMQAfMDEAHzAxMB7gMVAeQDGQHcAy8BrwMnATmAAAMmATUDOwFhAxQBG2gAAx4BKQNMAZMDUgGrA1IB FAEbA1IBpQMdAf0DVQG0AyYBOAMHAQk4AAMWAR4DVgGzAx4B/QMdAf0DUgGlAxQBG2AAAwIBAwMeASoD
qwNIAYYDJgE3AwMBBBQAAwoBDQMuAUQDSgGNA1IBqwNSAasDTAGTAx4BKRwAAw8BEwMyAU0DTAGSA1IB VQG0Az0B9wNSAaADGwElAwUBBhwAA0kBhgMhAfsDLgH5A1MBpwMVARwIAAQCAwkBCwMYASADRAF6A2AB
qwNSAasDUgGrA1IBqwNSAasDUgGrA1IBqwNSAasDUgGrA1IBqwNSAasDUgGrA1IBqwNSAasDUgGrA1IB 2wM7AfcDPQH3A1kBuwMqAUADDgESAwUBBgQCNAADPwFsAy4B+QNTAacDFQEcBAADDwEUA1cBuQMAAf8D
qwNSAasDSgGLAywBQQMJAQt4AAFCAU0BPgcAAT4DAAEoAwABcAMAARwDAAEBAQABAQUAAcABARYAA/8B WAHtAz8BbQM/AW0DWAHtAwAB/wNXAbkDDwEUBAADFQEcA1MBpwMuAfkDPwFsIAADFAEbA1IBpQMdAf0D
AAHAAR8B/wH8AQABIAEBAYAIAAGAAQ8B/wH8AQABIAEBAYAIAAGAAQMB/wH8AQABIAEBCQABgAEBAf8B VQG0AyYBOAMHAQk4AAMWAR4DVgGzAx4B/QMdAf0DUgGlAxQBG2QAAw8BEwNAAW8DXQHUA1MB7wNMAZED
/AEAASABAQkAAYABAAF/AfwBGAEgAcEBBwH/Af4GAAGBAQABHwH8ARgBIAHBAQcC/wYAAYEB4AEfAfwB EgEYHAADSQGGAyEB+wMuAfkDUwGnAxUBHBAABAIDDQERAzYBVwNYAbcDWwHsA1UB8QNdAdEDRAF5AzMB
GAEgAcEBBwL/BgABgQHgAQcB/AEYASABwQEHAv8GAAGBAfABAAH8ARgBIAHBAQcC/wYAAYEB/gEAAXwB UAMbASYDBgEHMAADPwFsAy4B+QNTAacDFQEcBAADDwEUA1cBuQMAAf8DWAHtAz8BbQM/AW0DWAHtAwAB
GAEgAcEBBwL/BgABgQH/AQABHAEYASABwQEHAv8GAAGBAf8BgAEcARgBIAHBAQcC/wYAAYEB/wHgAQwB /wNXAbkDDwEUBAADFQEcA1MBpwMuAfkDPwFsIAADFAEbA1IBpQMdAf0DVQG0AyYBOAMHAQk4AAMWAR4D
GAEgAcEBBwL/BgABgQH/AfwBDAEYASABwQEHAv8GAAGBAf8B4AEMARgBIAHBAQcC/wYAAYEB/wGAARwB VgGzAx4B/QMdAf0DUgGlAxQBG2QAAwIBAwMPARMDUQGeAx0B/QNSAaUDFAEbHAADSQGGAyEB+wMuAfkD
GAEgAcEBBwL/BgABgQH/AQABHAEYASABwQEHAv8GAAGBAf4BAAE8ARgBIAHBAQcC/wYAAYEB+AEAAfwB UwGnAxUBHBgAAwsBDgMtAUQDSwGPA1sBxQNhAeEDYQHhA1sBzQNMAZADKAE7AwkBDCwAAz8BbAMuAfkD
GAEgAcEBBwL/BgABgQHgAQcB/AEYASABwQEHAv8GAAGBAeABHwH8ARgBIAHBAQcC/wYAAYEBAAEfAfwB UwGnAxUBHAQAAw8BFANXAbkDAAH/A1gB7QM/AW0DPwFtA1gB7QMAAf8DVwG5Aw8BFAQAAxUBHANTAacD
GAEgAcEBBwL/BgABgAEAAX8B/AEYASABwQEHAv8GAAGAAQAB/wH8AQABIAEBCQABgAEDAf8B/AEAASAB LgH5Az8BbCAAAxQBGwNSAaUDHQH9A1UBtAMmATgDBwEJOAADFgEeA1YBswMeAf0DHQH9A1IBpQMUARts
AQkAAYABDwH/AfwBAAEgAQEBgAgAAcABHwH/AfwBAAEgAQEBgAgAAfED/wGAAfgBDwHgAgABMAUACw== AANNAZMDHQH9A1IBpQMUARscAANJAYYDIQH7Ay4B+QNTAacDFQEcHAADBgEIAxkBIgMvAUkDQAFxA10B
zANNAfMDWgHpA1YBtgMtAUQsAAM/AWwDLgH5A1MBpwMVARwEAAMPARQDVwG5AwAB/wNYAe0DPwFtAz8B
bQNYAe0DAAH/A1cBuQMPARQEAAMVARwDUwGnAy4B+QM/AWwgAAMUARsDUgGlAx0B/QNVAbQDJgE4AwcB
CTgAAxYBHgNWAbMDHgH9Ax0B/QNSAaUDFAEbbAADTQGTAx0B/QNSAaUDFAEbHAADSQGGAyEB+wMuAfkD
UwGnAxUBHCAABAIDBAEFAwsBDgMwAUwDWQHBAzoB9gMsAfkDQQFyAwYBCCgAAz8BbAMuAfkDUwGnAxUB
HAQAAw8BFANXAbkDAAH/A1gB7QM/AW0DPwFtA1gB7QMAAf8DVwG5Aw8BFAQAAxUBHANTAacDLgH5Az8B
bCAAAxQBGwNSAaUDHQH9A1UBtAMmATgDBwEJOAADFgEeA1YBswMeAf0DHQH9A1IBpQMUARtsAANNAZMD
HQH9A1IBpQMUARscAANJAYYDIQH7Ay4B+QNTAacDFQEcMAADFQEcA1MBpwMuAfkDWwHTAzoBYSgAAz8B
bAMuAfkDUwGnAxUBHAQAAw8BFANXAbkDAAH/A1gB7QM/AW0DPwFtA1gB7QMAAf8DVwG5Aw8BFAQAAxUB
HANTAacDLgH5Az8BbCAAAxQBGwNSAaUDHQH9A1UBtAMmATgDBwEJOAADFgEeA1YBswMeAf0DHQH9A1IB
pQMUARsQAAQBAwQBBQMLAQ4DDwETAw8BEwMPARMDDwETAw8BEwMNAREDCQEMAwMBBAQBLAADTQGTAx0B
/QNSAaUDFAEbHAADSQGGAyEB+wMuAfkDUwGnAxUBHCAABAEDAgEDAwsBDgMwAUwDWQHBAzoB9gMsAfkD
QQFyAwYBCCgAAz8BbAMuAfkDUwGnAxUBHAQAAw8BFANXAbkDAAH/A1gB7QM/AW0DPwFtA1gB7QMAAf8D
VwG5Aw8BFAQAAxUBHANTAacDLgH5Az8BbCAAAxQBGwNSAaUDHQH9A1UBtAMmATgDBwEJOAADFgEeA1YB
swMeAf0DHQH9A1IBpQMUARsQAAMGAQgDJAE1Az4BawNGAX0DRgF+A0YBfgNGAX4DRgF+A0QBewM9AWkD
JAE0AwkBDCwAA00BkwMdAf0DUgGlAxQBGxwAA0kBhgMhAfsDLgH5A1MBpwMVARwcAAMGAQgDEgEXAyMB
MwM/AW4DWwHNAzoB9gNYAeoDVgG2Ay0BRCwAAz8BbAMuAfkDUwGnAxUBHAQAAw8BFANXAbkDAAH/A1gB
7QM/AW0DPwFtA1gB7QMAAf8DVwG5Aw8BFAQAAxUBHANTAacDLgH5Az8BbCAAAxQBGwNSAaUDHQH9A1UB
tAMmATgDBwEJOAADFgEeA1YBswMeAf0DHQH9A1IBpQMUARsQAAMQARUDRgF/A1wB2QNYAeoDXgHmA2EB
4QNgAeADXgHiA1wB5wNhAeEDUAGdAyEBMCQAAwIBAwMPARMDUQGeAx0B/QNSAaUDFAEbHAADSQGGAyEB
+wMuAfkDUwGnAxUBHBgAAwsBDgMtAUQDRgGBA1MBqQNdAd8DXQHoA18B2gNOAZYDKAE8AwkBDCwAAz8B
bAMuAfkDUwGnAxUBHAQAAw8BFANXAbkDAAH/A1gB7QM/AW0DPwFtA1gB7QMAAf8DVwG5Aw8BFAQAAxUB
HANTAacDLgH5Az8BbCAAAxQBGwNSAaUDHQH9A1UBtAMmATgDBwEJOAADFgEeA1YBswMeAf0DHQH9A1IB
pQMUARsQAAMTARoDTgGYA0IB9QMAAf8DYAHgA1YBtgNZAb4DXgHXAz0B9wMgAfwDWgHHAysBQiQAAw8B
EwNAAW8DXQHUA1MB7wNNAZIDEgEYHAADSQGGAyEB+wMuAfkDUwGnAxUBHBAABAIDDQERAzYBVwNYAbcD
WAHqA1wB7ANfAdUDSwGPAzoBYAMeASsDBgEHMAADPwFsAy4B+QNTAacDFQEcBAADDwEUA1cBuQMAAf8D
WAHtAz8BbQM/AW0DWAHtAwAB/wNXAbkDDwEUBAADFQEcA1MBpwMuAfkDPwFsIAADFAEbA1IBpQMdAf0D
VQG0AyYBOAMHAQk4AAMWAR4DVgGzAx4B/QMdAf0DUgGlAxQBGxAAAxQBGwNQAZoDOQH2AwAB/wNRAaQD
JAE0A0QBeANeAd0DPQH3A1sB3gM7AWMDDgESIAADAgEDAx4BKgNVAbQDPQH3A1EBoQMbASYDBQEGHAAD
SQGGAyEB+wMuAfkDUwGnAxUBHAwABAEDEwEZA0QBegNgAdsDOwH3Az0B9wNZAbsDKwFCAxMBGQMIAQoD
AgEDNAADPwFsAy4B+QNTAacDFQEcBAADDwEUA1cBuQMAAf8DWAHtAz8BbQM/AW0DWAHtAwAB/wNXAbkD
DwEUBAADFQEcA1MBpwMuAfkDPwFsIAADFAEbA1IBpQMdAf0DVQG0AyYBOAMHAQk4AAMWAR4DVgGzAx4B
/QMdAf0DUgGlAxQBGxAAAxQBGwNQAZoDOQH2AwAB/wNOAZUDMQFMA2EB4QMAAf8DWwHNAxoBJCgAAxUB
HANTAacDLgH5AyEB+wNJAYYkAANJAYYDIQH7Ay4B+QNTAacDFQEcDAADCwEOA00BkgMrAfkDAAH/AwAB
/wNVAa8DFgEdRAADPwFsAy4B+QNTAacDFQEcBAADDwEUA1cBuQMAAf8DWAHtAz8BbQM/AW0DWAHtAwAB
/wNXAbkDDwEUBAADFQEcA1MBpwMuAfkDPwFsIAADFAEbA1IBpQMdAf0DVgG2AygBPAMIAQo4AAMWAR4D
VgGzAx4B/QMdAf0DUgGlAxQBGxAAAxQBGwNQAZoDOQH2AwAB/wNDAfUDVAHvAyEB/AMRAf4DXQHMAx0B
KQQCGAAEAgMGAQcDDwETAzIBTwNZAcADQgH1A10B0QM6AWAkAANJAYYDIQH7Ay4B+QNTAacDFgEeAwwB
EAMqAUADVwG5A1oB6QNTAe8DWwHoA10BzwNGAX0DEwEaAwIBA0QAAz8BbAMuAfkDUwGnAxUBHAQAAw8B
FANXAbkDAAH/A1gB7QM/AW0DPwFtA1gB7QMAAf8DVwG5Aw8BFAQAAxUBHANTAacDLgH5Az8BbCAAAxQB
GwNSAaUDHQH9A1sB0AM/AWwDGAEhAw4BEgMOARIDDgESAw4BEgMOARIDDgESAw4BEgMOARIDDgESAw4B
EgMOARIDDgESAw4BEgMOARIDIAEuA1cBuQMeAf0DHQH9A1IBpQMUARsQAAMUARsDUAGaAzkB9gMAAf8D
AAH/AyMB+gNCAfUDHgH9A2AB4ANAAXEDHQEoAw4BEgMNAREDCQEMAwgBCgMLBA4BEgMcAScDOAFbA0QB
eQNaAccDYQHhA1YBtgM0AVQDDAEPJAADSQGGAyEB+wMuAfkDVQGuAyoBQAM/AW0DXQHRA0MB9QNWAe4D
WQG7A0QBeQMqAUADEQEWBAJIAAM/AWwDLgH5A1UBrgMgAS0DDgESAxsBJQNZAb4DAAH/A1gB7QM/AW0D
PwFtA1gB7QMAAf8DWQG+AxsBJQMOARIDIAEtA1UBrgMuAfkDPwFsIAADEwEaA1EBpAMfAfwDOQH2A10B
zANLAY0DRgGAA0YBgANGAYADRgGAA0YBgANGAYADRgGAA0YBgANGAYADRgGAA0YBgANGAYADRgGAA0YB
gANLAY8DXAHZAx4B/QNFAfQDTgGYAxMBGRAAAxIBGANLAYwDWAHtAwAB/wMgAf0DXAHZA1UBsQNdAd8D
QwH1A2AB4ANPAZsDRgGAA0QBegM5AV4DMwFQAz0BaANGAX4DUAGaA18B2gNbAeQDXwHaA08BmwMpAT4D
CgENKAADSQGGAyEB+wMgAfwDWwHTA1MBpgNcAdkDLgH5A2AB4ANQAZoDLQFFAxABFQMGAQcEAUwAAz8B
bAMgAfwDWwHTA0wBjgNGAYADSgGKA10B3AMeAf0DXQHfAzoBYgM6AWIDXQHfAx4B/QNdAdwDSgGKA0YB
gANMAY4DWwHTAyAB/AM/AWwgAAMSARcDSgGLA1oB6gMPAf4DJAH6A1IB7wNYAe0DWAHtA1gB7QNYAe0D
WAHtA1gB7QNYAe0DWAHtA1gB7QNYAe0DWAHtA1gB7QNYAe0DWAHtA1IB7wMkAfoDHgH9A1cBwgM0AVQD
CwEOEAADCAEKAy4BSANVAbEDXgHiA2AB2wNPAZsDLQFEA0MBdwNdAcwDYQHhA1gB6gNYAe0DWgHpA1sB
0wNcAcgDXwHaA1wB6wNOAfIDLgH5A14B0gNEAXgDIQEvAwcBCSwAA0IBdQNYAeoDAQH/Ay4B+QNQAfAD
XAHsA1wB2QNEAXsDHgEqAwYBCFgAAz8BbAMBAf8DLgH5A1IB7wNYAe0DVgHuAyQB+gM5AfYDUAGdAyAB
LQMgAS0DUAGdAzkB9gMkAfoDVgHuA1gB7QNSAe8DLgH5Aw8B/gM/AWwgAAMFAQYDGgEjA00BkwNgAeYD
WgHtAzwB9gM9AfcDPQH3Az0B9wM9AfcDPQH3Az0B9wM9AfcDPQH3Az0B9wM9AfcDPQH3Az0B9wM9AfcD
PQH3AzwB9gNaAe0DXwHlA0cBgwMKAQ0EAhAABAEDCAEKAx8BLAMuAUgDLQFEAxsBJQMHAQkDDwETAyMB
MgMuAUcDVwG5A10B6ANaAekDVwHuA1UB8QNcAewDWgHpA10B6ANbAdADNAFTAw8BEwMCAQMwAAMWAR4D
RwGDA1oB7QNVAfEDXwHVA0wBjgMrAUIDDwEUBAJcAAM6AWIDWgHpA1oB7QM8AfYDPQH3AzwB9gNcAewD
XQHcAzwBZgMGAQgDBgEIAzwBZgNdAdwDWgHtAzwB9gM9AfcDPAH2A1oB7QNgAeYDOgFiLAAEAQMjATMD
TgGXA1QBqwNUAasDVAGrA1QBqwNUAasDVAGrA1QBqwNUAasDVAGrA1QBqwNUAasDVAGrA1QBqwNUAasD
TgGXAyMBMwQBTAADCQELAzkBXQNHAYIDJwE6AwQBBUgABAIDIgExAzoBYQMPARRwAAMDAQQDKAE7A04B
mANUAasDUQGeAyEBLxQAAwMBBAMlATcDUAGfA1QBqwNOAZgDKAE7AwMBBBgAAUIBTQE+BwABPgMAASgD
AAF8AwABMAMAAQEBAAEBBgABAxYAA/8BAAH8AQMB8AE/AQMB8AEPAcAIAAH8AQEB8AE/AQMB8AEHAcAI
AAH8AQABMAE/AQAB8AEDAYAIAAH8AQABEAE/AQABcAEAAYAIAAH8AgABPwEAATABAAGACAAB/AIAAT8B
AAEwAQABgAgAAfwCAAE/DAAB/AEIAQABPwEICwAB/AEMAQABPwEMAQABIAkAAfwBDwEAAT8BDAEAATAJ
AAH8AQ8BgAE/AQ4BAAE4CQAB/AEPAfABPwEPAcABPwkAAfwBDwGAAT8BDgEAATgJAAH8AQ8BAAE/AQwB
AAEwCQAB/AEMAQABPwEMAQABIAkAAfwBCAEAAT8BCAsAAfwCAAE/DAAB/AIAAT8BAAEwCgAB/AIAAT8B
AAEwAQABgAgAAfwBAAEQAT8BAAFwAQABgAgAAfwBAAEwAT8BAAHwAQMBgAgAAfwBAAHwAT8BAQHwAQcB
wAgAAfwBAwHwAT8BAwHwAQ8BwAgAAf4BHwH4AX8BDwH4AX8BwAgAAeACAAEHAf4BAAEBAf8B4AEPAv8B
4AEAAQEB8AHgAgABBwH8AgAB/wHgAQcC/wHgAQABAQHwAeACAAEHAfwCAAF/AeABAwL/AeABAAEBAfAB
4AIAAQcB/AIAAT8B4AEAAX8B/wHgAQABAQHwAeABfwH+AQcB/AEHAcABPwHgAQABPwH/AeEBAAEhAfAB
4AF/Af4BBwL/AfgBPwHgAcABPwH/AeEBAAEhAfAB4AF/Af4BBwL/AfgBDwHgAcABAwH/AeEBAAEhAfAB
4AF/Af4BBwL/AfwBDwHgAfABAQH/AeEBAAEhAfAB4AF/Af4BBwL/AfwBDwHgAfwBAAH/AeEBAAEhAfAB
4AF/Af4BBwP/AQ8B4AH+AQAB/wHhAQABIQHwAeABfwH+AQcD/wEPAeAB/wEAAX8B4QEAASEB8AHgAX8B
/gEHA/8BDwHgAf8B8AF/AeEBAAEhAfAB4AF/Af4BBwGAAQcB/wEPAeAB/wEAAX8B4QEAASEB8AHgAX8B
/gEHAYABBwH/AQ8B4AH+AQAB/wHhAQABIQHwAeABfwH+AQcBgAEHAfwBDwHgAfwBAAH/AeEBAAEhAfAB
4AF/Af4BBwGAAQcB/AEPAeAB8AEBAf8B4QEAASEB8AHgAX8B/gEHAYABBwH4AQ8C4AEDAf8B4QEAASEB
8AHgAX8B/gEHAYABHwH4AT8C4AE/Af8B4QEAASEB8AHgAX8B/gEHAYABDwHAAT8B4AEAAT8B/wHhAQAB
IQHwAeACAAEHAYACAAE/AeABAAF/Af8B4AEAAQEB8AHgAgABBwGAAgABfwHgAQAC/wHgAQABAQHwAeAC
AAEHAYACAAH/AeABBwL/AeABAAEBAfAB4AIAAQcBgAEAAQEB/wHgAQ8C/wHgAQABAQHwAfwCAAE/Af8B
+AE/Af8B8AP/AfABPgEDAfAL
</value> </value>
</data> </data>
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">

View File

@@ -114,83 +114,83 @@
// //
toolStripMenuItem_Open.Name = "toolStripMenuItem_Open"; toolStripMenuItem_Open.Name = "toolStripMenuItem_Open";
toolStripMenuItem_Open.ShortcutKeys = Keys.Control | Keys.O; toolStripMenuItem_Open.ShortcutKeys = Keys.Control | Keys.O;
toolStripMenuItem_Open.Size = new Size(270, 34); toolStripMenuItem_Open.Size = new Size(254, 34);
toolStripMenuItem_Open.Text = "打开(&O)..."; toolStripMenuItem_Open.Text = "打开(&O)...";
toolStripMenuItem_Open.Click += toolStripMenuItem_Open_Click; toolStripMenuItem_Open.Click += toolStripMenuItem_Open_Click;
// //
// toolStripMenuItem_BatchOpen // toolStripMenuItem_BatchOpen
// //
toolStripMenuItem_BatchOpen.Name = "toolStripMenuItem_BatchOpen"; toolStripMenuItem_BatchOpen.Name = "toolStripMenuItem_BatchOpen";
toolStripMenuItem_BatchOpen.Size = new Size(270, 34); toolStripMenuItem_BatchOpen.Size = new Size(254, 34);
toolStripMenuItem_BatchOpen.Text = "批量打开(&B)..."; toolStripMenuItem_BatchOpen.Text = "批量打开(&B)...";
toolStripMenuItem_BatchOpen.Click += toolStripMenuItem_BatchOpen_Click; toolStripMenuItem_BatchOpen.Click += toolStripMenuItem_BatchOpen_Click;
// //
// toolStripSeparator1 // toolStripSeparator1
// //
toolStripSeparator1.Name = "toolStripSeparator1"; toolStripSeparator1.Name = "toolStripSeparator1";
toolStripSeparator1.Size = new Size(267, 6); toolStripSeparator1.Size = new Size(251, 6);
// //
// toolStripMenuItem_Export // toolStripMenuItem_Export
// //
toolStripMenuItem_Export.DropDownItems.AddRange(new ToolStripItem[] { toolStripMenuItem_ExportFrame, toolStripMenuItem_ExportFrameSequence, toolStripMenuItem_ExportGif, toolStripMenuItem_ExportMkv, toolStripMenuItem_ExportMp4, toolStripMenuItem_ExportMov, toolStripMenuItem_ExportWebm }); toolStripMenuItem_Export.DropDownItems.AddRange(new ToolStripItem[] { toolStripMenuItem_ExportFrame, toolStripMenuItem_ExportFrameSequence, toolStripMenuItem_ExportGif, toolStripMenuItem_ExportMkv, toolStripMenuItem_ExportMp4, toolStripMenuItem_ExportMov, toolStripMenuItem_ExportWebm });
toolStripMenuItem_Export.Name = "toolStripMenuItem_Export"; toolStripMenuItem_Export.Name = "toolStripMenuItem_Export";
toolStripMenuItem_Export.Size = new Size(270, 34); toolStripMenuItem_Export.Size = new Size(254, 34);
toolStripMenuItem_Export.Text = "导出(&E)"; toolStripMenuItem_Export.Text = "导出(&E)";
// //
// toolStripMenuItem_ExportFrame // toolStripMenuItem_ExportFrame
// //
toolStripMenuItem_ExportFrame.Name = "toolStripMenuItem_ExportFrame"; toolStripMenuItem_ExportFrame.Name = "toolStripMenuItem_ExportFrame";
toolStripMenuItem_ExportFrame.Size = new Size(270, 34); toolStripMenuItem_ExportFrame.Size = new Size(194, 34);
toolStripMenuItem_ExportFrame.Text = "单帧画面..."; toolStripMenuItem_ExportFrame.Text = "单帧画面...";
toolStripMenuItem_ExportFrame.Click += toolStripMenuItem_Export_Click; toolStripMenuItem_ExportFrame.Click += toolStripMenuItem_Export_Click;
// //
// toolStripMenuItem_ExportFrameSequence // toolStripMenuItem_ExportFrameSequence
// //
toolStripMenuItem_ExportFrameSequence.Name = "toolStripMenuItem_ExportFrameSequence"; toolStripMenuItem_ExportFrameSequence.Name = "toolStripMenuItem_ExportFrameSequence";
toolStripMenuItem_ExportFrameSequence.Size = new Size(270, 34); toolStripMenuItem_ExportFrameSequence.Size = new Size(194, 34);
toolStripMenuItem_ExportFrameSequence.Text = "帧序列..."; toolStripMenuItem_ExportFrameSequence.Text = "帧序列...";
toolStripMenuItem_ExportFrameSequence.Click += toolStripMenuItem_Export_Click; toolStripMenuItem_ExportFrameSequence.Click += toolStripMenuItem_Export_Click;
// //
// toolStripMenuItem_ExportGif // toolStripMenuItem_ExportGif
// //
toolStripMenuItem_ExportGif.Name = "toolStripMenuItem_ExportGif"; toolStripMenuItem_ExportGif.Name = "toolStripMenuItem_ExportGif";
toolStripMenuItem_ExportGif.Size = new Size(270, 34); toolStripMenuItem_ExportGif.Size = new Size(194, 34);
toolStripMenuItem_ExportGif.Text = "GIF..."; toolStripMenuItem_ExportGif.Text = "GIF...";
// //
// toolStripMenuItem_ExportMkv // toolStripMenuItem_ExportMkv
// //
toolStripMenuItem_ExportMkv.Name = "toolStripMenuItem_ExportMkv"; toolStripMenuItem_ExportMkv.Name = "toolStripMenuItem_ExportMkv";
toolStripMenuItem_ExportMkv.Size = new Size(270, 34); toolStripMenuItem_ExportMkv.Size = new Size(194, 34);
toolStripMenuItem_ExportMkv.Text = "MKV"; toolStripMenuItem_ExportMkv.Text = "MKV";
// //
// toolStripMenuItem_ExportMp4 // toolStripMenuItem_ExportMp4
// //
toolStripMenuItem_ExportMp4.Name = "toolStripMenuItem_ExportMp4"; toolStripMenuItem_ExportMp4.Name = "toolStripMenuItem_ExportMp4";
toolStripMenuItem_ExportMp4.Size = new Size(270, 34); toolStripMenuItem_ExportMp4.Size = new Size(194, 34);
toolStripMenuItem_ExportMp4.Text = "MP4..."; toolStripMenuItem_ExportMp4.Text = "MP4...";
// //
// toolStripMenuItem_ExportMov // toolStripMenuItem_ExportMov
// //
toolStripMenuItem_ExportMov.Name = "toolStripMenuItem_ExportMov"; toolStripMenuItem_ExportMov.Name = "toolStripMenuItem_ExportMov";
toolStripMenuItem_ExportMov.Size = new Size(270, 34); toolStripMenuItem_ExportMov.Size = new Size(194, 34);
toolStripMenuItem_ExportMov.Text = "MOV..."; toolStripMenuItem_ExportMov.Text = "MOV...";
// //
// toolStripMenuItem_ExportWebm // toolStripMenuItem_ExportWebm
// //
toolStripMenuItem_ExportWebm.Name = "toolStripMenuItem_ExportWebm"; toolStripMenuItem_ExportWebm.Name = "toolStripMenuItem_ExportWebm";
toolStripMenuItem_ExportWebm.Size = new Size(270, 34); toolStripMenuItem_ExportWebm.Size = new Size(194, 34);
toolStripMenuItem_ExportWebm.Text = "WebM..."; toolStripMenuItem_ExportWebm.Text = "WebM...";
// //
// toolStripSeparator2 // toolStripSeparator2
// //
toolStripSeparator2.Name = "toolStripSeparator2"; toolStripSeparator2.Name = "toolStripSeparator2";
toolStripSeparator2.Size = new Size(267, 6); toolStripSeparator2.Size = new Size(251, 6);
// //
// toolStripMenuItem_Exit // toolStripMenuItem_Exit
// //
toolStripMenuItem_Exit.Name = "toolStripMenuItem_Exit"; toolStripMenuItem_Exit.Name = "toolStripMenuItem_Exit";
toolStripMenuItem_Exit.ShortcutKeys = Keys.Alt | Keys.F4; toolStripMenuItem_Exit.ShortcutKeys = Keys.Alt | Keys.F4;
toolStripMenuItem_Exit.Size = new Size(270, 34); toolStripMenuItem_Exit.Size = new Size(254, 34);
toolStripMenuItem_Exit.Text = "退出(&X)"; toolStripMenuItem_Exit.Text = "退出(&X)";
toolStripMenuItem_Exit.Click += toolStripMenuItem_Exit_Click; toolStripMenuItem_Exit.Click += toolStripMenuItem_Exit_Click;
// //
@@ -441,7 +441,6 @@
spinePreviewer.Size = new Size(971, 850); spinePreviewer.Size = new Size(971, 850);
spinePreviewer.SpineListView = spineListView; spinePreviewer.SpineListView = spineListView;
spinePreviewer.TabIndex = 0; spinePreviewer.TabIndex = 0;
spinePreviewer.MouseUp += spinePreviewer_MouseUp;
// //
// panel_MainForm // panel_MainForm
// //

View File

@@ -203,11 +203,6 @@ namespace SpineViewer
private void propertyGrid_PropertyValueChanged(object sender, PropertyValueChangedEventArgs e) => (sender as PropertyGrid)?.Refresh(); private void propertyGrid_PropertyValueChanged(object sender, PropertyValueChangedEventArgs e) => (sender as PropertyGrid)?.Refresh();
private void spinePreviewer_MouseUp(object sender, MouseEventArgs e)
{
propertyGrid_Spine.Refresh();
}
private void Export_Work(object? sender, DoWorkEventArgs e) private void Export_Work(object? sender, DoWorkEventArgs e)
{ {
var worker = (BackgroundWorker)sender; var worker = (BackgroundWorker)sender;
@@ -280,5 +275,28 @@ namespace SpineViewer
Program.Logger.Info("{} skel converted successfully", success); Program.Logger.Info("{} skel converted successfully", success);
} }
} }
//private void spinePreviewer_KeyDown(object sender, KeyEventArgs e)
//{
// switch (e.KeyCode)
// {
// case Keys.Space:
// if ((ModifierKeys & Keys.Alt) != 0)
// spinePreviewer.ClickStopButton();
// else
// spinePreviewer.ClickStartButton();
// break;
// case Keys.Right:
// if ((ModifierKeys & Keys.Alt) != 0)
// spinePreviewer.ClickForwardFastButton();
// else
// spinePreviewer.ClickForwardStepButton();
// break;
// case Keys.Left:
// if ((ModifierKeys & Keys.Alt) != 0)
// spinePreviewer.ClickRestartButton();
// break;
// }
//}
} }
} }