Update COLEditor

This commit is contained in:
miku-666
2022-06-05 20:27:04 +02:00
parent 632e9a2ed8
commit ba37536c39
4 changed files with 548 additions and 425 deletions

View File

@@ -9,16 +9,14 @@ namespace PckStudio.Classes.FileTypes
{
public class COLFile
{
public struct ColorEntry
public class ColorEntry
{
public string name;
public uint rgb;
public uint color;
}
public struct ExtendedColorEntry
public class ExtendedColorEntry : ColorEntry
{
public string name;
public uint argb;
public uint rgb;
public uint rgbcolor;
public uint unk;
}
@@ -32,7 +30,7 @@ namespace PckStudio.Classes.FileTypes
{
ColorEntry entry = new ColorEntry();
entry.name = ReadString(stream);
entry.rgb = ReadUint(stream);
entry.color = ReadUint(stream);
entries.Add(entry);
}
if (has_water_colors == 1)
@@ -42,8 +40,8 @@ namespace PckStudio.Classes.FileTypes
{
ExtendedColorEntry entry = new ExtendedColorEntry();
entry.name = ReadString(stream);
entry.argb = ReadUint(stream);
entry.rgb = ReadUint(stream);
entry.color = ReadUint(stream);
entry.rgbcolor = ReadUint(stream);
entry.unk = ReadUint(stream);
waterEntries.Add(entry);
}
@@ -106,7 +104,7 @@ namespace PckStudio.Classes.FileTypes
foreach (var colorEntry in entries)
{
WriteString(stream, colorEntry.name);
WriteUint(stream, colorEntry.rgb);
WriteUint(stream, colorEntry.color);
}
if (waterEntries.Count > 0)
{
@@ -114,8 +112,8 @@ namespace PckStudio.Classes.FileTypes
foreach (var colorEntry in waterEntries)
{
WriteString(stream, colorEntry.name);
WriteUint(stream, colorEntry.rgb);
WriteUint(stream, colorEntry.argb);
WriteUint(stream, colorEntry.color);
WriteUint(stream, colorEntry.rgbcolor);
WriteUint(stream, colorEntry.unk);
}
}

View File

@@ -33,45 +33,51 @@ namespace PckStudio.Forms.Utilities
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(COLEditor));
this.metroPanel1 = new MetroFramework.Controls.MetroPanel();
this.numericUpDown5 = new System.Windows.Forms.NumericUpDown();
this.numericUpDown4 = new System.Windows.Forms.NumericUpDown();
this.numericUpDown3 = new System.Windows.Forms.NumericUpDown();
this.numericUpDown2 = new System.Windows.Forms.NumericUpDown();
this.metroLabel6 = new MetroFramework.Controls.MetroLabel();
this.metroLabel5 = new MetroFramework.Controls.MetroLabel();
this.metroLabel4 = new MetroFramework.Controls.MetroLabel();
this.metroLabel3 = new MetroFramework.Controls.MetroLabel();
this.metroTextBox1 = new MetroFramework.Controls.MetroTextBox();
this.setColorBtn = new MetroFramework.Controls.MetroButton();
this.blueUpDown = new System.Windows.Forms.NumericUpDown();
this.greenUpDown = new System.Windows.Forms.NumericUpDown();
this.redUpDown = new System.Windows.Forms.NumericUpDown();
this.alphaUpDown = new System.Windows.Forms.NumericUpDown();
this.alphaLabel = new MetroFramework.Controls.MetroLabel();
this.blueLabel = new MetroFramework.Controls.MetroLabel();
this.greenLabel = new MetroFramework.Controls.MetroLabel();
this.redLabel = new MetroFramework.Controls.MetroLabel();
this.colorTextbox = new MetroFramework.Controls.MetroTextBox();
this.metroLabel1 = new MetroFramework.Controls.MetroLabel();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.menuStrip = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.tabControl = new MetroFramework.Controls.MetroTabControl();
this.colorsTab = new System.Windows.Forms.TabPage();
this.waterTab = new System.Windows.Forms.TabPage();
this.treeView2 = new System.Windows.Forms.TreeView();
this.colorsTab = new System.Windows.Forms.TabPage();
this.treeView1 = new System.Windows.Forms.TreeView();
this.tabControl = new MetroFramework.Controls.MetroTabControl();
this.metroPanel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown5)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown4)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.blueUpDown)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.greenUpDown)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.redUpDown)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.alphaUpDown)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.menuStrip.SuspendLayout();
this.waterTab.SuspendLayout();
this.colorsTab.SuspendLayout();
this.tabControl.SuspendLayout();
this.SuspendLayout();
//
// metroPanel1
//
this.metroPanel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.metroPanel1.Controls.Add(this.numericUpDown5);
this.metroPanel1.Controls.Add(this.numericUpDown4);
this.metroPanel1.Controls.Add(this.numericUpDown3);
this.metroPanel1.Controls.Add(this.numericUpDown2);
this.metroPanel1.Controls.Add(this.metroLabel6);
this.metroPanel1.Controls.Add(this.metroLabel5);
this.metroPanel1.Controls.Add(this.metroLabel4);
this.metroPanel1.Controls.Add(this.metroLabel3);
this.metroPanel1.Controls.Add(this.metroTextBox1);
this.metroPanel1.Controls.Add(this.setColorBtn);
this.metroPanel1.Controls.Add(this.blueUpDown);
this.metroPanel1.Controls.Add(this.greenUpDown);
this.metroPanel1.Controls.Add(this.redUpDown);
this.metroPanel1.Controls.Add(this.alphaUpDown);
this.metroPanel1.Controls.Add(this.alphaLabel);
this.metroPanel1.Controls.Add(this.blueLabel);
this.metroPanel1.Controls.Add(this.greenLabel);
this.metroPanel1.Controls.Add(this.redLabel);
this.metroPanel1.Controls.Add(this.colorTextbox);
this.metroPanel1.Controls.Add(this.metroLabel1);
this.metroPanel1.Controls.Add(this.pictureBox1);
resources.ApplyResources(this.metroPanel1, "metroPanel1");
@@ -85,112 +91,120 @@ namespace PckStudio.Forms.Utilities
this.metroPanel1.VerticalScrollbarHighlightOnWheel = false;
this.metroPanel1.VerticalScrollbarSize = 10;
//
// numericUpDown5
// setColorBtn
//
this.numericUpDown5.BackColor = System.Drawing.SystemColors.Desktop;
this.numericUpDown5.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.numericUpDown5, "numericUpDown5");
this.numericUpDown5.Maximum = new decimal(new int[] {
resources.ApplyResources(this.setColorBtn, "setColorBtn");
this.setColorBtn.Name = "setColorBtn";
this.setColorBtn.Theme = MetroFramework.MetroThemeStyle.Dark;
this.setColorBtn.UseSelectable = true;
this.setColorBtn.Click += new System.EventHandler(this.setColorBtn_Click);
//
// blueUpDown
//
this.blueUpDown.BackColor = System.Drawing.SystemColors.Desktop;
this.blueUpDown.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.blueUpDown, "blueUpDown");
this.blueUpDown.Maximum = new decimal(new int[] {
255,
0,
0,
0});
this.numericUpDown5.Name = "numericUpDown5";
this.numericUpDown5.ValueChanged += new System.EventHandler(this.color_ValueChanged);
this.blueUpDown.Name = "blueUpDown";
this.blueUpDown.ValueChanged += new System.EventHandler(this.color_ValueChanged);
//
// numericUpDown4
// greenUpDown
//
this.numericUpDown4.BackColor = System.Drawing.SystemColors.Desktop;
this.numericUpDown4.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.numericUpDown4, "numericUpDown4");
this.numericUpDown4.Maximum = new decimal(new int[] {
this.greenUpDown.BackColor = System.Drawing.SystemColors.Desktop;
this.greenUpDown.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.greenUpDown, "greenUpDown");
this.greenUpDown.Maximum = new decimal(new int[] {
255,
0,
0,
0});
this.numericUpDown4.Name = "numericUpDown4";
this.numericUpDown4.ValueChanged += new System.EventHandler(this.color_ValueChanged);
this.greenUpDown.Name = "greenUpDown";
this.greenUpDown.ValueChanged += new System.EventHandler(this.color_ValueChanged);
//
// numericUpDown3
// redUpDown
//
this.numericUpDown3.BackColor = System.Drawing.SystemColors.Desktop;
this.numericUpDown3.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.numericUpDown3, "numericUpDown3");
this.numericUpDown3.Maximum = new decimal(new int[] {
this.redUpDown.BackColor = System.Drawing.SystemColors.Desktop;
this.redUpDown.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.redUpDown, "redUpDown");
this.redUpDown.Maximum = new decimal(new int[] {
255,
0,
0,
0});
this.numericUpDown3.Name = "numericUpDown3";
this.numericUpDown3.ValueChanged += new System.EventHandler(this.color_ValueChanged);
this.redUpDown.Name = "redUpDown";
this.redUpDown.ValueChanged += new System.EventHandler(this.color_ValueChanged);
//
// numericUpDown2
// alphaUpDown
//
this.numericUpDown2.BackColor = System.Drawing.SystemColors.Desktop;
this.numericUpDown2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.numericUpDown2, "numericUpDown2");
this.numericUpDown2.Maximum = new decimal(new int[] {
this.alphaUpDown.BackColor = System.Drawing.SystemColors.Desktop;
this.alphaUpDown.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(204)))), ((int)(((byte)(204)))), ((int)(((byte)(204)))));
resources.ApplyResources(this.alphaUpDown, "alphaUpDown");
this.alphaUpDown.Maximum = new decimal(new int[] {
255,
0,
0,
0});
this.numericUpDown2.Name = "numericUpDown2";
this.numericUpDown2.ValueChanged += new System.EventHandler(this.color_ValueChanged);
this.alphaUpDown.Name = "alphaUpDown";
this.alphaUpDown.ValueChanged += new System.EventHandler(this.color_ValueChanged);
//
// metroLabel6
// alphaLabel
//
resources.ApplyResources(this.metroLabel6, "metroLabel6");
this.metroLabel6.Name = "metroLabel6";
this.metroLabel6.Theme = MetroFramework.MetroThemeStyle.Dark;
resources.ApplyResources(this.alphaLabel, "alphaLabel");
this.alphaLabel.Name = "alphaLabel";
this.alphaLabel.Theme = MetroFramework.MetroThemeStyle.Dark;
//
// metroLabel5
// blueLabel
//
resources.ApplyResources(this.metroLabel5, "metroLabel5");
this.metroLabel5.Name = "metroLabel5";
this.metroLabel5.Theme = MetroFramework.MetroThemeStyle.Dark;
resources.ApplyResources(this.blueLabel, "blueLabel");
this.blueLabel.Name = "blueLabel";
this.blueLabel.Theme = MetroFramework.MetroThemeStyle.Dark;
//
// metroLabel4
// greenLabel
//
resources.ApplyResources(this.metroLabel4, "metroLabel4");
this.metroLabel4.Name = "metroLabel4";
this.metroLabel4.Theme = MetroFramework.MetroThemeStyle.Dark;
resources.ApplyResources(this.greenLabel, "greenLabel");
this.greenLabel.Name = "greenLabel";
this.greenLabel.Theme = MetroFramework.MetroThemeStyle.Dark;
//
// metroLabel3
// redLabel
//
resources.ApplyResources(this.metroLabel3, "metroLabel3");
this.metroLabel3.Name = "metroLabel3";
this.metroLabel3.Theme = MetroFramework.MetroThemeStyle.Dark;
resources.ApplyResources(this.redLabel, "redLabel");
this.redLabel.Name = "redLabel";
this.redLabel.Theme = MetroFramework.MetroThemeStyle.Dark;
//
// metroTextBox1
// colorTextbox
//
//
//
//
this.metroTextBox1.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image")));
this.metroTextBox1.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode")));
this.metroTextBox1.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location")));
this.metroTextBox1.CustomButton.Name = "";
this.metroTextBox1.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size")));
this.metroTextBox1.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
this.metroTextBox1.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex")));
this.metroTextBox1.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
this.metroTextBox1.CustomButton.UseSelectable = true;
this.metroTextBox1.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible")));
this.metroTextBox1.Lines = new string[0];
resources.ApplyResources(this.metroTextBox1, "metroTextBox1");
this.metroTextBox1.MaxLength = 32767;
this.metroTextBox1.Name = "metroTextBox1";
this.metroTextBox1.PasswordChar = '\0';
this.metroTextBox1.ScrollBars = System.Windows.Forms.ScrollBars.None;
this.metroTextBox1.SelectedText = "";
this.metroTextBox1.SelectionLength = 0;
this.metroTextBox1.SelectionStart = 0;
this.metroTextBox1.ShortcutsEnabled = true;
this.metroTextBox1.Theme = MetroFramework.MetroThemeStyle.Dark;
this.metroTextBox1.UseSelectable = true;
this.metroTextBox1.WaterMarkColor = System.Drawing.Color.FromArgb(((int)(((byte)(109)))), ((int)(((byte)(109)))), ((int)(((byte)(109)))));
this.metroTextBox1.WaterMarkFont = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Pixel);
this.metroTextBox1.TextChanged += new System.EventHandler(this.metroTextBox1_TextChanged);
this.colorTextbox.CustomButton.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image")));
this.colorTextbox.CustomButton.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("resource.ImeMode")));
this.colorTextbox.CustomButton.Location = ((System.Drawing.Point)(resources.GetObject("resource.Location")));
this.colorTextbox.CustomButton.Name = "";
this.colorTextbox.CustomButton.Size = ((System.Drawing.Size)(resources.GetObject("resource.Size")));
this.colorTextbox.CustomButton.Style = MetroFramework.MetroColorStyle.Blue;
this.colorTextbox.CustomButton.TabIndex = ((int)(resources.GetObject("resource.TabIndex")));
this.colorTextbox.CustomButton.Theme = MetroFramework.MetroThemeStyle.Light;
this.colorTextbox.CustomButton.UseSelectable = true;
this.colorTextbox.CustomButton.Visible = ((bool)(resources.GetObject("resource.Visible")));
this.colorTextbox.Lines = new string[0];
resources.ApplyResources(this.colorTextbox, "colorTextbox");
this.colorTextbox.MaxLength = 32767;
this.colorTextbox.Name = "colorTextbox";
this.colorTextbox.PasswordChar = '\0';
this.colorTextbox.ScrollBars = System.Windows.Forms.ScrollBars.None;
this.colorTextbox.SelectedText = "";
this.colorTextbox.SelectionLength = 0;
this.colorTextbox.SelectionStart = 0;
this.colorTextbox.ShortcutsEnabled = true;
this.colorTextbox.Theme = MetroFramework.MetroThemeStyle.Dark;
this.colorTextbox.UseSelectable = true;
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);
//
// metroLabel1
//
@@ -227,37 +241,45 @@ namespace PckStudio.Forms.Utilities
this.saveToolStripMenuItem1.Name = "saveToolStripMenuItem1";
this.saveToolStripMenuItem1.Click += new System.EventHandler(this.saveToolStripMenuItem1_Click);
//
// waterTab
//
this.waterTab.BackColor = System.Drawing.SystemColors.WindowFrame;
this.waterTab.Controls.Add(this.treeView2);
resources.ApplyResources(this.waterTab, "waterTab");
this.waterTab.Name = "waterTab";
//
// treeView2
//
resources.ApplyResources(this.treeView2, "treeView2");
this.treeView2.Name = "treeView2";
this.treeView2.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView2_AfterSelect);
this.treeView2.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView2_KeyDown);
//
// colorsTab
//
this.colorsTab.BackColor = System.Drawing.SystemColors.WindowFrame;
this.colorsTab.Controls.Add(this.treeView1);
resources.ApplyResources(this.colorsTab, "colorsTab");
this.colorsTab.Name = "colorsTab";
//
// treeView1
//
resources.ApplyResources(this.treeView1, "treeView1");
this.treeView1.Name = "treeView1";
this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
this.treeView1.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);
resources.ApplyResources(this.tabControl, "tabControl");
this.tabControl.Name = "tabControl";
this.tabControl.SelectedIndex = 0;
this.tabControl.Style = MetroFramework.MetroColorStyle.White;
this.tabControl.Theme = MetroFramework.MetroThemeStyle.Dark;
this.tabControl.UseSelectable = true;
//
// colorsTab
//
this.colorsTab.BackColor = System.Drawing.SystemColors.WindowFrame;
resources.ApplyResources(this.colorsTab, "colorsTab");
this.colorsTab.Name = "colorsTab";
//
// waterTab
//
this.waterTab.BackColor = System.Drawing.SystemColors.WindowFrame;
resources.ApplyResources(this.waterTab, "waterTab");
this.waterTab.Name = "waterTab";
//this.treeView1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
//this.treeView1.ForeColor = System.Drawing.Color.White;
//this.treeView1.LabelEdit = false;
//this.treeView1.LineColor = System.Drawing.Color.White;
//this.treeView1.Name = "treeView1";
//this.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeViews_AfterSelect);
//this.treeView1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeViews_KeyDown);
//this.treeView1.Dock = DockStyle.Fill;
//
// COLEditor
//
resources.ApplyResources(this, "$this");
@@ -269,15 +291,18 @@ namespace PckStudio.Forms.Utilities
this.Name = "COLEditor";
this.Style = MetroFramework.MetroColorStyle.Silver;
this.Theme = MetroFramework.MetroThemeStyle.Dark;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.COLEditor_FormClosing);
this.metroPanel1.ResumeLayout(false);
this.metroPanel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown5)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.blueUpDown)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.greenUpDown)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.redUpDown)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.alphaUpDown)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.menuStrip.ResumeLayout(false);
this.menuStrip.PerformLayout();
this.waterTab.ResumeLayout(false);
this.colorsTab.ResumeLayout(false);
this.tabControl.ResumeLayout(false);
this.ResumeLayout(false);
@@ -286,22 +311,25 @@ namespace PckStudio.Forms.Utilities
#endregion
private MetroFramework.Controls.MetroPanel metroPanel1;
private MetroFramework.Controls.MetroTextBox metroTextBox1;
private MetroFramework.Controls.MetroTextBox colorTextbox;
private TreeView treeView1;
private TreeView treeView2;
private MetroFramework.Controls.MetroLabel metroLabel1;
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.MenuStrip menuStrip;
private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem1;
private MetroFramework.Controls.MetroLabel metroLabel5;
private MetroFramework.Controls.MetroLabel metroLabel4;
private MetroFramework.Controls.MetroLabel metroLabel3;
private MetroFramework.Controls.MetroLabel metroLabel6;
private System.Windows.Forms.NumericUpDown numericUpDown5;
private System.Windows.Forms.NumericUpDown numericUpDown4;
private System.Windows.Forms.NumericUpDown numericUpDown3;
private System.Windows.Forms.NumericUpDown numericUpDown2;
private MetroFramework.Controls.MetroTabControl tabControl;
private System.Windows.Forms.TabPage colorsTab;
private System.Windows.Forms.TabPage waterTab;
}
private MetroFramework.Controls.MetroLabel blueLabel;
private MetroFramework.Controls.MetroLabel greenLabel;
private MetroFramework.Controls.MetroLabel redLabel;
private MetroFramework.Controls.MetroLabel alphaLabel;
private System.Windows.Forms.NumericUpDown blueUpDown;
private System.Windows.Forms.NumericUpDown greenUpDown;
private System.Windows.Forms.NumericUpDown redUpDown;
private System.Windows.Forms.NumericUpDown alphaUpDown;
private TabPage waterTab;
private TabPage colorsTab;
private MetroFramework.Controls.MetroTabControl tabControl;
private MetroFramework.Controls.MetroButton setColorBtn;
}
}

