From 000743d3706dbceefb6467911ac990da8b8519ad Mon Sep 17 00:00:00 2001 From: MattN-L Date: Sun, 31 Mar 2024 13:27:33 -0400 Subject: [PATCH 1/4] Fixed color text box in color editor --- PCK-Studio/Forms/Editor/COLEditor.Designer.cs | 4 +- PCK-Studio/Forms/Editor/COLEditor.cs | 46 ++- PCK-Studio/Forms/Editor/COLEditor.resx | 388 ++++++++++-------- 3 files changed, 246 insertions(+), 192 deletions(-) diff --git a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs index c5b4c1b6..8889cfb2 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs @@ -239,6 +239,7 @@ namespace PckStudio.Forms.Editor // // colorTextbox // + this.colorTextbox.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper; // // // @@ -254,7 +255,7 @@ namespace PckStudio.Forms.Editor this.colorTextbox.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible1"))); this.colorTextbox.Lines = new string[0]; resources.ApplyResources(this.colorTextbox, "colorTextbox"); - this.colorTextbox.MaxLength = 32767; + this.colorTextbox.MaxLength = 6; this.colorTextbox.Name = "colorTextbox"; this.colorTextbox.PasswordChar = '\0'; this.colorTextbox.ScrollBars = System.Windows.Forms.ScrollBars.None; @@ -267,6 +268,7 @@ namespace PckStudio.Forms.Editor this.colorTextbox.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109))))); this.colorTextbox.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel); this.colorTextbox.TextChanged += new System.EventHandler(this.colorBox_TextChanged); + this.colorTextbox.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.colorTextbox_KeyPress); // // metroLabel1 // diff --git a/PCK-Studio/Forms/Editor/COLEditor.cs b/PCK-Studio/Forms/Editor/COLEditor.cs index 6ae722aa..2434a6be 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.cs @@ -160,6 +160,7 @@ namespace PckStudio.Forms.Editor greenUpDown.Value = color >> 8 & 0xff; blueUpDown.Value = color & 0xff; pictureBox1.BackColor = Color.FromArgb(0xff << 24 | color); + colorTextbox.Text = ColorTranslator.ToHtml(colorEntry.ColorPallette).TrimStart('#'); SetUpValueChanged(true); } @@ -178,6 +179,7 @@ namespace PckStudio.Forms.Editor greenUpDown.Value = color >> 8 & 0xff; blueUpDown.Value = color & 0xff; pictureBox1.BackColor = colorEntry.SurfaceColor; + colorTextbox.Text = ColorTranslator.ToHtml(colorEntry.SurfaceColor).TrimStart('#'); SetUpValueChanged(true); } @@ -194,6 +196,7 @@ namespace PckStudio.Forms.Editor greenUpDown.Value = color >> 8 & 0xff; blueUpDown.Value = color & 0xff; pictureBox1.BackColor = Color.FromArgb(255, Color.FromArgb(0xff << 24 | color)); + colorTextbox.Text = ColorTranslator.ToHtml(colorEntry.UnderwaterColor).TrimStart('#'); SetUpValueChanged(true); } @@ -210,6 +213,7 @@ namespace PckStudio.Forms.Editor greenUpDown.Value = color >> 8 & 0xff; blueUpDown.Value = color & 0xff; pictureBox1.BackColor = Color.FromArgb(255, Color.FromArgb(0xff << 24 | color)); + colorTextbox.Text = ColorTranslator.ToHtml(colorEntry.FogColor).TrimStart('#'); SetUpValueChanged(true); } @@ -315,29 +319,21 @@ namespace PckStudio.Forms.Editor } } + public bool IsValidHexString(string value) + { + return System.Text.RegularExpressions.Regex.IsMatch(value, @"\A\b[0-9a-fA-F]+\b\Z") && value.Length == 6; + } + private void colorBox_TextChanged(object sender, EventArgs e) { - //TreeView tv = (TreeView)tabControl.SelectedTab.Controls[0]; - //if (tv.SelectedNode == null || tv.SelectedNode.Tag == null) - // return; - //bool hasAlpha = tabControl.SelectedTab == waterTab; - //alphaUpDown.Enabled = hasAlpha; - //redUpDown.Value = StringToByteArrayFastest(colorTextbox.Text)[!hasAlpha ? 0 : 1]; - //greenUpDown.Value = StringToByteArrayFastest(colorTextbox.Text)[!hasAlpha ? 1 : 2]; - //blueUpDown.Value = StringToByteArrayFastest(colorTextbox.Text)[!hasAlpha ? 2 : 3]; - //int color = 0; /*colorEntry.color*/; - // int argb = (int)((0xff000000u) | (color >> 24)); - //colorTextbox.MaxLength = hasAlpha ? 8 : 6; - //alphaLabel.Visible = false; - //alphaUpDown.Visible = false; - //if (hasAlpha) - //{ - // alphaLabel.Visible = true; - // alphaUpDown.Visible = true; - // alphaUpDown.Value = StringToByteArrayFastest(colorTextbox.Text)[0]; - // argb = color >> 24 | color << 8; - //} - //pictureBox1.BackColor = Color.FromArgb(argb); + if(IsValidHexString(colorTextbox.Text)) + { + Color color = ColorTranslator.FromHtml("#" + colorTextbox.Text); + + redUpDown.Value = color.R; + greenUpDown.Value = color.G; + blueUpDown.Value = color.B; + } } private void color_ValueChanged(object sender, EventArgs e) @@ -461,6 +457,7 @@ namespace PckStudio.Forms.Editor greenUpDown.Value = color.G; blueUpDown.Value = color.B; pictureBox1.BackColor = Color.FromArgb(tabControl.SelectedTab == colorsTab ? 0xFF : color.A, color); + metroTextBox1.Text = pictureBox1.BackColor.ToString(); } private void metroTextBox1_TextChanged(object sender, EventArgs e) @@ -605,5 +602,12 @@ namespace PckStudio.Forms.Editor saveToolStripMenuItem1_Click(sender, EventArgs.Empty); } } + + private void colorTextbox_KeyPress(object sender, KeyPressEventArgs e) + { + string hexCheck = "0123456789abcdefABCDEF\b"; + + e.Handled = !hexCheck.Contains(e.KeyChar); + } } } diff --git a/PCK-Studio/Forms/Editor/COLEditor.resx b/PCK-Studio/Forms/Editor/COLEditor.resx index 9a20d780..d9de5a6d 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.resx +++ b/PCK-Studio/Forms/Editor/COLEditor.resx @@ -522,112 +522,6 @@ False - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADfSURBVDhPYxg8 - QLt++3yTGbf/Fm599P/Nh49wfPXxq/+rTt37f+Dak/8gOSBgAGEMANIMxGBFyAasPf/0v8GE8//z1t8C - y4HU4DIALIluwLpLL+HiMANAGKoNAWASCavv/n/57gPcgOvP3oENOXj7NViOoAFGU6791+k4ghWD5Aga - QCyGakMAkODcU89R/I8Ng9TgNADk14dPn/8/c+kqVgySgwUqVBsCwAx49urN/zsPHmPFIDmaGvAXJInN - 38gYasBfqDYE0K7dOn/Wvut/sfkdGYPUgJI9VNuAAwYGAGn6yvdevWgPAAAAAElFTkSuQmCC - - - - 98, 22 - - - Save - - - 37, 20 - - - File - - - 414, 22 - - - TU12 (360) - - - 414, 22 - - - TU13/1.00 (360/PS3) - - - 414, 22 - - - TU14/1.04 (360/PS3) - - - 414, 22 - - - TU19/1.12/CU7 (360/PS3-4-Vita/XONE) - - - 414, 22 - - - TU31/1.22/CU19 (360/PS3-4-Vita/XONE) - - - 414, 22 - - - TU32/1.24/CU20/P3 (360/PS3-4-Vita/XONE/WIIU) - - - 414, 22 - - - TU43/1.35/CU32/P12 (360/PS3-4-Vita/XONE/WIIU) - - - 414, 22 - - - TU46/1.38/CU36/P15 (360/PS3-4-Vita/XONE/WIIU) - - - 414, 22 - - - TU51/1.44/CU41/P20 (360/PS3-4-Vita/XONE/WIIU) - - - 414, 22 - - - TU53/1.49/CU43/P23/1.0.3 (360/PS3-4-Vita/XONE/WIIU/SWITCH) - - - 414, 22 - - - TU54/1.52/CU44/P24/1.0.4 (360/PS3-4-Vita/XONE/WIIU/SWITCH) - - - 414, 22 - - - TU69/1.76/P38 (360/PS3-4-Vita/WIIU) - - - 414, 22 - - - 1.91 (PS4) - - - 117, 20 - - - Target Update Tool - 20, 60 @@ -652,50 +546,111 @@ 1 - - 125, 17 - - - 186, 22 + + 37, 20 - - Restore original color + + File - - 186, 22 + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADdSURBVDhPzZJB + CoJQEIa9jy0iPFAnCDpAtG3ZooUE4b6oVtIuClpJIAgqZEVlKpqEHUAm5pGPmhTbRA18G//5P5iHgvA3 + I7ZniiQ7aVM9QZzcOKYbwVDbw8I6A2YAICBvg2VJdtjSs2Cse1Dt6tCYbliGO0UCFlLBxAj590yA0D4X + 1Ec7CK8JF9j+lUmWzoVlpYJaz4JKZ5ULZqWCT6F9Jhhowcv9eeBOoQBvPXoBrA0zF8yyR6V9LvCjGLYH + NxfMvipIMaQ3Ux6ClPYFsaUq/bmd0rspuIO/Pe3/bu5p+sr3gTvFEQAAAABJRU5ErkJggg== + - - Copy Color + + 98, 22 - - 186, 22 + + Save - - Paste Color + + 119, 20 - - 187, 70 + + Target Update Tool - - ColorContextMenu + + 416, 22 - - MetroFramework.Controls.MetroContextMenu, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + TU12 (360) - - Fill + + 416, 22 - - 0, 0 + + TU13/1.00 (360/PS3) - - No + + 416, 22 - - 320, 424 + + TU14/1.04 (360/PS3) - - 0 + + 416, 22 + + + TU19/1.12/CU7 (360/PS3-4-Vita/XONE) + + + 416, 22 + + + TU31/1.22/CU19 (360/PS3-4-Vita/XONE) + + + 416, 22 + + + TU32/1.24/CU20/P3 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU43/1.35/CU32/P12 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU46/1.38/CU36/P15 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU51/1.44/CU41/P20 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU53/1.49/CU43/P23/1.0.3 (360/PS3-4-Vita/XONE/WIIU/SWITCH) + + + 416, 22 + + + TU54/1.52/CU44/P24/1.0.4 (360/PS3-4-Vita/XONE/WIIU/SWITCH) + + + 416, 22 + + + TU69/1.76/P38 (360/PS3-4-Vita/WIIU) + + + 416, 22 + + + 1.91 (PS4) waterTreeView @@ -733,6 +688,63 @@ 1 + + 125, 17 + + + 187, 70 + + + ColorContextMenu + + + MetroFramework.Controls.MetroContextMenu, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + Fill + + + 0, 0 + + + No + + + 320, 424 + + + 0 + + + waterTreeView + + + System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + waterTab + + + 0 + + + 186, 22 + + + Restore original color + + + 186, 22 + + + Copy Color + + + 186, 22 + + + Paste Color + 0, 0 @@ -775,18 +787,6 @@ 0 - - Fill - - - 0, 0 - - - 320, 424 - - - 0 - colorTreeView @@ -823,9 +823,78 @@ 0 + + Fill + + + 0, 0 + + + 320, 424 + + + 0 + + + colorTreeView + + + System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + colorsTab + + + 0 + Top, Bottom, Left + + underwaterTab + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + tabControl + + + 2 + + + fogTab + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + tabControl + + + 3 + + + 23, 114 + + + 328, 466 + + + 22 + + + tabControl + + + MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + $this + + + 2 + 4, 38 @@ -874,27 +943,6 @@ 3 - - 23, 114 - - - 328, 466 - - - 22 - - - tabControl - - - MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a - - - $this - - - 2 - True From a272fcb32f5c45dc831f439901062f1454c26893 Mon Sep 17 00:00:00 2001 From: MattN-L Date: Sun, 31 Mar 2024 14:36:03 -0400 Subject: [PATCH 2/4] Improved Copy + Paste functionality --- PCK-Studio/Forms/Editor/COLEditor.Designer.cs | 294 +++++++-------- PCK-Studio/Forms/Editor/COLEditor.cs | 190 ++++------ PCK-Studio/Forms/Editor/COLEditor.resx | 340 ++++++++---------- 3 files changed, 369 insertions(+), 455 deletions(-) diff --git a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs index 8889cfb2..fd3f96eb 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs @@ -51,7 +51,19 @@ namespace PckStudio.Forms.Editor this.menuStrip = new System.Windows.Forms.MenuStrip(); this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.saveToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); - this.targetUpdateToolToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.waterTab = new System.Windows.Forms.TabPage(); + this.waterTreeView = new System.Windows.Forms.TreeView(); + this.ColorContextMenu = new MetroFramework.Controls.MetroContextMenu(this.components); + this.copyColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.pasteColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.restoreOriginalColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.underwaterTreeView = new System.Windows.Forms.TreeView(); + this.fogTreeView = new System.Windows.Forms.TreeView(); + this.colorsTab = new System.Windows.Forms.TabPage(); + this.colorTreeView = new System.Windows.Forms.TreeView(); + this.tabControl = new MetroFramework.Controls.MetroTabControl(); + this.underwaterTab = new System.Windows.Forms.TabPage(); + this.fogTab = new System.Windows.Forms.TabPage(); this.TU12ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU13ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU14ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -65,19 +77,7 @@ namespace PckStudio.Forms.Editor this.TU54ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU69ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this._1_9_1ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.waterTab = new System.Windows.Forms.TabPage(); - this.waterTreeView = new System.Windows.Forms.TreeView(); - this.ColorContextMenu = new MetroFramework.Controls.MetroContextMenu(this.components); - this.restoreOriginalColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.copyColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.pasteColorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.underwaterTreeView = new System.Windows.Forms.TreeView(); - this.fogTreeView = new System.Windows.Forms.TreeView(); - this.colorsTab = new System.Windows.Forms.TabPage(); - this.colorTreeView = new System.Windows.Forms.TreeView(); - this.tabControl = new MetroFramework.Controls.MetroTabControl(); - this.underwaterTab = new System.Windows.Forms.TabPage(); - this.fogTab = new System.Windows.Forms.TabPage(); + this.targetUpdateToolToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.metroPanel1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.blueUpDown)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.greenUpDown)).BeginInit(); @@ -306,25 +306,105 @@ namespace PckStudio.Forms.Editor this.saveToolStripMenuItem1.Name = "saveToolStripMenuItem1"; this.saveToolStripMenuItem1.Click += new System.EventHandler(this.saveToolStripMenuItem1_Click); // - // targetUpdateToolToolStripMenuItem + // waterTab // - this.targetUpdateToolToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.TU12ToolStripMenuItem, - this.TU13ToolStripMenuItem, - this.TU14ToolStripMenuItem, - this.TU19ToolStripMenuItem, - this.TU31ToolStripMenuItem, - this.TU32ToolStripMenuItem, - this.TU43ToolStripMenuItem, - this.TU46ToolStripMenuItem, - this.TU51ToolStripMenuItem, - this.TU53ToolStripMenuItem, - this.TU54ToolStripMenuItem, - this.TU69ToolStripMenuItem, - this._1_9_1ToolStripMenuItem}); - this.targetUpdateToolToolStripMenuItem.ForeColor = System.Drawing.Color.White; - this.targetUpdateToolToolStripMenuItem.Name = "targetUpdateToolToolStripMenuItem"; - resources.ApplyResources(this.targetUpdateToolToolStripMenuItem, "targetUpdateToolToolStripMenuItem"); + this.waterTab.BackColor = System.Drawing.SystemColors.WindowFrame; + this.waterTab.Controls.Add(this.waterTreeView); + resources.ApplyResources(this.waterTab, "waterTab"); + this.waterTab.Name = "waterTab"; + // + // waterTreeView + // + this.waterTreeView.ContextMenuStrip = this.ColorContextMenu; + resources.ApplyResources(this.waterTreeView, "waterTreeView"); + this.waterTreeView.Name = "waterTreeView"; + this.waterTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView2_AfterSelect); + this.waterTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView2_KeyDown); + // + // ColorContextMenu + // + this.ColorContextMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.copyColorToolStripMenuItem, + this.pasteColorToolStripMenuItem, + this.restoreOriginalColorToolStripMenuItem}); + this.ColorContextMenu.Name = "ColorContextMenu"; + resources.ApplyResources(this.ColorContextMenu, "ColorContextMenu"); + // + // copyColorToolStripMenuItem + // + this.copyColorToolStripMenuItem.Name = "copyColorToolStripMenuItem"; + resources.ApplyResources(this.copyColorToolStripMenuItem, "copyColorToolStripMenuItem"); + this.copyColorToolStripMenuItem.Click += new System.EventHandler(this.copyColorToolStripMenuItem_Click); + // + // pasteColorToolStripMenuItem + // + this.pasteColorToolStripMenuItem.Name = "pasteColorToolStripMenuItem"; + resources.ApplyResources(this.pasteColorToolStripMenuItem, "pasteColorToolStripMenuItem"); + this.pasteColorToolStripMenuItem.Click += new System.EventHandler(this.pasteColorToolStripMenuItem_Click); + // + // restoreOriginalColorToolStripMenuItem + // + this.restoreOriginalColorToolStripMenuItem.Name = "restoreOriginalColorToolStripMenuItem"; + resources.ApplyResources(this.restoreOriginalColorToolStripMenuItem, "restoreOriginalColorToolStripMenuItem"); + this.restoreOriginalColorToolStripMenuItem.Click += new System.EventHandler(this.restoreOriginalColorToolStripMenuItem_Click); + // + // underwaterTreeView + // + this.underwaterTreeView.ContextMenuStrip = this.ColorContextMenu; + resources.ApplyResources(this.underwaterTreeView, "underwaterTreeView"); + this.underwaterTreeView.Name = "underwaterTreeView"; + this.underwaterTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView3_AfterSelect); + this.underwaterTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView3_KeyDown); + // + // fogTreeView + // + this.fogTreeView.ContextMenuStrip = this.ColorContextMenu; + resources.ApplyResources(this.fogTreeView, "fogTreeView"); + this.fogTreeView.Name = "fogTreeView"; + this.fogTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView4_AfterSelect); + this.fogTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView4_KeyDown); + // + // colorsTab + // + this.colorsTab.BackColor = System.Drawing.SystemColors.WindowFrame; + this.colorsTab.Controls.Add(this.colorTreeView); + resources.ApplyResources(this.colorsTab, "colorsTab"); + this.colorsTab.Name = "colorsTab"; + // + // colorTreeView + // + this.colorTreeView.ContextMenuStrip = this.ColorContextMenu; + resources.ApplyResources(this.colorTreeView, "colorTreeView"); + this.colorTreeView.Name = "colorTreeView"; + this.colorTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect); + this.colorTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView1_KeyDown); + // + // tabControl + // + resources.ApplyResources(this.tabControl, "tabControl"); + this.tabControl.Controls.Add(this.colorsTab); + this.tabControl.Controls.Add(this.waterTab); + this.tabControl.Controls.Add(this.underwaterTab); + this.tabControl.Controls.Add(this.fogTab); + this.tabControl.Name = "tabControl"; + this.tabControl.SelectedIndex = 0; + this.tabControl.Style = MetroFramework.MetroColorStyle.White; + this.tabControl.Theme = MetroFramework.MetroThemeStyle.Dark; + this.tabControl.UseSelectable = true; + // + // underwaterTab + // + this.underwaterTab.BackColor = System.Drawing.SystemColors.WindowFrame; + this.underwaterTab.Controls.Add(this.underwaterTreeView); + resources.ApplyResources(this.underwaterTab, "underwaterTab"); + this.underwaterTab.Name = "underwaterTab"; + // + // fogTab + // + this.fogTab.BackColor = System.Drawing.SystemColors.WindowFrame; + this.fogTab.Controls.Add(this.fogTreeView); + resources.ApplyResources(this.fogTab, "fogTab"); + this.fogTab.Name = "fogTab"; // // TU12ToolStripMenuItem // @@ -391,105 +471,25 @@ namespace PckStudio.Forms.Editor this._1_9_1ToolStripMenuItem.Name = "_1_9_1ToolStripMenuItem"; resources.ApplyResources(this._1_9_1ToolStripMenuItem, "_1_9_1ToolStripMenuItem"); // - // waterTab + // targetUpdateToolToolStripMenuItem // - this.waterTab.BackColor = System.Drawing.SystemColors.WindowFrame; - this.waterTab.Controls.Add(this.waterTreeView); - resources.ApplyResources(this.waterTab, "waterTab"); - this.waterTab.Name = "waterTab"; - // - // waterTreeView - // - this.waterTreeView.ContextMenuStrip = this.ColorContextMenu; - resources.ApplyResources(this.waterTreeView, "waterTreeView"); - this.waterTreeView.Name = "waterTreeView"; - this.waterTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView2_AfterSelect); - this.waterTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView2_KeyDown); - // - // ColorContextMenu - // - this.ColorContextMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.restoreOriginalColorToolStripMenuItem, - this.copyColorToolStripMenuItem, - this.pasteColorToolStripMenuItem}); - this.ColorContextMenu.Name = "ColorContextMenu"; - resources.ApplyResources(this.ColorContextMenu, "ColorContextMenu"); - // - // restoreOriginalColorToolStripMenuItem - // - this.restoreOriginalColorToolStripMenuItem.Name = "restoreOriginalColorToolStripMenuItem"; - resources.ApplyResources(this.restoreOriginalColorToolStripMenuItem, "restoreOriginalColorToolStripMenuItem"); - this.restoreOriginalColorToolStripMenuItem.Click += new System.EventHandler(this.restoreOriginalColorToolStripMenuItem_Click); - // - // copyColorToolStripMenuItem - // - this.copyColorToolStripMenuItem.Name = "copyColorToolStripMenuItem"; - resources.ApplyResources(this.copyColorToolStripMenuItem, "copyColorToolStripMenuItem"); - this.copyColorToolStripMenuItem.Click += new System.EventHandler(this.copyColorToolStripMenuItem_Click); - // - // pasteColorToolStripMenuItem - // - this.pasteColorToolStripMenuItem.Name = "pasteColorToolStripMenuItem"; - resources.ApplyResources(this.pasteColorToolStripMenuItem, "pasteColorToolStripMenuItem"); - this.pasteColorToolStripMenuItem.Click += new System.EventHandler(this.pasteColorToolStripMenuItem_Click); - // - // underwaterTreeView - // - this.underwaterTreeView.ContextMenuStrip = this.ColorContextMenu; - resources.ApplyResources(this.underwaterTreeView, "underwaterTreeView"); - this.underwaterTreeView.Name = "underwaterTreeView"; - this.underwaterTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView3_AfterSelect); - this.underwaterTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView3_KeyDown); - // - // fogTreeView - // - this.fogTreeView.ContextMenuStrip = this.ColorContextMenu; - resources.ApplyResources(this.fogTreeView, "fogTreeView"); - this.fogTreeView.Name = "fogTreeView"; - this.fogTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView4_AfterSelect); - this.fogTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView4_KeyDown); - // - // colorsTab - // - this.colorsTab.BackColor = System.Drawing.SystemColors.WindowFrame; - this.colorsTab.Controls.Add(this.colorTreeView); - resources.ApplyResources(this.colorsTab, "colorsTab"); - this.colorsTab.Name = "colorsTab"; - // - // colorTreeView - // - this.colorTreeView.ContextMenuStrip = this.ColorContextMenu; - resources.ApplyResources(this.colorTreeView, "colorTreeView"); - this.colorTreeView.Name = "colorTreeView"; - this.colorTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect); - this.colorTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView1_KeyDown); - // - // tabControl - // - resources.ApplyResources(this.tabControl, "tabControl"); - this.tabControl.Controls.Add(this.colorsTab); - this.tabControl.Controls.Add(this.waterTab); - this.tabControl.Controls.Add(this.underwaterTab); - this.tabControl.Controls.Add(this.fogTab); - this.tabControl.Name = "tabControl"; - this.tabControl.SelectedIndex = 0; - this.tabControl.Style = MetroFramework.MetroColorStyle.White; - this.tabControl.Theme = MetroFramework.MetroThemeStyle.Dark; - this.tabControl.UseSelectable = true; - // - // underwaterTab - // - this.underwaterTab.BackColor = System.Drawing.SystemColors.WindowFrame; - this.underwaterTab.Controls.Add(this.underwaterTreeView); - resources.ApplyResources(this.underwaterTab, "underwaterTab"); - this.underwaterTab.Name = "underwaterTab"; - // - // fogTab - // - this.fogTab.BackColor = System.Drawing.SystemColors.WindowFrame; - this.fogTab.Controls.Add(this.fogTreeView); - resources.ApplyResources(this.fogTab, "fogTab"); - this.fogTab.Name = "fogTab"; + this.targetUpdateToolToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.TU12ToolStripMenuItem, + this.TU13ToolStripMenuItem, + this.TU14ToolStripMenuItem, + this.TU19ToolStripMenuItem, + this.TU31ToolStripMenuItem, + this.TU32ToolStripMenuItem, + this.TU43ToolStripMenuItem, + this.TU46ToolStripMenuItem, + this.TU51ToolStripMenuItem, + this.TU53ToolStripMenuItem, + this.TU54ToolStripMenuItem, + this.TU69ToolStripMenuItem, + this._1_9_1ToolStripMenuItem}); + this.targetUpdateToolToolStripMenuItem.ForeColor = System.Drawing.Color.White; + this.targetUpdateToolToolStripMenuItem.Name = "targetUpdateToolToolStripMenuItem"; + resources.ApplyResources(this.targetUpdateToolToolStripMenuItem, "targetUpdateToolToolStripMenuItem"); // // COLEditor // @@ -553,21 +553,21 @@ namespace PckStudio.Forms.Editor private ToolStripMenuItem restoreOriginalColorToolStripMenuItem; private MetroFramework.Controls.MetroTextBox metroTextBox1; private MetroFramework.Controls.MetroLabel metroLabel2; - private ToolStripMenuItem targetUpdateToolToolStripMenuItem; - private ToolStripMenuItem TU12ToolStripMenuItem; - private ToolStripMenuItem TU13ToolStripMenuItem; - private ToolStripMenuItem TU14ToolStripMenuItem; - private ToolStripMenuItem TU19ToolStripMenuItem; - private ToolStripMenuItem TU31ToolStripMenuItem; - private ToolStripMenuItem TU32ToolStripMenuItem; - private ToolStripMenuItem TU43ToolStripMenuItem; - private ToolStripMenuItem TU46ToolStripMenuItem; - private ToolStripMenuItem TU51ToolStripMenuItem; - private ToolStripMenuItem TU53ToolStripMenuItem; - private ToolStripMenuItem TU54ToolStripMenuItem; - private ToolStripMenuItem TU69ToolStripMenuItem; - private ToolStripMenuItem _1_9_1ToolStripMenuItem; - private ToolStripMenuItem copyColorToolStripMenuItem; - private ToolStripMenuItem pasteColorToolStripMenuItem; - } + private ToolStripMenuItem copyColorToolStripMenuItem; + private ToolStripMenuItem pasteColorToolStripMenuItem; + private ToolStripMenuItem targetUpdateToolToolStripMenuItem; + private ToolStripMenuItem TU12ToolStripMenuItem; + private ToolStripMenuItem TU13ToolStripMenuItem; + private ToolStripMenuItem TU14ToolStripMenuItem; + private ToolStripMenuItem TU19ToolStripMenuItem; + private ToolStripMenuItem TU31ToolStripMenuItem; + private ToolStripMenuItem TU32ToolStripMenuItem; + private ToolStripMenuItem TU43ToolStripMenuItem; + private ToolStripMenuItem TU46ToolStripMenuItem; + private ToolStripMenuItem TU51ToolStripMenuItem; + private ToolStripMenuItem TU53ToolStripMenuItem; + private ToolStripMenuItem TU54ToolStripMenuItem; + private ToolStripMenuItem TU69ToolStripMenuItem; + private ToolStripMenuItem _1_9_1ToolStripMenuItem; + } } \ No newline at end of file diff --git a/PCK-Studio/Forms/Editor/COLEditor.cs b/PCK-Studio/Forms/Editor/COLEditor.cs index 2434a6be..d305ce62 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.cs @@ -17,7 +17,7 @@ namespace PckStudio.Forms.Editor { ColorContainer default_colourfile; ColorContainer colourfile; - ColorContainer.Color clipboard_color; + string clipboard_color = "#FFFFFF"; private readonly PckFileData _file; @@ -55,6 +55,9 @@ namespace PckStudio.Forms.Editor _1_9_1ToolStripMenuItem.Click += (sender, e) => SetUpDefaultFile(sender, e, 12); SetUpDefaultFile(null, EventArgs.Empty, 11, false); + + colorTreeView.Select(); + colorTreeView.SelectedNode = colorTreeView.Nodes[0]; } private void SetUpDefaultFile(object sender, EventArgs e, int ID, bool targetVersion = true) @@ -151,6 +154,11 @@ namespace PckStudio.Forms.Editor { if (colorTreeView.SelectedNode.Tag == null) return; + + waterTreeView.SelectedNode = null; + underwaterTreeView.SelectedNode = null; + fogTreeView.SelectedNode = null; + var colorEntry = (ColorContainer.Color)colorTreeView.SelectedNode.Tag; var color = colorEntry.ColorPallette.ToArgb(); SetUpValueChanged(false); @@ -168,6 +176,11 @@ namespace PckStudio.Forms.Editor { if (waterTreeView.SelectedNode.Tag == null) return; + + colorTreeView.SelectedNode = null; + underwaterTreeView.SelectedNode = null; + fogTreeView.SelectedNode = null; + var colorEntry = (ColorContainer.WaterColor)waterTreeView.SelectedNode.Tag; int color = colorEntry.SurfaceColor.ToArgb(); SetUpValueChanged(false); @@ -187,6 +200,11 @@ namespace PckStudio.Forms.Editor { if (underwaterTreeView.SelectedNode.Tag == null) return; + + colorTreeView.SelectedNode = null; + waterTreeView.SelectedNode = null; + fogTreeView.SelectedNode = null; + var colorEntry = (ColorContainer.WaterColor)underwaterTreeView.SelectedNode.Tag; int color = colorEntry.UnderwaterColor.ToArgb(); SetUpValueChanged(false); @@ -204,6 +222,11 @@ namespace PckStudio.Forms.Editor { if (fogTreeView.SelectedNode.Tag == null) return; + + colorTreeView.SelectedNode = null; + waterTreeView.SelectedNode = null; + underwaterTreeView.SelectedNode = null; + var colorEntry = (ColorContainer.WaterColor)fogTreeView.SelectedNode.Tag; int color = colorEntry.FogColor.ToArgb(); SetUpValueChanged(false); @@ -338,22 +361,24 @@ namespace PckStudio.Forms.Editor private void color_ValueChanged(object sender, EventArgs e) { - Color fixed_color = new Color(); + Color color = Color.FromArgb(tabControl.SelectedTab == waterTab ? (int)alphaUpDown.Value : 255, (int)redUpDown.Value, (int)greenUpDown.Value, (int)blueUpDown.Value); + if (tabControl.SelectedTab == colorsTab) - { + { var colorEntry = (ColorContainer.Color)colorTreeView.SelectedNode.Tag; - colorEntry.ColorPallette = fixed_color = Color.FromArgb(255, (int)redUpDown.Value, (int)greenUpDown.Value, (int)blueUpDown.Value); + colorEntry.ColorPallette = color; } - else if (tabControl.SelectedTab != null && waterTreeView.SelectedNode != null) // just in case - { - var colorEntry = (ColorContainer.WaterColor)waterTreeView.SelectedNode.Tag; - fixed_color = Color.FromArgb(tabControl.SelectedTab == waterTab ? (int)alphaUpDown.Value : 255, (int)redUpDown.Value, (int)greenUpDown.Value, (int)blueUpDown.Value); - if (tabControl.SelectedTab == waterTab) colorEntry.SurfaceColor = fixed_color; - else if (tabControl.SelectedTab == underwaterTab) colorEntry.UnderwaterColor = fixed_color; - else colorEntry.FogColor = fixed_color; + else + { + var waterColorEntry = (tabControl.SelectedTab.Controls[0] as TreeView).SelectedNode.Tag as ColorContainer.WaterColor; + + if (tabControl.SelectedTab == waterTab) waterColorEntry.SurfaceColor = color; + else if (tabControl.SelectedTab == underwaterTab) waterColorEntry.UnderwaterColor = color; + else waterColorEntry.FogColor = color; } - pictureBox1.BackColor = fixed_color; + pictureBox1.BackColor = color; + colorTextbox.Text = ColorTranslator.ToHtml(color).TrimStart('#'); } private void setColorBtn_Click(object sender, EventArgs e) @@ -408,57 +433,48 @@ namespace PckStudio.Forms.Editor private void alpha_ValueChanged(object sender, EventArgs e) { - if (tabControl.SelectedTab == waterTab && waterTreeView.SelectedNode != null && - waterTreeView.SelectedNode.Tag != null && waterTreeView.SelectedNode.Tag is ColorContainer.WaterColor) - { - var colorEntry = (ColorContainer.WaterColor)waterTreeView.SelectedNode.Tag; - pictureBox1.BackColor = colorEntry.SurfaceColor = Color.FromArgb((int)alphaUpDown.Value, colorEntry.SurfaceColor); - } + var colorEntry = (ColorContainer.WaterColor)waterTreeView.SelectedNode.Tag; + pictureBox1.BackColor = colorEntry.SurfaceColor = Color.FromArgb((int)alphaUpDown.Value, colorEntry.SurfaceColor); } private void restoreOriginalColorToolStripMenuItem_Click(object sender, EventArgs e) { - SetUpValueChanged(false); - if (tabControl.SelectedTab == colorsTab && colorTreeView.SelectedNode != null && - colorTreeView.SelectedNode.Tag != null && colorTreeView.SelectedNode.Tag is ColorContainer.Color colorInfoD) - { - var entry = default_colourfile.Colors.Find(color => color.Name == colorTreeView.SelectedNode.Text); - colorInfoD.ColorPallette = entry.ColorPallette; - UpdateDisplayColor(entry.ColorPallette); - } - else if (tabControl.SelectedTab == waterTab && waterTreeView.SelectedNode != null && - waterTreeView.SelectedNode.Tag != null && waterTreeView.SelectedNode.Tag is ColorContainer.WaterColor colorInfo) - { - var entry = default_colourfile.WaterColors.Find(color => color.Name == waterTreeView.SelectedNode.Text); - colorInfo.SurfaceColor = entry.SurfaceColor; - UpdateDisplayColor(entry.SurfaceColor); - } - else if (tabControl.SelectedTab == underwaterTab && underwaterTreeView.SelectedNode != null && - underwaterTreeView.SelectedNode.Tag != null && underwaterTreeView.SelectedNode.Tag is ColorContainer.WaterColor colorInfoB) - { - var entry = default_colourfile.WaterColors.Find(color => color.Name == underwaterTreeView.SelectedNode.Text); - colorInfoB.UnderwaterColor = entry.UnderwaterColor; - UpdateDisplayColor(entry.UnderwaterColor); - } - else if (tabControl.SelectedTab == fogTab && fogTreeView.SelectedNode != null && - fogTreeView.SelectedNode.Tag != null && fogTreeView.SelectedNode.Tag is ColorContainer.WaterColor colorInfoC) - { - var entry = default_colourfile.WaterColors.Find(color => color.Name == fogTreeView.SelectedNode.Text); - colorInfoC.FogColor = entry.FogColor; - UpdateDisplayColor(entry.FogColor); - } - SetUpValueChanged(true); - } + if(tabControl.SelectedTab is var tab && tab != null) + { + TreeNode node = (tabControl.SelectedTab.Controls[0] as TreeView).SelectedNode; - private void UpdateDisplayColor(Color color) - { - alphaUpDown.Value = color.A; - redUpDown.Value = color.R; - greenUpDown.Value = color.G; - blueUpDown.Value = color.B; - pictureBox1.BackColor = Color.FromArgb(tabControl.SelectedTab == colorsTab ? 0xFF : color.A, color); - metroTextBox1.Text = pictureBox1.BackColor.ToString(); - } + Color color = Color.Empty; + + if (tab == colorsTab) + { + color = default_colourfile.Colors.Find(color => color.Name == node.Text).ColorPallette; + + if (color.IsEmpty) return; + + colorTextbox.Text = ColorTranslator.ToHtml(color).TrimStart('#'); + } + else + { + var WaterEntry = default_colourfile.WaterColors.Find(color => color.Name == node.Text); + + if (WaterEntry == null) return; + + color = + tab == waterTab ? WaterEntry.SurfaceColor : + tab == underwaterTab ? WaterEntry.UnderwaterColor : WaterEntry.FogColor; + + if (tab == waterTab) + { + alphaUpDown.Value = color.A; + } + + redUpDown.Value = color.R; + greenUpDown.Value = color.G; + blueUpDown.Value = color.B; + } + pictureBox1.BackColor = Color.FromArgb(tab == colorsTab ? 0xFF : color.A, color); + } + } private void metroTextBox1_TextChanged(object sender, EventArgs e) { @@ -533,66 +549,12 @@ namespace PckStudio.Forms.Editor private void copyColorToolStripMenuItem_Click(object sender, EventArgs e) { - var colorToCopy = new ColorContainer.Color() - { - Name = "", - ColorPallette = new Color() - }; - if (tabControl.SelectedTab == colorsTab && colorTreeView.SelectedNode.Tag is ColorContainer.Color colorInfoD) - { - colorToCopy = colorInfoD; - } - else if (tabControl.SelectedTab == waterTab && waterTreeView.SelectedNode.Tag is ColorContainer.WaterColor colorInfo) - { - colorToCopy.ColorPallette = colorInfo.SurfaceColor; - } - else if (tabControl.SelectedTab == underwaterTab && underwaterTreeView.SelectedNode.Tag is ColorContainer.WaterColor colorInfoB) - { - colorToCopy.ColorPallette = colorInfoB.UnderwaterColor; - } - else if (tabControl.SelectedTab == fogTab && fogTreeView.SelectedNode.Tag is ColorContainer.WaterColor colorInfoC) - { - colorToCopy.ColorPallette = colorInfoC.FogColor; - } - clipboard_color = colorToCopy; + clipboard_color = colorTextbox.Text; } private void pasteColorToolStripMenuItem_Click(object sender, EventArgs e) { - if (clipboard_color == null) return; - SetUpValueChanged(false); - Color fixed_color = Color.FromArgb(255, Color.FromArgb(0xff, clipboard_color.ColorPallette)); - - if (tabControl.SelectedTab == waterTab && waterTreeView.SelectedNode != null && - waterTreeView.SelectedNode.Tag != null && waterTreeView.SelectedNode.Tag is ColorContainer.WaterColor) - { - var colorEntry = ((ColorContainer.WaterColor)waterTreeView.SelectedNode.Tag); - colorEntry.SurfaceColor = fixed_color; - } - else if (tabControl.SelectedTab == underwaterTab && underwaterTreeView.SelectedNode != null && - underwaterTreeView.SelectedNode.Tag != null && underwaterTreeView.SelectedNode.Tag is ColorContainer.WaterColor) - { - var colorEntry = ((ColorContainer.WaterColor)underwaterTreeView.SelectedNode.Tag); - colorEntry.UnderwaterColor = fixed_color; - } - else if (tabControl.SelectedTab == fogTab && fogTreeView.SelectedNode != null && - fogTreeView.SelectedNode.Tag != null && fogTreeView.SelectedNode.Tag is ColorContainer.WaterColor) - { - var colorEntry = ((ColorContainer.WaterColor)fogTreeView.SelectedNode.Tag); - colorEntry.FogColor = fixed_color; - } - else if (tabControl.SelectedTab == colorsTab && colorTreeView.SelectedNode != null && - colorTreeView.SelectedNode.Tag != null && colorTreeView.SelectedNode.Tag is ColorContainer.Color) - { - var colorEntry = ((ColorContainer.Color)colorTreeView.SelectedNode.Tag); - colorEntry.ColorPallette = fixed_color; - } - - redUpDown.Value = clipboard_color.ColorPallette.R; - greenUpDown.Value = clipboard_color.ColorPallette.G; - blueUpDown.Value = clipboard_color.ColorPallette.B; - pictureBox1.BackColor = fixed_color; - SetUpValueChanged(true); + colorTextbox.Text = clipboard_color; } private void COLEditor_FormClosing(object sender, FormClosingEventArgs e) diff --git a/PCK-Studio/Forms/Editor/COLEditor.resx b/PCK-Studio/Forms/Editor/COLEditor.resx index d9de5a6d..c204e40f 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.resx +++ b/PCK-Studio/Forms/Editor/COLEditor.resx @@ -298,16 +298,16 @@ True - 367, 320 + 342, 320 - 21, 19 + 46, 19 16 - A: + Alpha: False @@ -328,16 +328,16 @@ True - 368, 395 + 351, 397 - 20, 19 + 37, 19 12 - B: + Blue: blueLabel @@ -355,16 +355,16 @@ True - 367, 371 + 341, 371 - 21, 19 + 47, 19 10 - G: + Green: greenLabel @@ -382,16 +382,16 @@ True - 368, 345 + 353, 345 - 20, 19 + 35, 19 8 - R: + Red: redLabel @@ -448,16 +448,16 @@ True - 342, 423 + 354, 423 - 46, 19 + 34, 19 3 - Color: + Hex: metroLabel1 @@ -522,36 +522,6 @@ False - - 20, 60 - - - 612, 24 - - - 3 - - - menuStrip1 - - - menuStrip - - - System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 1 - - - 37, 20 - - - File - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO @@ -563,16 +533,16 @@ - 98, 22 + 180, 22 Save - - 119, 20 + + 37, 20 - - Target Update Tool + + File 416, 22 @@ -652,6 +622,81 @@ 1.91 (PS4) + + 119, 20 + + + Target Update Tool + + + 20, 60 + + + 612, 24 + + + 3 + + + menuStrip1 + + + menuStrip + + + System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + 125, 17 + + + 134, 22 + + + Copy Color + + + 134, 22 + + + Paste Color + + + 134, 22 + + + Restore + + + 135, 70 + + + ColorContextMenu + + + MetroFramework.Controls.MetroContextMenu, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + Fill + + + 0, 0 + + + No + + + 320, 424 + + + 0 + waterTreeView @@ -688,63 +733,6 @@ 1 - - 125, 17 - - - 187, 70 - - - ColorContextMenu - - - MetroFramework.Controls.MetroContextMenu, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a - - - Fill - - - 0, 0 - - - No - - - 320, 424 - - - 0 - - - waterTreeView - - - System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - waterTab - - - 0 - - - 186, 22 - - - Restore original color - - - 186, 22 - - - Copy Color - - - 186, 22 - - - Paste Color - 0, 0 @@ -787,6 +775,18 @@ 0 + + Fill + + + 0, 0 + + + 320, 424 + + + 0 + colorTreeView @@ -823,78 +823,9 @@ 0 - - Fill - - - 0, 0 - - - 320, 424 - - - 0 - - - colorTreeView - - - System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - colorsTab - - - 0 - Top, Bottom, Left - - underwaterTab - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tabControl - - - 2 - - - fogTab - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - tabControl - - - 3 - - - 23, 114 - - - 328, 466 - - - 22 - - - tabControl - - - MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a - - - $this - - - 2 - 4, 38 @@ -943,6 +874,27 @@ 3 + + 23, 114 + + + 328, 466 + + + 22 + + + tabControl + + + MetroFramework.Controls.MetroTabControl, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + $this + + + 2 + True @@ -3479,10 +3431,22 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - targetUpdateToolToolStripMenuItem + + copyColorToolStripMenuItem - + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + pasteColorToolStripMenuItem + + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + restoreOriginalColorToolStripMenuItem + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 @@ -3563,22 +3527,10 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - restoreOriginalColorToolStripMenuItem + + targetUpdateToolToolStripMenuItem - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - copyColorToolStripMenuItem - - - System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - pasteColorToolStripMenuItem - - + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 From 9615114d71bf128c86ce93b13c862eb2148cecf1 Mon Sep 17 00:00:00 2001 From: MattN-L Date: Sun, 31 Mar 2024 15:37:34 -0400 Subject: [PATCH 3/4] Added Menu Tool for PS4 Biome Water Colors --- PCK-Studio/Forms/Editor/COLEditor.Designer.cs | 60 ++- PCK-Studio/Forms/Editor/COLEditor.cs | 49 +- PCK-Studio/Forms/Editor/COLEditor.resx | 468 ++++++++++++------ 3 files changed, 391 insertions(+), 186 deletions(-) diff --git a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs index fd3f96eb..89d8a9de 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs @@ -64,6 +64,8 @@ namespace PckStudio.Forms.Editor this.tabControl = new MetroFramework.Controls.MetroTabControl(); this.underwaterTab = new System.Windows.Forms.TabPage(); this.fogTab = new System.Windows.Forms.TabPage(); + this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.targetUpdateToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU12ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU13ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU14ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -77,7 +79,7 @@ namespace PckStudio.Forms.Editor this.TU54ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.TU69ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this._1_9_1ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.targetUpdateToolToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.stripPS4BiomesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.metroPanel1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.blueUpDown)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.greenUpDown)).BeginInit(); @@ -289,7 +291,7 @@ namespace PckStudio.Forms.Editor this.menuStrip.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.fileToolStripMenuItem, - this.targetUpdateToolToolStripMenuItem}); + this.toolsToolStripMenuItem}); this.menuStrip.Name = "menuStrip"; // // fileToolStripMenuItem @@ -406,6 +408,34 @@ namespace PckStudio.Forms.Editor resources.ApplyResources(this.fogTab, "fogTab"); this.fogTab.Name = "fogTab"; // + // toolsToolStripMenuItem + // + this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.stripPS4BiomesToolStripMenuItem, + this.targetUpdateToolStripMenuItem}); + this.toolsToolStripMenuItem.ForeColor = System.Drawing.Color.White; + this.toolsToolStripMenuItem.Name = "toolsToolStripMenuItem"; + resources.ApplyResources(this.toolsToolStripMenuItem, "toolsToolStripMenuItem"); + // + // targetUpdateToolStripMenuItem + // + this.targetUpdateToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.TU12ToolStripMenuItem, + this.TU13ToolStripMenuItem, + this.TU14ToolStripMenuItem, + this.TU19ToolStripMenuItem, + this.TU31ToolStripMenuItem, + this.TU32ToolStripMenuItem, + this.TU43ToolStripMenuItem, + this.TU46ToolStripMenuItem, + this.TU51ToolStripMenuItem, + this.TU53ToolStripMenuItem, + this.TU54ToolStripMenuItem, + this.TU69ToolStripMenuItem, + this._1_9_1ToolStripMenuItem}); + this.targetUpdateToolStripMenuItem.Name = "targetUpdateToolStripMenuItem"; + resources.ApplyResources(this.targetUpdateToolStripMenuItem, "targetUpdateToolStripMenuItem"); + // // TU12ToolStripMenuItem // this.TU12ToolStripMenuItem.Name = "TU12ToolStripMenuItem"; @@ -471,25 +501,11 @@ namespace PckStudio.Forms.Editor this._1_9_1ToolStripMenuItem.Name = "_1_9_1ToolStripMenuItem"; resources.ApplyResources(this._1_9_1ToolStripMenuItem, "_1_9_1ToolStripMenuItem"); // - // targetUpdateToolToolStripMenuItem + // stripPS4BiomesToolStripMenuItem // - this.targetUpdateToolToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.TU12ToolStripMenuItem, - this.TU13ToolStripMenuItem, - this.TU14ToolStripMenuItem, - this.TU19ToolStripMenuItem, - this.TU31ToolStripMenuItem, - this.TU32ToolStripMenuItem, - this.TU43ToolStripMenuItem, - this.TU46ToolStripMenuItem, - this.TU51ToolStripMenuItem, - this.TU53ToolStripMenuItem, - this.TU54ToolStripMenuItem, - this.TU69ToolStripMenuItem, - this._1_9_1ToolStripMenuItem}); - this.targetUpdateToolToolStripMenuItem.ForeColor = System.Drawing.Color.White; - this.targetUpdateToolToolStripMenuItem.Name = "targetUpdateToolToolStripMenuItem"; - resources.ApplyResources(this.targetUpdateToolToolStripMenuItem, "targetUpdateToolToolStripMenuItem"); + this.stripPS4BiomesToolStripMenuItem.Name = "stripPS4BiomesToolStripMenuItem"; + resources.ApplyResources(this.stripPS4BiomesToolStripMenuItem, "stripPS4BiomesToolStripMenuItem"); + this.stripPS4BiomesToolStripMenuItem.Click += new System.EventHandler(this.stripPS4BiomesToolStripMenuItem_Click); // // COLEditor // @@ -555,7 +571,8 @@ namespace PckStudio.Forms.Editor private MetroFramework.Controls.MetroLabel metroLabel2; private ToolStripMenuItem copyColorToolStripMenuItem; private ToolStripMenuItem pasteColorToolStripMenuItem; - private ToolStripMenuItem targetUpdateToolToolStripMenuItem; + private ToolStripMenuItem toolsToolStripMenuItem; + private ToolStripMenuItem targetUpdateToolStripMenuItem; private ToolStripMenuItem TU12ToolStripMenuItem; private ToolStripMenuItem TU13ToolStripMenuItem; private ToolStripMenuItem TU14ToolStripMenuItem; @@ -569,5 +586,6 @@ namespace PckStudio.Forms.Editor private ToolStripMenuItem TU54ToolStripMenuItem; private ToolStripMenuItem TU69ToolStripMenuItem; private ToolStripMenuItem _1_9_1ToolStripMenuItem; + private ToolStripMenuItem stripPS4BiomesToolStripMenuItem; } } \ No newline at end of file diff --git a/PCK-Studio/Forms/Editor/COLEditor.cs b/PCK-Studio/Forms/Editor/COLEditor.cs index d305ce62..bf87d522 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.cs @@ -242,33 +242,6 @@ namespace PckStudio.Forms.Editor private void saveToolStripMenuItem1_Click(object sender, EventArgs e) { - List PS4Biomes = new List - { - "bamboo_jungle", - "bamboo_jungle_hills", - "mesa_mutated", - "mega_spruce_taiga_mutated", - "mega_taiga_mutated" - }; - - if (colourfile.WaterColors.Find(e => PS4Biomes.Contains(e.Name)) != null) - { - var result = MessageBox.Show(this, "Biomes exclusive to PS4 Edition v1.91 were found in the water section of this colour table. This will crash all other editions of the game and PS4 Edition v1.90 and below. Would you like to remove them?", "Potentially unsupported biomes found", MessageBoxButtons.YesNoCancel); - switch (result) - { - case DialogResult.Yes: - foreach (var col in colourfile.WaterColors.ToList()) - { - if(PS4Biomes.Contains(col.Name)) colourfile.WaterColors.Remove(col); - } - break; - case DialogResult.No: - break; - default: - return; - } - } - _file.SetData(new COLFileWriter(colourfile)); DialogResult = DialogResult.OK; @@ -571,5 +544,27 @@ namespace PckStudio.Forms.Editor e.Handled = !hexCheck.Contains(e.KeyChar); } + + private void stripPS4BiomesToolStripMenuItem_Click(object sender, EventArgs e) + { + if(colourfile.WaterColors.Count > 0) + { + List PS4Biomes = new List + { + "bamboo_jungle", + "bamboo_jungle_hills", + "mesa_mutated", + "mega_spruce_taiga_mutated", + "mega_taiga_mutated" + }; + + foreach (var col in colourfile.WaterColors.ToList()) + { + if (PS4Biomes.Contains(col.Name)) colourfile.WaterColors.Remove(col); + } + + SetUpTable(false); + } + } } } diff --git a/PCK-Studio/Forms/Editor/COLEditor.resx b/PCK-Studio/Forms/Editor/COLEditor.resx index c204e40f..add75e29 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.resx +++ b/PCK-Studio/Forms/Editor/COLEditor.resx @@ -117,18 +117,210 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + metroTextBox1 + + + MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 2 + + + metroLabel2 + + + MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 3 + + + setColorBtn + + + MetroFramework.Controls.MetroButton, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 4 + + + blueUpDown + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + metroPanel1 + + + 5 + + + greenUpDown + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + metroPanel1 + + + 6 + + + redUpDown + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + metroPanel1 + + + 7 + + + alphaUpDown + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + metroPanel1 + + + 8 + + + alphaLabel + + + MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 9 + + + blueLabel + + + MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 10 + + + greenLabel + + + MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 11 + + + redLabel + + + MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 12 + + + colorTextbox + + + MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 13 + + + metroLabel1 + + + MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + metroPanel1 + + + 14 + + + pictureBox1 + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + metroPanel1 + + + 15 + + + Fill + + + + 20, 60 + + + 612, 523 + + + + 0 + + + metroPanel1 + + + MetroFramework.Controls.MetroPanel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a + + + $this + + + 3 + - 113, 1 21, 21 - 0 @@ -492,142 +684,12 @@ 15 - - Fill - - - 20, 60 - - - 612, 523 - - - 0 - - - metroPanel1 - - - MetroFramework.Controls.MetroPanel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a - - - $this - - - 3 - 17, 17 False - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADdSURBVDhPzZJB - CoJQEIa9jy0iPFAnCDpAtG3ZooUE4b6oVtIuClpJIAgqZEVlKpqEHUAm5pGPmhTbRA18G//5P5iHgvA3 - I7ZniiQ7aVM9QZzcOKYbwVDbw8I6A2YAICBvg2VJdtjSs2Cse1Dt6tCYbliGO0UCFlLBxAj590yA0D4X - 1Ec7CK8JF9j+lUmWzoVlpYJaz4JKZ5ULZqWCT6F9Jhhowcv9eeBOoQBvPXoBrA0zF8yyR6V9LvCjGLYH - NxfMvipIMaQ3Ux6ClPYFsaUq/bmd0rspuIO/Pe3/bu5p+sr3gTvFEQAAAABJRU5ErkJggg== - - - - 180, 22 - - - Save - - - 37, 20 - - - File - - - 416, 22 - - - TU12 (360) - - - 416, 22 - - - TU13/1.00 (360/PS3) - - - 416, 22 - - - TU14/1.04 (360/PS3) - - - 416, 22 - - - TU19/1.12/CU7 (360/PS3-4-Vita/XONE) - - - 416, 22 - - - TU31/1.22/CU19 (360/PS3-4-Vita/XONE) - - - 416, 22 - - - TU32/1.24/CU20/P3 (360/PS3-4-Vita/XONE/WIIU) - - - 416, 22 - - - TU43/1.35/CU32/P12 (360/PS3-4-Vita/XONE/WIIU) - - - 416, 22 - - - TU46/1.38/CU36/P15 (360/PS3-4-Vita/XONE/WIIU) - - - 416, 22 - - - TU51/1.44/CU41/P20 (360/PS3-4-Vita/XONE/WIIU) - - - 416, 22 - - - TU53/1.49/CU43/P23/1.0.3 (360/PS3-4-Vita/XONE/WIIU/SWITCH) - - - 416, 22 - - - TU54/1.52/CU44/P24/1.0.4 (360/PS3-4-Vita/XONE/WIIU/SWITCH) - - - 416, 22 - - - TU69/1.76/P38 (360/PS3-4-Vita/WIIU) - - - 416, 22 - - - 1.91 (PS4) - - - 119, 20 - - - Target Update Tool - 20, 60 @@ -652,6 +714,28 @@ 1 + + 37, 20 + + + File + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADdSURBVDhPzZJB + CoJQEIa9jy0iPFAnCDpAtG3ZooUE4b6oVtIuClpJIAgqZEVlKpqEHUAm5pGPmhTbRA18G//5P5iHgvA3 + I7ZniiQ7aVM9QZzcOKYbwVDbw8I6A2YAICBvg2VJdtjSs2Cse1Dt6tCYbliGO0UCFlLBxAj590yA0D4X + 1Ec7CK8JF9j+lUmWzoVlpYJaz4JKZ5ULZqWCT6F9Jhhowcv9eeBOoQBvPXoBrA0zF8yyR6V9LvCjGLYH + NxfMvipIMaQ3Ux6ClPYFsaUq/bmd0rspuIO/Pe3/bu5p+sr3gTvFEQAAAABJRU5ErkJggg== + + + + 180, 22 + + + Save + 125, 17 @@ -668,13 +752,13 @@ Paste Color - 134, 22 + 145, 22 - Restore + Restore Color - 135, 70 + 146, 70 ColorContextMenu @@ -895,6 +979,102 @@ 2 + + 47, 20 + + + Tools + + + 180, 22 + + + Target Update + + + 416, 22 + + + TU12 (360) + + + 416, 22 + + + TU13/1.00 (360/PS3) + + + 416, 22 + + + TU14/1.04 (360/PS3) + + + 416, 22 + + + TU19/1.12/CU7 (360/PS3-4-Vita/XONE) + + + 416, 22 + + + TU31/1.22/CU19 (360/PS3-4-Vita/XONE) + + + 416, 22 + + + TU32/1.24/CU20/P3 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU43/1.35/CU32/P12 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU46/1.38/CU36/P15 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU51/1.44/CU41/P20 (360/PS3-4-Vita/XONE/WIIU) + + + 416, 22 + + + TU53/1.49/CU43/P23/1.0.3 (360/PS3-4-Vita/XONE/WIIU/SWITCH) + + + 416, 22 + + + TU54/1.52/CU44/P24/1.0.4 (360/PS3-4-Vita/XONE/WIIU/SWITCH) + + + 416, 22 + + + TU69/1.76/P38 (360/PS3-4-Vita/WIIU) + + + 416, 22 + + + 1.91 (PS4) + + + 213, 22 + + + Remove PS4 Biome Colors + True @@ -3449,6 +3629,18 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + toolsToolStripMenuItem + + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + targetUpdateToolStripMenuItem + + + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + TU12ToolStripMenuItem @@ -3527,10 +3719,10 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - targetUpdateToolToolStripMenuItem + + stripPS4BiomesToolStripMenuItem - + System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 From 1381b741fc233998b9ba294f6430e2443697ec45 Mon Sep 17 00:00:00 2001 From: MattN-L Date: Sun, 31 Mar 2024 17:06:17 -0400 Subject: [PATCH 4/4] Fix Target Version Duplication bug --- PCK-Studio/Forms/Editor/COLEditor.Designer.cs | 8 ++ PCK-Studio/Forms/Editor/COLEditor.cs | 78 +++++++++++++------ PCK-Studio/Forms/Editor/COLEditor.resx | 36 ++++----- 3 files changed, 80 insertions(+), 42 deletions(-) diff --git a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs index 89d8a9de..c9d0ffcc 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.Designer.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.Designer.cs @@ -317,8 +317,10 @@ namespace PckStudio.Forms.Editor // // waterTreeView // + this.waterTreeView.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); this.waterTreeView.ContextMenuStrip = this.ColorContextMenu; resources.ApplyResources(this.waterTreeView, "waterTreeView"); + this.waterTreeView.ForeColor = System.Drawing.Color.White; this.waterTreeView.Name = "waterTreeView"; this.waterTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView2_AfterSelect); this.waterTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView2_KeyDown); @@ -352,7 +354,9 @@ namespace PckStudio.Forms.Editor // // underwaterTreeView // + this.underwaterTreeView.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); this.underwaterTreeView.ContextMenuStrip = this.ColorContextMenu; + this.underwaterTreeView.ForeColor = System.Drawing.Color.White; resources.ApplyResources(this.underwaterTreeView, "underwaterTreeView"); this.underwaterTreeView.Name = "underwaterTreeView"; this.underwaterTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView3_AfterSelect); @@ -360,7 +364,9 @@ namespace PckStudio.Forms.Editor // // fogTreeView // + this.fogTreeView.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); this.fogTreeView.ContextMenuStrip = this.ColorContextMenu; + this.fogTreeView.ForeColor = System.Drawing.Color.White; resources.ApplyResources(this.fogTreeView, "fogTreeView"); this.fogTreeView.Name = "fogTreeView"; this.fogTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView4_AfterSelect); @@ -375,8 +381,10 @@ namespace PckStudio.Forms.Editor // // colorTreeView // + this.colorTreeView.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); this.colorTreeView.ContextMenuStrip = this.ColorContextMenu; resources.ApplyResources(this.colorTreeView, "colorTreeView"); + this.colorTreeView.ForeColor = System.Drawing.Color.White; this.colorTreeView.Name = "colorTreeView"; this.colorTreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect); this.colorTreeView.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView1_KeyDown); diff --git a/PCK-Studio/Forms/Editor/COLEditor.cs b/PCK-Studio/Forms/Editor/COLEditor.cs index bf87d522..78a222c3 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.cs +++ b/PCK-Studio/Forms/Editor/COLEditor.cs @@ -90,6 +90,14 @@ namespace PckStudio.Forms.Editor SetUpTable(targetVersion); } + void AddEntry(TreeView treeView, List cache, string name, object tag) + { + TreeNode tn = new TreeNode(name); + tn.Tag = tag; + treeView.Nodes.Add(tn); + cache.Add(tn); + } + void SetUpTable(bool targetVersion) { colorTreeView.Nodes.Clear(); @@ -101,35 +109,57 @@ namespace PckStudio.Forms.Editor List CurrentEntries = new List(); - foreach (var obj in temp.Colors) + colorCache.Clear(); + fogCache.Clear(); + underwaterCache.Clear(); + waterCache.Clear(); + + // fixes the duplicate entry bug + if (targetVersion) + { + foreach(var col in colourfile.Colors) + { + if (default_colourfile.Colors.Find(c => c.Name == col.Name) == null) continue; + CurrentEntries.Add(col.Name); + AddEntry(colorTreeView, colorCache, col.Name, col); + } + } + + foreach (var col in temp.Colors) { - var entry = colourfile.Colors.Find(color => color.Name == obj.Name); - TreeNode tn = new TreeNode(obj.Name); - tn.Tag = entry != null ? entry : obj; - if (CurrentEntries.Contains(obj.Name)) continue; - CurrentEntries.Add(obj.Name); - colorTreeView.Nodes.Add(tn); - colorCache.Add(tn); + var entry = colourfile.Colors.Find(color => color.Name == col.Name); + if (CurrentEntries.Contains(col.Name)) continue; + var color = entry ?? col; + AddEntry(colorTreeView, colorCache, color.Name, color); } CurrentEntries.Clear(); - foreach (var obj in temp.WaterColors) + + // fixes the duplicate entry bug + if (targetVersion) { - var entry = colourfile.WaterColors.Find(color => color.Name == obj.Name); - TreeNode tn = new TreeNode(obj.Name); - tn.Tag = entry != null ? entry : obj; - if (CurrentEntries.Contains(obj.Name)) continue; - CurrentEntries.Add(obj.Name); - waterTreeView.Nodes.Add(tn); - waterCache.Add(tn); - TreeNode tnB = new TreeNode(obj.Name); - tnB.Tag = entry != null ? entry : obj; - underwaterTreeView.Nodes.Add(tnB); - underwaterCache.Add(tnB); - TreeNode tnC = new TreeNode(obj.Name); - tnC.Tag = entry != null ? entry : obj; - fogTreeView.Nodes.Add(tnC); - fogCache.Add(tnC); + foreach (var col in colourfile.WaterColors) + { + if (default_colourfile.WaterColors.Find(c => c.Name == col.Name) == null) continue; + var entry = colourfile.WaterColors.Find(color => color.Name == col.Name); + var color = entry ?? col; + AddEntry(waterTreeView, waterCache, color.Name, color); + AddEntry(underwaterTreeView, underwaterCache, color.Name, color); + AddEntry(fogTreeView, fogCache, color.Name, color); + } } + + foreach (var col in temp.WaterColors) + { + var entry = colourfile.WaterColors.Find(color => color.Name == col.Name); + if (CurrentEntries.Contains(col.Name)) continue; + var color = entry ?? col; + AddEntry(waterTreeView, waterCache, color.Name, color); + AddEntry(underwaterTreeView, underwaterCache, color.Name, color); + AddEntry(fogTreeView, fogCache, color.Name, color); + } + + // force the filter function to run to carry filter over and fix treeview size + metroTextBox1_TextChanged(null, null); } void SetUpValueChanged(bool add) diff --git a/PCK-Studio/Forms/Editor/COLEditor.resx b/PCK-Studio/Forms/Editor/COLEditor.resx index add75e29..b2003d3c 100644 --- a/PCK-Studio/Forms/Editor/COLEditor.resx +++ b/PCK-Studio/Forms/Editor/COLEditor.resx @@ -739,24 +739,6 @@ 125, 17 - - 134, 22 - - - Copy Color - - - 134, 22 - - - Paste Color - - - 145, 22 - - - Restore Color - 146, 70 @@ -817,6 +799,24 @@ 1 + + 134, 22 + + + Copy Color + + + 134, 22 + + + Paste Color + + + 145, 22 + + + Restore Color + 0, 0