diff --git a/PCK-Studio/MainForm.Designer.cs b/PCK-Studio/MainForm.Designer.cs
index 52199561..cc6dd50f 100644
--- a/PCK-Studio/MainForm.Designer.cs
+++ b/PCK-Studio/MainForm.Designer.cs
@@ -83,6 +83,7 @@ private void InitializeComponent()
this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveAsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.closeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.closeAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.editToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.quickChangeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.convertToBedrockToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -418,7 +419,8 @@ private void InitializeComponent()
this.packSettingsToolStripMenuItem,
this.saveToolStripMenuItem,
this.saveAsToolStripMenuItem,
- this.closeToolStripMenuItem});
+ this.closeToolStripMenuItem,
+ this.closeAllToolStripMenuItem});
this.fileToolStripMenuItem.ForeColor = System.Drawing.Color.Silver;
this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
resources.ApplyResources(this.fileToolStripMenuItem, "fileToolStripMenuItem");
@@ -495,6 +497,12 @@ private void InitializeComponent()
resources.ApplyResources(this.closeToolStripMenuItem, "closeToolStripMenuItem");
this.closeToolStripMenuItem.Click += new System.EventHandler(this.closeToolStripMenuItem_Click);
//
+ // closeAllToolStripMenuItem
+ //
+ this.closeAllToolStripMenuItem.Name = "closeAllToolStripMenuItem";
+ resources.ApplyResources(this.closeAllToolStripMenuItem, "closeAllToolStripMenuItem");
+ this.closeAllToolStripMenuItem.Click += new System.EventHandler(this.closeAllToolStripMenuItem_Click);
+ //
// editToolStripMenuItem
//
this.editToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -1023,6 +1031,7 @@ private void InitializeComponent()
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem;
private System.Windows.Forms.PictureBox logoPictureBox;
+ private System.Windows.Forms.ToolStripMenuItem closeAllToolStripMenuItem;
}
}
diff --git a/PCK-Studio/MainForm.cs b/PCK-Studio/MainForm.cs
index c3858b7e..dd1d7a73 100644
--- a/PCK-Studio/MainForm.cs
+++ b/PCK-Studio/MainForm.cs
@@ -147,14 +147,7 @@ private void MainForm_Load(object sender, EventArgs e)
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
- foreach (TabPage tab in tabControl.TabPages)
- {
- if (TryGetEditor(tab, out IPckEditor editor))
- {
- editor.Close();
- tabControl.TabPages.Remove(tab);
- }
- }
+ closeAllToolStripMenuItem_Click(sender, e);
}
private void openToolStripMenuItem_Click(object sender, EventArgs e)
@@ -370,19 +363,29 @@ private void quickChangeToolStripMenuItem_Click(object sender, EventArgs e)
}
}
+ private void CloseTab(TabControl.TabPageCollection collection, TabPage page)
+ {
+ if (TryGetEditor(page, out IPckEditor editor))
+ {
+ editor.Close();
+ RemoveOpenFile(page);
+ collection.Remove(page);
+ }
+ }
+
private void closeToolStripMenuItem_Click(object sender, EventArgs e)
{
- if (TryGetEditor(out IPckEditor editor))
- {
- editor.Close();
- RemoveOpenFile();
- tabControl.TabPages.Remove(tabControl.SelectedTab);
- }
- }
+ CloseTab(tabControl.TabPages, tabControl.SelectedTab);
+ }
private void RemoveOpenFile()
+ {
+ RemoveOpenFile(tabControl.SelectedTab);
+ }
+
+ private void RemoveOpenFile(TabPage page)
{
- var kv = openFiles.First((kv) => kv.Value == tabControl.SelectedTab);
+ var kv = openFiles.First((kv) => kv.Value == page);
if (kv.Key != default && kv.Value != default)
{
openFiles.Remove(kv.Key);
@@ -817,11 +820,21 @@ private void tabControl_PageClosing(object sender, PageClosingEventArgs e)
private void tabControl_SelectedIndexChanged(object sender, EventArgs e)
{
closeToolStripMenuItem.Visible = tabControl.SelectedIndex > 0;
+ closeAllToolStripMenuItem.Visible = tabControl.SelectedIndex == 0 && tabControl.TabCount > 1;
- if (tabControl.TabPages.Count == 1)
+ if (tabControl.TabPages.Count == 1)
{
RPC.SetPresence("An Open Source .PCK File Editor");
}
}
+
+ private void closeAllToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ foreach (TabPage tab in tabControl.TabPages)
+ {
+ CloseTab(tabControl.TabPages, tab);
+ }
+ closeAllToolStripMenuItem.Visible = false;
+ }
}
}
\ No newline at end of file
diff --git a/PCK-Studio/MainForm.resx b/PCK-Studio/MainForm.resx
index a627074a..1c52625b 100644
--- a/PCK-Studio/MainForm.resx
+++ b/PCK-Studio/MainForm.resx
@@ -141,29 +141,6 @@
116, 17
-
- 158, 224
-
-
- contextMenuPCKEntries
-
-
- System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAAA3SURBVDhPY/j/
- /z9FGKsgGIsCKWSMTQ0QYxUE45FmALpiYvFwMgAbxqIYG8YqCMajBhCJ/zMAAPGwpV/Xje8RAAAAAElF
- TkSuQmCC
-
-
-
- 157, 22
-
-
- Create
-
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
@@ -252,20 +229,19 @@
EntityMaterials.bin
-
+
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAABzSURBVDhPpYzB
- DQAhCARp4hr3Txu254WTjYRb9cEmk/BgRjBVHTv85Twmgt77PcJEYIFrhIkAgWOEiSAGthEmgtbaD9fW
- mBgpB4xywCgFxiMf5YDdrq3l5wjEjKtzTARMNlydY2IGot2ureVnRjkQmZbICyCi7XU5cfqKAAAAAElF
+ vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAAA3SURBVDhPY/j/
+ /z9FGKsgGIsCKWSMTQ0QYxUE45FmALpiYvFwMgAbxqIYG8YqCMajBhCJ/zMAAPGwpV/Xje8RAAAAAElF
TkSuQmCC
-
+
157, 22
-
- Import
+
+ Create
@@ -319,11 +295,20 @@
Add File
-
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xOdTWsmQAAABzSURBVDhPpYzB
+ DQAhCARp4hr3Txu254WTjYRb9cEmk/BgRjBVHTv85Twmgt77PcJEYIFrhIkAgWOEiSAGthEmgtbaD9fW
+ mBgpB4xywCgFxiMf5YDdrq3l5wjEjKtzTARMNlydY2IGot2ureVnRjkQmZbICyCi7XU5cfqKAAAAAElF
+ TkSuQmCC
+
+
+
157, 22
-
- Export
+
+ Import
186, 22
@@ -331,11 +316,11 @@
Export as 3DS Texture
-
+
157, 22
-
- Set File Type
+
+ Export
222, 22
@@ -409,11 +394,11 @@
Entity Materials File (.BIN)
-
+
157, 22
-
- Misc. Functions
+
+ Set File Type
210, 22
@@ -433,6 +418,12 @@
Correct Skin Decimals
+
+ 157, 22
+
+
+ Misc. Functions
+
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
@@ -498,6 +489,15 @@
Delete
+
+ 158, 224
+
+
+ contextMenuPCKEntries
+
+
+ System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
17, 17
@@ -507,89 +507,23 @@
None
-
- 37, 20
-
-
- File
-
-
- 39, 20
-
-
- Edit
-
-
- 195, 22
-
-
- Add Custom Pack Icon
-
-
- 195, 22
-
-
- Pck Manager
-
-
- 145, 22
-
-
- Wav -> Binka
-
-
- 145, 22
-
-
- Binka -> Wav
-
-
- 195, 22
-
-
- Audio Converter
-
-
- 46, 20
-
-
- Tools
-
-
- 63, 20
-
-
- More
-
-
- 44, 20
-
-
- Help
-
-
- 20, 3
-
-
- 237, 24
-
-
- 2
+
+ 151, 22
-
- menuStrip1
+
+ Skin Pack
-
- menuStrip
+
+ 151, 22
-
- System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Texture Pack
-
- $this
+
+ 151, 22
-
- 2
+
+ Mash-Up Pack
@@ -608,24 +542,6 @@
New
-
- 151, 22
-
-
- Skin Pack
-
-
- 151, 22
-
-
- Texture Pack
-
-
- 151, 22
-
-
- Mash-Up Pack
-
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
@@ -657,6 +573,12 @@
Extract
+
+ 160, 22
+
+
+ Full box support
+
186, 22
@@ -666,12 +588,6 @@
False
-
- 160, 22
-
-
- Full box support
-
False
@@ -725,6 +641,21 @@
False
+
+ 186, 22
+
+
+ Close all
+
+
+ False
+
+
+ 37, 20
+
+
+ File
+
False
@@ -769,6 +700,48 @@
Convert to Bedrock
+
+ 39, 20
+
+
+ Edit
+
+
+ 195, 22
+
+
+ Add Custom Pack Icon
+
+
+ 195, 22
+
+
+ Pck Manager
+
+
+ 145, 22
+
+
+ Wav -> Binka
+
+
+ 145, 22
+
+
+ Binka -> Wav
+
+
+ 195, 22
+
+
+ Audio Converter
+
+
+ 46, 20
+
+
+ Tools
+
212, 22
@@ -905,6 +878,12 @@
Trello Board
+
+ 63, 20
+
+
+ More
+
iVBORw0KGgoAAAANSUhEUgAAAtAAAALQCAYAAAC5V0ecAAAABGdBTUEAALGPC/xhBQAAazFJREFUeF7t
@@ -1372,24 +1351,10 @@
181, 22
- About
-
-
- 178, 6
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAKdJREFUOE+1
- jzEKwzAQBNUEXKQIBOwifcgTUvkDbt2p9qP0Ev1E31FYkVXOx2FLRRYWi7NnTnZ/z/MxZPY7aguhbZlq
- myQafL+ubRINshCwnO0kFqi3HkpwWOf7DkC1RBfvx9slV4ElscqbxBiz9/4nwOBIQjCEUL7FswhwDYAp
- JVMiN0oYs/ILiCXRIGHOwVQBoiXsKSgjJdzaBMpQ0g3KEOoG++PcBx9PFJGNjU4vAAAAAElFTkSuQmCC
-
-
-
- 181, 22
+ About
-
- Tutorials
+
+ 178, 6
@@ -19127,11 +19092,19 @@
How PCKs work
-
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAKdJREFUOE+1
+ jzEKwzAQBNUEXKQIBOwifcgTUvkDbt2p9qP0Ev1E31FYkVXOx2FLRRYWi7NnTnZ/z/MxZPY7aguhbZlq
+ myQafL+ubRINshCwnO0kFqi3HkpwWOf7DkC1RBfvx9slV4ElscqbxBiz9/4nwOBIQjCEUL7FswhwDYAp
+ JVMiN0oYs/ILiCXRIGHOwVQBoiXsKSgjJdzaBMpQ0g3KEOoG++PcBx9PFJGNjU4vAAAAAElFTkSuQmCC
+
+
+
181, 22
-
- Buy a coffee
+
+ Tutorials
253, 22
@@ -19151,6 +19124,12 @@
For MattNL (Other Developer)
+
+ 181, 22
+
+
+ Buy a coffee
+
178, 6
@@ -21193,32 +21172,39 @@
Settings
-
- 298, 17
-
-
- 182, 92
+
+ 44, 20
-
- contextMenuMetaTree
+
+ Help
-
- System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 20, 3
-
-
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xMkMEa+wAAABSSURBVDhP5c0x
- DsAgDENRxt7/wmkNSpRGf0CCCZAegxNMM7MlGMp3dIU6dxhKf/QMNxRogeQC8ivw5Vn7C0heJlFA+kL5
- jWAohxRkde4wnGftBS90axNmphIGAAAAAElFTkSuQmCC
-
+
+ 237, 24
-
- 181, 22
+
+ 2
-
- Add Entry
+
+ menuStrip1
+
+
+ menuStrip
+
+
+ System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ $this
+
+
+ 2
+
+ 298, 17
+
160, 22
@@ -21237,6 +21223,20 @@
Add ANIM Entry
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+ vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xMkMEa+wAAABSSURBVDhP5c0x
+ DsAgDENRxt7/wmkNSpRGf0CCCZAegxNMM7MlGMp3dIU6dxhKf/QMNxRogeQC8ivw5Vn7C0heJlFA+kL5
+ jWAohxRkde4wnGftBS90axNmphIGAAAAAElFTkSuQmCC
+
+
+
+ 181, 22
+
+
+ Add Entry
+
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
@@ -21272,6 +21272,15 @@
Edit All Entries
+
+ 182, 92
+
+
+ contextMenuMetaTree
+
+
+ System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
0, 0
@@ -21317,114 +21326,6 @@
MetroFramework.Controls.MetroCheckBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a
-
- StartPage
-
-
- MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a
-
-
- tabControl
-
-
- 0
-
-
- Fill
-
-
- 20, 30
-
-
- 1024, 600
-
-
- 0
-
-
- tabControl
-
-
- PckStudio.Controls.CustomTabControl, PCK-Studio, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null
-
-
- $this
-
-
- 3
-
-
- label5
-
-
- MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a
-
-
- StartPage
-
-
- 2
-
-
- pckOpen
-
-
- System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- StartPage
-
-
- 3
-
-
- labelVersion
-
-
- MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a
-
-
- StartPage
-
-
- 4
-
-
- ChangelogRichTextBox
-
-
- System.Windows.Forms.RichTextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- StartPage
-
-
- 5
-
-
- 4, 38
-
-
- 1016, 558
-
-
- 0
-
-
- Start Page
-
-
- StartPage
-
-
- MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a
-
-
- tabControl
-
-
- 0
-
Top, Right
@@ -22535,6 +22436,54 @@
5
+
+ 4, 38
+
+
+ 1016, 558
+
+
+ 0
+
+
+ Start Page
+
+
+ StartPage
+
+
+ MetroFramework.Controls.MetroTabPage, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a
+
+
+ tabControl
+
+
+ 0
+
+
+ Fill
+
+
+ 20, 30
+
+
+ 1024, 600
+
+
+ 0
+
+
+ tabControl
+
+
+ PckStudio.Controls.CustomTabControl, PCK-Studio, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null
+
+
+ $this
+
+
+ 3
+
True
@@ -25056,9 +25005,6 @@
AP//AAA=
-
- NoControl
-
1064, 660
@@ -25368,6 +25314,12 @@
System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ closeAllToolStripMenuItem
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
editToolStripMenuItem