View File

@@ -16,81 +16,63 @@ namespace PckStudio.Forms.Utilities
public partial class COLEditor : MetroForm
{
COLFile cf = new COLFile();
PCKFile.FileData mf;
TreeView treeView1 = new TreeView(); // Normal Color Table
TreeView treeView2 = new TreeView(); // Water Color Table
public COLEditor(PCKFile.FileData MineFile)
public byte[] data { get; private set; } = new byte[0];
public COLEditor(COLFile colFile)
{
InitializeComponent();
metroLabel6.Visible = false;
numericUpDown2.Visible = false;
mf = MineFile;
using (var stream = new MemoryStream(mf.data))
{
cf.Open(stream);
}
colorsTab.Controls.Add(treeView1);
waterTab.Controls.Add(treeView2);
tabControl.TabStop = true;
cf = colFile;
foreach (var obj in cf.entries)
{
TreeNode tn = new TreeNode(obj.name);
tn.Tag = obj.color;
tn.Tag = obj;
treeView1.Nodes.Add(tn);
}
foreach (var obj in cf.waterEntries)
{
TreeNode tn = new TreeNode(obj.name);
tn.Tag = obj.color;
tn.Tag = obj;
treeView2.Nodes.Add(tn);
}
}
private void treeViews_AfterSelect(object sender, TreeViewEventArgs e)
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
//metroTextBox2.Text = tv.SelectedNode.Text;
TreeView tv = (TreeView)sender;
if (tv.SelectedNode.Tag != null && metroTextBox1.Text.Length % 2 == 0)
{
bool hasAlpha = tabControl.SelectedTab == waterTab;
metroTextBox1.Text = tv.SelectedNode.Tag.ToString();
if (treeView1.SelectedNode.Tag == null)
return;
if (hasAlpha)
{
numericUpDown2.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[0];
numericUpDown3.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[1];
numericUpDown4.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[2];
numericUpDown5.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[3];
pictureBox1.BackColor = Color.FromArgb(StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[0], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[1], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[2], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[3]);
}
else
{
numericUpDown3.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[0];
numericUpDown4.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[1];
numericUpDown5.Value = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[2];
pictureBox1.BackColor = Color.FromArgb(255, StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[0], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[1], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[2]);
}
}
var colorEntry = (COLFile.ColorEntry)treeView1.SelectedNode.Tag;
alphaUpDown.Visible = false;
alphaLabel.Visible = false;
var color = colorEntry.color;
redUpDown.Value = color >> 16 & 0xff;
greenUpDown.Value = color >> 8 & 0xff;
blueUpDown.Value = color & 0xff;
pictureBox1.BackColor = Color.FromArgb(0xff << 24 | (int)color);
}
private void treeView2_AfterSelect(object sender, TreeViewEventArgs e)
{
if (treeView2.SelectedNode.Tag == null)
return;
var colorEntry = (COLFile.ExtendedColorEntry)treeView2.SelectedNode.Tag;
int color = (int)colorEntry.color;
alphaUpDown.Enabled = true;
alphaUpDown.Visible = true;
alphaLabel.Visible = true;
alphaUpDown.Value = color >> 24 & 0xff;
redUpDown.Value = color >> 16 & 0xff;
greenUpDown.Value = color >> 8 & 0xff;
blueUpDown.Value = color & 0xff;
pictureBox1.BackColor = Color.FromArgb(color);
}
private void saveToolStripMenuItem1_Click(object sender, EventArgs e)
{
cf.entries.Clear();
cf.waterEntries.Clear();
foreach (TreeNode tn in treeView1.Nodes)
{
cf.entries.Add(new COLFile.COLEntry(){ name = tn.Text, color = (uint)tn.Tag });
}
foreach (TreeNode tn in treeView2.Nodes)
{
cf.waterEntries.Add(new COLFile.COLEntry() { name = tn.Text, color = (uint)tn.Tag });
}
using (var stream = new MemoryStream())
{
cf.Save(stream);
mf.SetData(stream.ToArray());
data = stream.ToArray();
}
}
@@ -115,96 +97,124 @@ namespace PckStudio.Forms.Utilities
return val - (val < 58 ? 48 : (val < 97 ? 55 : 87));
}
public void treeViews_KeyDown(object sender, KeyEventArgs e)
public void treeView1_KeyDown(object sender, KeyEventArgs e)
{
TreeView tv = (TreeView)sender;
if (e.KeyCode == Keys.Delete)
var node = treeView1.SelectedNode;
if (e.KeyCode == Keys.Delete && node.Tag is COLFile.ColorEntry)
{
//removes minefile node
//cf.entries.Remove((object[])treeView1.SelectedNode.Tag);
//if(treeView1.Nodes.Count > 0) treeView1.Nodes.Remove(treeView1.SelectedNode);
}
cf.entries.Remove((COLFile.ColorEntry)node.Tag);
if (treeView1.Nodes.Count > 0) treeView1.Nodes.Remove(node);
}
}
private void metroTextBox1_TextChanged(object sender, EventArgs e)
{
if (metroTextBox1.Text.Length % 2 != 0) return;
TreeView tv = (TreeView)tabControl.SelectedTab.Controls[0];
tv.SelectedNode.Tag = metroTextBox1.Text;
bool hasAlpha = tabControl.SelectedTab == waterTab;
if (tv.SelectedNode.Tag != null && (metroTextBox1.Text.Length == (hasAlpha ? 8 : 6)))
private void treeView2_KeyDown(object sender, KeyEventArgs e)
{
var node = treeView2.SelectedNode;
if (e.KeyCode == Keys.Delete && node.Tag is COLFile.ExtendedColorEntry)
{
numericUpDown3.Value = StringToByteArrayFastest(metroTextBox1.Text)[!hasAlpha ? 0 : 1];
numericUpDown4.Value = StringToByteArrayFastest(metroTextBox1.Text)[!hasAlpha ? 1 : 2];
numericUpDown5.Value = StringToByteArrayFastest(metroTextBox1.Text)[!hasAlpha ? 2 : 3];
metroTextBox1.Text = tv.SelectedNode.Tag.ToString();
if (hasAlpha)
{
metroTextBox1.MaxLength = 8;
metroLabel6.Visible = true;
numericUpDown2.Visible = true;
numericUpDown2.Value = StringToByteArrayFastest(metroTextBox1.Text)[0];
pictureBox1.BackColor = Color.FromArgb(StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[0], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[1], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[2], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[3]);
}
else
{
metroTextBox1.MaxLength = 6;
metroLabel6.Visible = false;
numericUpDown2.Visible = false;
pictureBox1.BackColor = Color.FromArgb(255, StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[0], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[1], StringToByteArrayFastest(tv.SelectedNode.Tag.ToString())[2]);
}
}
cf.waterEntries.Remove((COLFile.ExtendedColorEntry)node.Tag);
if (treeView2.Nodes.Count > 0) treeView2.Nodes.Remove(node);
}
}
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);
}
private void color_ValueChanged(object sender, EventArgs e)
{
TreeView tv = (TreeView)tabControl.SelectedTab.Controls[0];
if (tv.SelectedNode == null) return;
byte[] origHex = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString());
bool hasAlpha = tabControl.SelectedTab == waterTab;
string hex = "";
if (((NumericUpDown)sender).Name == "numericUpDown2")
{
hex += ((int)numericUpDown2.Value).ToString("X2");
hex += origHex[1].ToString("X2");
hex += origHex[2].ToString("X2");
hex += origHex[3].ToString("X2");
}
else if (((NumericUpDown)sender).Name == "numericUpDown3")
{
if (hasAlpha) hex += origHex[0].ToString("X2");
hex += ((int)numericUpDown3.Value).ToString("X2");
hex += origHex[hasAlpha ? 2 : 1].ToString("X2");
hex += origHex[hasAlpha ? 3 : 2].ToString("X2");
}
else if (((NumericUpDown)sender).Name == "numericUpDown4")
{
if (hasAlpha) hex += origHex[0].ToString("X2");
hex += origHex[hasAlpha ? 1 : 0].ToString("X2");
hex += ((int)numericUpDown4.Value).ToString("X2");
hex += origHex[hasAlpha ? 3 : 2].ToString("X2");
}
else if (((NumericUpDown)sender).Name == "numericUpDown5")
{
if (hasAlpha) hex += origHex[0].ToString("X2");
hex += origHex[hasAlpha ? 1 : 0].ToString("X2");
hex += origHex[hasAlpha ? 2 : 1].ToString("X2");
hex += ((int)numericUpDown5.Value).ToString("X2");
}
else // just in case some weird thing happens i dunno - matt
{
if (hasAlpha) hex += origHex[0].ToString("X2");
hex += origHex[hasAlpha ? 1 : 0].ToString("X2");
hex += origHex[hasAlpha ? 2 : 1].ToString("X2");
hex += origHex[hasAlpha ? 3 : 2].ToString("X2");
}
//TreeView tv = (TreeView)tabControl.SelectedTab.Controls[0];
//if (tv.SelectedNode == null) return;
//byte[] origHex = StringToByteArrayFastest(tv.SelectedNode.Tag.ToString());
//bool hasAlpha = tabControl.SelectedTab == waterTab;
//string hex = "";
//if (((NumericUpDown)sender).Name == "numericUpDown2")
//{
// hex += ((int)alphaUpDown.Value).ToString("X2");
// hex += origHex[1].ToString("X2");
// hex += origHex[2].ToString("X2");
// hex += origHex[3].ToString("X2");
//}
//else if (((NumericUpDown)sender).Name == "numericUpDown3")
//{
// if (hasAlpha) hex += origHex[0].ToString("X2");
// hex += ((int)redUpDown.Value).ToString("X2");
// hex += origHex[hasAlpha ? 2 : 1].ToString("X2");
// hex += origHex[hasAlpha ? 3 : 2].ToString("X2");
//}
//else if (((NumericUpDown)sender).Name == "numericUpDown4")
//{
// if (hasAlpha) hex += origHex[0].ToString("X2");
// hex += origHex[hasAlpha ? 1 : 0].ToString("X2");
// hex += ((int)greenUpDown.Value).ToString("X2");
// hex += origHex[hasAlpha ? 3 : 2].ToString("X2");
//}
//else if (((NumericUpDown)sender).Name == "numericUpDown5")
//{
// if (hasAlpha) hex += origHex[0].ToString("X2");
// hex += origHex[hasAlpha ? 1 : 0].ToString("X2");
// hex += origHex[hasAlpha ? 2 : 1].ToString("X2");
// hex += ((int)blueUpDown.Value).ToString("X2");
//}
//else // just in case some weird thing happens i dunno - matt
//{
// if (hasAlpha) hex += origHex[0].ToString("X2");
// hex += origHex[hasAlpha ? 1 : 0].ToString("X2");
// hex += origHex[hasAlpha ? 2 : 1].ToString("X2");
// hex += origHex[hasAlpha ? 3 : 2].ToString("X2");
//}
Console.WriteLine(hex);
metroTextBox1.Text = hex;
//Console.WriteLine(hex);
//colorTextbox.Text = hex;
}
}
private void setColorBtn_Click(object sender, EventArgs e)
{
ColorDialog colorPick = new ColorDialog();
colorPick.AllowFullOpen = true;
colorPick.AnyColor = true;
colorPick.SolidColorOnly = tabControl.SelectedTab == colorsTab;
if (colorPick.ShowDialog() != DialogResult.OK) return;
pictureBox1.BackColor = colorPick.Color;
if (tabControl.SelectedTab == waterTab && treeView2.SelectedNode != null &&
treeView2.SelectedNode.Tag != null && treeView2.SelectedNode.Tag is COLFile.ExtendedColorEntry)
{
var colorEntry = ((COLFile.ExtendedColorEntry)treeView2.SelectedNode.Tag);
colorEntry.color = (uint)colorPick.Color.ToArgb();
}
else if (tabControl.SelectedTab == colorsTab && treeView1.SelectedNode != null &&
treeView1.SelectedNode.Tag != null && treeView1.SelectedNode.Tag is COLFile.ColorEntry)
{
var colorEntry = ((COLFile.ColorEntry)treeView1.SelectedNode.Tag);
colorEntry.color = (uint)colorPick.Color.ToArgb() & 0xffffff;
}
colorPick.Dispose();
}
private void COLEditor_FormClosing(object sender, FormClosingEventArgs e)
{
DialogResult = DialogResult.OK;
}
}
}

