diff --git a/PCK-Studio/Forms/Editor/LOCEditor.Designer.cs b/PCK-Studio/Forms/Editor/LOCEditor.Designer.cs index 0b1f3d13..999fb412 100644 --- a/PCK-Studio/Forms/Editor/LOCEditor.Designer.cs +++ b/PCK-Studio/Forms/Editor/LOCEditor.Designer.cs @@ -45,6 +45,8 @@ this.dataGridViewLocEntryData = new System.Windows.Forms.DataGridView(); this.textBoxReplaceAll = new System.Windows.Forms.TextBox(); this.treeViewLocKeys = new System.Windows.Forms.TreeView(); + this.Language = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.DisplayName = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.contextMenuStrip1.SuspendLayout(); this.GridContextMenu.SuspendLayout(); this.menuStrip.SuspendLayout(); @@ -95,9 +97,10 @@ // menuStrip // this.menuStrip.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(13)))), ((int)(((byte)(13)))), ((int)(((byte)(13))))); + this.locSort.SetColumnSpan(this.menuStrip, 3); + resources.ApplyResources(this.menuStrip, "menuStrip"); this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.fileToolStripMenuItem}); - resources.ApplyResources(this.menuStrip, "menuStrip"); this.menuStrip.Name = "menuStrip"; // // fileToolStripMenuItem @@ -118,10 +121,11 @@ // this.locSort.AccessibleRole = System.Windows.Forms.AccessibleRole.Table; resources.ApplyResources(this.locSort, "locSort"); - this.locSort.Controls.Add(this.buttonReplaceAll, 2, 0); - this.locSort.Controls.Add(this.dataGridViewLocEntryData, 1, 1); - this.locSort.Controls.Add(this.textBoxReplaceAll, 1, 0); - this.locSort.Controls.Add(this.treeViewLocKeys, 0, 0); + this.locSort.Controls.Add(this.buttonReplaceAll, 2, 1); + this.locSort.Controls.Add(this.dataGridViewLocEntryData, 1, 2); + this.locSort.Controls.Add(this.menuStrip, 0, 0); + this.locSort.Controls.Add(this.textBoxReplaceAll, 1, 1); + this.locSort.Controls.Add(this.treeViewLocKeys, 0, 1); this.locSort.Name = "locSort"; // // buttonReplaceAll @@ -136,6 +140,8 @@ // this.dataGridViewLocEntryData.AllowUserToAddRows = false; this.dataGridViewLocEntryData.AllowUserToDeleteRows = false; + this.dataGridViewLocEntryData.AllowUserToResizeColumns = false; + this.dataGridViewLocEntryData.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; this.dataGridViewLocEntryData.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(13)))), ((int)(((byte)(13)))), ((int)(((byte)(13))))); this.dataGridViewLocEntryData.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.None; dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control; @@ -145,7 +151,10 @@ dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText; dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True; this.dataGridViewLocEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1; - this.dataGridViewLocEntryData.ColumnHeadersVisible = false; + this.dataGridViewLocEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing; + this.dataGridViewLocEntryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.Language, + this.DisplayName}); this.locSort.SetColumnSpan(this.dataGridViewLocEntryData, 2); this.dataGridViewLocEntryData.ContextMenuStrip = this.GridContextMenu; resources.ApplyResources(this.dataGridViewLocEntryData, "dataGridViewLocEntryData"); @@ -171,18 +180,28 @@ this.treeViewLocKeys.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeViewLocKeys_AfterSelect); this.treeViewLocKeys.KeyDown += new System.Windows.Forms.KeyEventHandler(this.treeView1_KeyDown); // + // Language + // + this.Language.FillWeight = 15F; + resources.ApplyResources(this.Language, "Language"); + this.Language.Name = "Language"; + this.Language.ReadOnly = true; + // + // DisplayName + // + resources.ApplyResources(this.DisplayName, "DisplayName"); + this.DisplayName.Name = "DisplayName"; + // // LOCEditor // resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Controls.Add(this.menuStrip); this.Controls.Add(this.locSort); this.Name = "LOCEditor"; this.Style = MetroFramework.MetroColorStyle.Silver; this.Theme = MetroFramework.MetroThemeStyle.Dark; this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.LOCEditor_FormClosing); this.Load += new System.EventHandler(this.LOCEditor_Load); - this.Resize += new System.EventHandler(this.LOCEditor_Resize); this.contextMenuStrip1.ResumeLayout(false); this.GridContextMenu.ResumeLayout(false); this.menuStrip.ResumeLayout(false); @@ -191,7 +210,6 @@ this.locSort.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewLocEntryData)).EndInit(); this.ResumeLayout(false); - this.PerformLayout(); } @@ -211,5 +229,7 @@ private System.Windows.Forms.MenuStrip menuStrip; private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem; + private System.Windows.Forms.DataGridViewTextBoxColumn Language; + private System.Windows.Forms.DataGridViewTextBoxColumn DisplayName; } } \ No newline at end of file diff --git a/PCK-Studio/Forms/Editor/LOCEditor.cs b/PCK-Studio/Forms/Editor/LOCEditor.cs index def6082f..ca829183 100644 --- a/PCK-Studio/Forms/Editor/LOCEditor.cs +++ b/PCK-Studio/Forms/Editor/LOCEditor.cs @@ -17,7 +17,6 @@ namespace PckStudio.Forms.Editor { public partial class LOCEditor : MetroForm { - DataTable tbl; LOCFile currentLoc; PckAsset _asset; @@ -30,13 +29,6 @@ namespace PckStudio.Forms.Editor var reader = new LOCFileReader(); currentLoc = reader.FromStream(ms); } - tbl = new DataTable(); - tbl.Columns.Add(new DataColumn("Language") { ReadOnly = true }); - tbl.Columns.Add("Display Name"); - dataGridViewLocEntryData.DataSource = tbl; - DataGridViewColumn column = dataGridViewLocEntryData.Columns[1]; - column.Width = dataGridViewLocEntryData.Width; - saveToolStripMenuItem.Visible = !Settings.Default.AutoSaveChanges; } @@ -61,17 +53,15 @@ namespace PckStudio.Forms.Editor private void addDisplayIDToolStripMenuItem_Click(object sender, EventArgs e) { - if (treeViewLocKeys.SelectedNode is TreeNode) - using (TextPrompt prompt = new TextPrompt()) + using (TextPrompt prompt = new TextPrompt()) + { + prompt.OKButtonText = "Add"; + if (prompt.ShowDialog(this) == DialogResult.OK && + currentLoc.AddLocKey(prompt.NewText, "")) { - prompt.OKButtonText = "Add"; - if (prompt.ShowDialog(this) == DialogResult.OK && - !currentLoc.LocKeys.ContainsKey(prompt.NewText) && - currentLoc.AddLocKey(prompt.NewText, "")) - { - treeViewLocKeys.Nodes.Add(prompt.NewText); - } + treeViewLocKeys.Nodes.Add(prompt.NewText); } + } } private void deleteDisplayIDToolStripMenuItem_Click(object sender, EventArgs e) @@ -79,18 +69,23 @@ namespace PckStudio.Forms.Editor if (treeViewLocKeys.SelectedNode is TreeNode t && currentLoc.RemoveLocKey(t.Text)) { treeViewLocKeys.SelectedNode.Remove(); + ReloadTranslationTable(); } } private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e) { - if (e.ColumnIndex != 1 || - treeViewLocKeys.SelectedNode == null) + if (e.ColumnIndex != 1 || + treeViewLocKeys.SelectedNode is null) { MessageBox.Show(this, "something went wrong"); return; } - currentLoc.SetLocEntry(treeViewLocKeys.SelectedNode.Text, tbl.Rows[e.RowIndex][0].ToString(), tbl.Rows[e.RowIndex][1].ToString()); + var row = dataGridViewLocEntryData.Rows[e.RowIndex]; + string locKey = treeViewLocKeys.SelectedNode.Text; + string language = row.Cells[0].Value.ToString(); + string value = row.Cells[1].Value.ToString(); + currentLoc.SetLocEntry(locKey, language, value); } private void treeView1_KeyDown(object sender, KeyEventArgs e) @@ -101,25 +96,21 @@ namespace PckStudio.Forms.Editor private void buttonReplaceAll_Click(object sender, EventArgs e) { - for (int i = 0; i < tbl.Rows.Count; i++) + for (int i = 0; i < dataGridViewLocEntryData.Rows.Count; i++) { - tbl.Rows[i][1] = textBoxReplaceAll.Text; + dataGridViewLocEntryData.Rows[i].Cells[1].Value = textBoxReplaceAll.Text; } currentLoc.SetLocEntry(treeViewLocKeys.SelectedNode.Text, textBoxReplaceAll.Text); } - private void LOCEditor_Resize(object sender, EventArgs e) - { - DataGridViewColumn column = dataGridViewLocEntryData.Columns[1]; - column.Width = dataGridViewLocEntryData.Width - dataGridViewLocEntryData.Columns[0].Width; - } - private void ReloadTranslationTable() { - tbl.Rows.Clear(); + dataGridViewLocEntryData.Rows.Clear(); + if (treeViewLocKeys.SelectedNode is null) + return; foreach (var l in currentLoc.GetLocEntries(treeViewLocKeys.SelectedNode.Text)) - tbl.Rows.Add(l.Key, l.Value); + dataGridViewLocEntryData.Rows.Add(l.Key, l.Value); } private IEnumerable GetAvailableLanguages() diff --git a/PCK-Studio/Forms/Editor/LOCEditor.resx b/PCK-Studio/Forms/Editor/LOCEditor.resx index 76a0a275..73b694cc 100644 --- a/PCK-Studio/Forms/Editor/LOCEditor.resx +++ b/PCK-Studio/Forms/Editor/LOCEditor.resx @@ -169,40 +169,7 @@ 321, 17 - - 98, 22 - - - Save - - - 37, 20 - - - File - - - 20, 60 - - - 860, 24 - - - 4 - - - menuStrip - - - System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - $this - - - 2 - 3 @@ -214,7 +181,7 @@ NoControl - 783, 3 + 783, 23 74, 23 @@ -237,14 +204,26 @@ 0 + + True + + + Language + + + True + + + Display Name + Fill - 303, 32 + 303, 52 - 554, 525 + 554, 532 1 @@ -265,7 +244,7 @@ Fill - 303, 3 + 303, 23 474, 20 @@ -283,16 +262,16 @@ locSort - 2 + 3 Fill - 3, 3 + 3, 23 - 294, 554 + 294, 561 0 @@ -307,16 +286,19 @@ locSort - 3 + 4 + + + Fill - 20, 87 + 20, 60 - 2 + 3 - 860, 560 + 860, 587 3 @@ -331,10 +313,46 @@ $this - 3 + 2 - <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="buttonReplaceAll" Row="0" RowSpan="1" Column="2" ColumnSpan="1" /><Control Name="dataGridViewLocEntryData" Row="1" RowSpan="1" Column="1" ColumnSpan="2" /><Control Name="textBoxReplaceAll" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="treeViewLocKeys" Row="0" RowSpan="2" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Absolute,300,Percent,100,AutoSize,0" /><Rows Styles="AutoSize,0,Percent,100,Absolute,20" /></TableLayoutSettings> + <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="buttonReplaceAll" Row="1" RowSpan="1" Column="2" ColumnSpan="1" /><Control Name="dataGridViewLocEntryData" Row="2" RowSpan="1" Column="1" ColumnSpan="2" /><Control Name="menuStrip" Row="0" RowSpan="1" Column="0" ColumnSpan="3" /><Control Name="textBoxReplaceAll" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="treeViewLocKeys" Row="1" RowSpan="2" Column="0" ColumnSpan="1" /></Controls><Columns Styles="Absolute,300,Percent,100,AutoSize,0" /><Rows Styles="Absolute,20,AutoSize,0,Percent,100" /></TableLayoutSettings> + + + Fill + + + 98, 22 + + + Save + + + 37, 16 + + + File + + + 0, 0 + + + 860, 20 + + + 4 + + + menuStrip + + + System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + locSort + + + 2 True @@ -2896,6 +2914,18 @@ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + Language + + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + DisplayName + + + System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + LOCEditor