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