View File

@@ -118,199 +118,229 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="numericUpDown5.Location" type="System.Drawing.Point, System.Drawing">
<value>341, 406</value>
<data name="setColorBtn.Location" type="System.Drawing.Point, System.Drawing">
<value>343, 290</value>
</data>
<data name="numericUpDown5.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 20</value>
<data name="setColorBtn.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 23</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="numericUpDown5.TabIndex" type="System.Int32, mscorlib">
<value>21</value>
<data name="setColorBtn.TabIndex" type="System.Int32, mscorlib">
<value>22</value>
</data>
<data name="&gt;&gt;numericUpDown5.Name" xml:space="preserve">
<value>numericUpDown5</value>
<data name="setColorBtn.Text" xml:space="preserve">
<value>Set Color</value>
</data>
<data name="&gt;&gt;numericUpDown5.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="&gt;&gt;setColorBtn.Name" xml:space="preserve">
<value>setColorBtn</value>
</data>
<data name="&gt;&gt;numericUpDown5.Parent" xml:space="preserve">
<data name="&gt;&gt;setColorBtn.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroButton, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;setColorBtn.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;numericUpDown5.ZOrder" xml:space="preserve">
<data name="&gt;&gt;setColorBtn.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="numericUpDown4.Location" type="System.Drawing.Point, System.Drawing">
<value>341, 380</value>
<data name="blueUpDown.Location" type="System.Drawing.Point, System.Drawing">
<value>343, 397</value>
</data>
<data name="numericUpDown4.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 20</value>
<data name="blueUpDown.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 20</value>
</data>
<data name="numericUpDown4.TabIndex" type="System.Int32, mscorlib">
<value>20</value>
<data name="blueUpDown.TabIndex" type="System.Int32, mscorlib">
<value>21</value>
</data>
<data name="&gt;&gt;numericUpDown4.Name" xml:space="preserve">
<value>numericUpDown4</value>
<data name="&gt;&gt;blueUpDown.Name" xml:space="preserve">
<value>blueUpDown</value>
</data>
<data name="&gt;&gt;numericUpDown4.Type" xml:space="preserve">
<data name="&gt;&gt;blueUpDown.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;numericUpDown4.Parent" xml:space="preserve">
<data name="&gt;&gt;blueUpDown.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;numericUpDown4.ZOrder" xml:space="preserve">
<data name="&gt;&gt;blueUpDown.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="numericUpDown3.Location" type="System.Drawing.Point, System.Drawing">
<value>341, 354</value>
<data name="greenUpDown.Location" type="System.Drawing.Point, System.Drawing">
<value>343, 371</value>
</data>
<data name="numericUpDown3.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 20</value>
<data name="greenUpDown.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 20</value>
</data>
<data name="numericUpDown3.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
<data name="greenUpDown.TabIndex" type="System.Int32, mscorlib">
<value>20</value>
</data>
<data name="&gt;&gt;numericUpDown3.Name" xml:space="preserve">
<value>numericUpDown3</value>
<data name="&gt;&gt;greenUpDown.Name" xml:space="preserve">
<value>greenUpDown</value>
</data>
<data name="&gt;&gt;numericUpDown3.Type" xml:space="preserve">
<data name="&gt;&gt;greenUpDown.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;numericUpDown3.Parent" xml:space="preserve">
<data name="&gt;&gt;greenUpDown.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;numericUpDown3.ZOrder" xml:space="preserve">
<data name="&gt;&gt;greenUpDown.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="numericUpDown2.Location" type="System.Drawing.Point, System.Drawing">
<value>341, 328</value>
<data name="redUpDown.Location" type="System.Drawing.Point, System.Drawing">
<value>343, 345</value>
</data>
<data name="numericUpDown2.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 20</value>
<data name="redUpDown.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 20</value>
</data>
<data name="numericUpDown2.TabIndex" type="System.Int32, mscorlib">
<value>18</value>
<data name="redUpDown.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
</data>
<data name="&gt;&gt;numericUpDown2.Name" xml:space="preserve">
<value>numericUpDown2</value>
<data name="&gt;&gt;redUpDown.Name" xml:space="preserve">
<value>redUpDown</value>
</data>
<data name="&gt;&gt;numericUpDown2.Type" xml:space="preserve">
<data name="&gt;&gt;redUpDown.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;numericUpDown2.Parent" xml:space="preserve">
<data name="&gt;&gt;redUpDown.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;numericUpDown2.ZOrder" xml:space="preserve">
<data name="&gt;&gt;redUpDown.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="metroLabel6.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
<data name="alphaUpDown.Location" type="System.Drawing.Point, System.Drawing">
<value>343, 319</value>
</data>
<data name="metroLabel6.Location" type="System.Drawing.Point, System.Drawing">
<value>318, 328</value>
<data name="alphaUpDown.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 20</value>
</data>
<data name="metroLabel6.Size" type="System.Drawing.Size, System.Drawing">
<value>21, 19</value>
<data name="alphaUpDown.TabIndex" type="System.Int32, mscorlib">
<value>18</value>
</data>
<data name="metroLabel6.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
<data name="alphaUpDown.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="metroLabel6.Text" xml:space="preserve">
<value>A:</value>
<data name="&gt;&gt;alphaUpDown.Name" xml:space="preserve">
<value>alphaUpDown</value>
</data>
<data name="&gt;&gt;metroLabel6.Name" xml:space="preserve">
<value>metroLabel6</value>
<data name="&gt;&gt;alphaUpDown.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;metroLabel6.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;metroLabel6.Parent" xml:space="preserve">
<data name="&gt;&gt;alphaUpDown.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;metroLabel6.ZOrder" xml:space="preserve">
<data name="&gt;&gt;alphaUpDown.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="metroLabel5.AutoSize" type="System.Boolean, mscorlib">
<data name="alphaLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="metroLabel5.Location" type="System.Drawing.Point, System.Drawing">
<value>318, 403</value>
<data name="alphaLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 320</value>
</data>
<data name="metroLabel5.Size" type="System.Drawing.Size, System.Drawing">
<value>20, 19</value>
</data>
<data name="metroLabel5.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
</data>
<data name="metroLabel5.Text" xml:space="preserve">
<value>B:</value>
</data>
<data name="&gt;&gt;metroLabel5.Name" xml:space="preserve">
<value>metroLabel5</value>
</data>
<data name="&gt;&gt;metroLabel5.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;metroLabel5.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;metroLabel5.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="metroLabel4.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="metroLabel4.Location" type="System.Drawing.Point, System.Drawing">
<value>318, 378</value>
</data>
<data name="metroLabel4.Size" type="System.Drawing.Size, System.Drawing">
<data name="alphaLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>21, 19</value>
</data>
<data name="metroLabel4.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
<data name="alphaLabel.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
</data>
<data name="metroLabel4.Text" xml:space="preserve">
<value>G:</value>
<data name="alphaLabel.Text" xml:space="preserve">
<value>A:</value>
</data>
<data name="&gt;&gt;metroLabel4.Name" xml:space="preserve">
<value>metroLabel4</value>
<data name="alphaLabel.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;metroLabel4.Type" xml:space="preserve">
<data name="&gt;&gt;alphaLabel.Name" xml:space="preserve">
<value>alphaLabel</value>
</data>
<data name="&gt;&gt;alphaLabel.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;metroLabel4.Parent" xml:space="preserve">
<data name="&gt;&gt;alphaLabel.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;metroLabel4.ZOrder" xml:space="preserve">
<value>8</value>
<data name="&gt;&gt;alphaLabel.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="metroLabel3.AutoSize" type="System.Boolean, mscorlib">
<data name="blueLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="metroLabel3.Location" type="System.Drawing.Point, System.Drawing">
<value>318, 353</value>
<data name="blueLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>311, 395</value>
</data>
<data name="metroLabel3.Size" type="System.Drawing.Size, System.Drawing">
<data name="blueLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>20, 19</value>
</data>
<data name="metroLabel3.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
<data name="blueLabel.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
</data>
<data name="metroLabel3.Text" xml:space="preserve">
<value>R:</value>
<data name="blueLabel.Text" xml:space="preserve">
<value>B:</value>
</data>
<data name="&gt;&gt;metroLabel3.Name" xml:space="preserve">
<value>metroLabel3</value>
<data name="&gt;&gt;blueLabel.Name" xml:space="preserve">
<value>blueLabel</value>
</data>
<data name="&gt;&gt;metroLabel3.Type" xml:space="preserve">
<data name="&gt;&gt;blueLabel.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;metroLabel3.Parent" xml:space="preserve">
<data name="&gt;&gt;blueLabel.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;metroLabel3.ZOrder" xml:space="preserve">
<data name="&gt;&gt;blueLabel.ZOrder" xml:space="preserve">
<value>8</value>
</data>
<data name="greenLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="greenLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>310, 371</value>
</data>
<data name="greenLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>21, 19</value>
</data>
<data name="greenLabel.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
</data>
<data name="greenLabel.Text" xml:space="preserve">
<value>G:</value>
</data>
<data name="&gt;&gt;greenLabel.Name" xml:space="preserve">
<value>greenLabel</value>
</data>
<data name="&gt;&gt;greenLabel.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;greenLabel.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;greenLabel.ZOrder" xml:space="preserve">
<value>9</value>
</data>
<data name="redLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="redLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>311, 345</value>
</data>
<data name="redLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>20, 19</value>
</data>
<data name="redLabel.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="redLabel.Text" xml:space="preserve">
<value>R:</value>
</data>
<data name="&gt;&gt;redLabel.Name" xml:space="preserve">
<value>redLabel</value>
</data>
<data name="&gt;&gt;redLabel.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroLabel, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;redLabel.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;redLabel.ZOrder" xml:space="preserve">
<value>10</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="resource.Image" type="System.Resources.ResXNullRef, System.Windows.Forms">
<value />
@@ -319,7 +349,7 @@
<value>NoControl</value>
</data>
<data name="resource.Location" type="System.Drawing.Point, System.Drawing">
<value>105, 1</value>
<value>103, 1</value>
</data>
<data name="resource.Size" type="System.Drawing.Size, System.Drawing">
<value>21, 21</value>
@@ -330,32 +360,32 @@
<data name="resource.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="metroTextBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>341, 299</value>
<data name="colorTextbox.Location" type="System.Drawing.Point, System.Drawing">
<value>343, 423</value>
</data>
<data name="metroTextBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 23</value>
<data name="colorTextbox.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 23</value>
</data>
<data name="metroTextBox1.TabIndex" type="System.Int32, mscorlib">
<data name="colorTextbox.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="&gt;&gt;metroTextBox1.Name" xml:space="preserve">
<value>metroTextBox1</value>
<data name="&gt;&gt;colorTextbox.Name" xml:space="preserve">
<value>colorTextbox</value>
</data>
<data name="&gt;&gt;metroTextBox1.Type" xml:space="preserve">
<data name="&gt;&gt;colorTextbox.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroTextBox, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="&gt;&gt;metroTextBox1.Parent" xml:space="preserve">
<data name="&gt;&gt;colorTextbox.Parent" xml:space="preserve">
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;metroTextBox1.ZOrder" xml:space="preserve">
<value>10</value>
<data name="&gt;&gt;colorTextbox.ZOrder" xml:space="preserve">
<value>11</value>
</data>
<data name="metroLabel1.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="metroLabel1.Location" type="System.Drawing.Point, System.Drawing">
<value>295, 299</value>
<value>285, 423</value>
</data>
<data name="metroLabel1.Size" type="System.Drawing.Size, System.Drawing">
<value>46, 19</value>
@@ -376,13 +406,13 @@
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;metroLabel1.ZOrder" xml:space="preserve">
<value>11</value>
<value>12</value>
</data>
<data name="pictureBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>295, 106</value>
<value>295, 92</value>
</data>
<data name="pictureBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 163</value>
<value>173, 173</value>
</data>
<data name="pictureBox1.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -397,7 +427,7 @@
<value>metroPanel1</value>
</data>
<data name="&gt;&gt;pictureBox1.ZOrder" xml:space="preserve">
<value>12</value>
<value>13</value>
</data>
<data name="metroPanel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
@@ -432,7 +462,7 @@
<data name="saveToolStripMenuItem1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wgAADsIBFShKgAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADfSURBVDhPYxg8
vAAADrwBlbxySQAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAADfSURBVDhPYxg8
QLt++3yTGbf/Fm599P/Nh49wfPXxq/+rTt37f+Dak/8gOSBgAGEMANIMxGBFyAasPf/0v8GE8//z1t8C
y4HU4DIALIluwLpLL+HiMANAGKoNAWASCavv/n/57gPcgOvP3oENOXj7NViOoAFGU6791+k4ghWD5Aga
QCyGakMAkODcU89R/I8Ng9TgNADk14dPn/8/c+kqVgySgwUqVBsCwAx49urN/zsPHmPFIDmaGvAXJInN
@@ -475,28 +505,31 @@
<data name="&gt;&gt;menuStrip.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="colorsTab.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 38</value>
<data name="treeView2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="colorsTab.Size" type="System.Drawing.Size, System.Drawing">
<data name="treeView2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="treeView2.RightToLeft" type="System.Windows.Forms.RightToLeft, System.Windows.Forms">
<value>No</value>
</data>
<data name="treeView2.Size" type="System.Drawing.Size, System.Drawing">
<value>186, 458</value>
</data>
<data name="colorsTab.TabIndex" type="System.Int32, mscorlib">
<data name="treeView2.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="colorsTab.Text" xml:space="preserve">
<value>Normal Colors</value>
<data name="&gt;&gt;treeView2.Name" xml:space="preserve">
<value>treeView2</value>
</data>
<data name="&gt;&gt;colorsTab.Name" xml:space="preserve">
<value>colorsTab</value>
<data name="&gt;&gt;treeView2.Type" xml:space="preserve">
<value>System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colorsTab.Type" xml:space="preserve">
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="&gt;&gt;treeView2.Parent" xml:space="preserve">
<value>waterTab</value>
</data>
<data name="&gt;&gt;colorsTab.Parent" xml:space="preserve">
<value>tabControl</value>
</data>
<data name="&gt;&gt;colorsTab.ZOrder" xml:space="preserve">
<data name="&gt;&gt;treeView2.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="waterTab.Location" type="System.Drawing.Point, System.Drawing">
@@ -523,6 +556,57 @@
<data name="&gt;&gt;waterTab.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="treeView1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="treeView1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="treeView1.Size" type="System.Drawing.Size, System.Drawing">
<value>186, 458</value>
</data>
<data name="treeView1.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;treeView1.Name" xml:space="preserve">
<value>treeView1</value>
</data>
<data name="&gt;&gt;treeView1.Type" xml:space="preserve">
<value>System.Windows.Forms.TreeView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;treeView1.Parent" xml:space="preserve">
<value>colorsTab</value>
</data>
<data name="&gt;&gt;treeView1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="colorsTab.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 38</value>
</data>
<data name="colorsTab.Size" type="System.Drawing.Size, System.Drawing">
<value>186, 458</value>
</data>
<data name="colorsTab.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="colorsTab.Text" xml:space="preserve">
<value>Normal Colors</value>
</data>
<data name="&gt;&gt;colorsTab.Name" xml:space="preserve">
<value>colorsTab</value>
</data>
<data name="&gt;&gt;colorsTab.Type" xml:space="preserve">
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colorsTab.Parent" xml:space="preserve">
<value>tabControl</value>
</data>
<data name="&gt;&gt;colorsTab.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="tabControl.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left</value>
</data>
<data name="tabControl.Location" type="System.Drawing.Point, System.Drawing">
<value>20, 83</value>
</data>
@@ -553,6 +637,9 @@
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>652, 603</value>
</data>
<data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>652, 603</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterParent</value>
</data>