LOCEditor redesign prep.

This commit is contained in:
EternalModz
2025-05-13 12:01:18 -07:00
parent cf8026ad6b
commit 06c84ce0d2
3 changed files with 140 additions and 146 deletions

View File

@@ -30,7 +30,7 @@
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LOCEditor));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.addDisplayIDToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.deleteDisplayIDToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -144,13 +144,13 @@
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;
dataGridViewCellStyle1.Font = new System.Drawing.Font("Segoe UI", 9F);
dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dataGridViewLocEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle2.Font = new System.Drawing.Font("Segoe UI", 9F);
dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dataGridViewLocEntryData.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
this.dataGridViewLocEntryData.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
this.dataGridViewLocEntryData.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.Language,

View File

@@ -1,149 +1,146 @@
using System;
using System.IO;
using System.Data;
using System.Linq;
using System.Collections.Generic;
using System.Windows.Forms;
using MetroFramework.Forms;
using PckStudio.Internal.Misc;
using PckStudio.Forms.Additional_Popups.Loc;
using OMI.Formats.Languages;
using OMI.Workers.Language;
using OMI.Formats.Languages;
using OMI.Formats.Pck;
using PckStudio.Properties;
using OMI.Workers.Language;
using PckStudio.Extensions;
using PckStudio.Forms.Additional_Popups.Loc;
using PckStudio.Internal.Misc;
using PckStudio.Properties;
using PckStudio.ToolboxItems;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace PckStudio.Forms.Editor
{
public partial class LOCEditor : ThemeForm
public partial class LOCEditor : ThemeForm
{
LOCFile _currentLoc;
PckAsset _asset;
LOCFile _currentLoc;
PckAsset _asset;
public LOCEditor(PckAsset asset)
{
InitializeComponent();
_asset = asset;
_currentLoc = asset.GetData(new LOCFileReader());
saveToolStripMenuItem.Visible = !Settings.Default.AutoSaveChanges;
public LOCEditor(PckAsset asset)
{
InitializeComponent();
_asset = asset;
_currentLoc = asset.GetData(new LOCFileReader());
saveToolStripMenuItem.Visible = !Settings.Default.AutoSaveChanges;
}
private void LOCEditor_Load(object sender, EventArgs e)
{
RPC.SetPresence("LOC Editor", "Editing localization File.");
foreach(string locKey in _currentLoc.LocKeys.Keys)
treeViewLocKeys.Nodes.Add(locKey);
}
private void LOCEditor_Load(object sender, EventArgs e)
{
RPC.SetPresence("LOC Editor", "Editing localization File.");
foreach (string locKey in _currentLoc.LocKeys.Keys)
treeViewLocKeys.Nodes.Add(locKey);
}
private void treeViewLocKeys_AfterSelect(object sender, TreeViewEventArgs e)
{
private void treeViewLocKeys_AfterSelect(object sender, TreeViewEventArgs e)
{
TreeNode node = e.Node;
if (node == null ||
!_currentLoc.LocKeys.ContainsKey(node.Text))
{
MessageBox.Show(this, "Selected Node does not seem to be in the loc file");
return;
}
ReloadTranslationTable();
}
if (node == null ||
!_currentLoc.LocKeys.ContainsKey(node.Text))
{
MessageBox.Show(this, "Selected Node does not seem to be in the loc file");
return;
}
ReloadTranslationTable();
}
private void addDisplayIDToolStripMenuItem_Click(object sender, EventArgs e)
{
using (TextPrompt prompt = new TextPrompt())
{
prompt.OKButtonText = "Add";
if (prompt.ShowDialog(this) == DialogResult.OK &&
_currentLoc.AddLocKey(prompt.NewText, ""))
{
treeViewLocKeys.Nodes.Add(prompt.NewText);
}
}
private void addDisplayIDToolStripMenuItem_Click(object sender, EventArgs e)
{
using (TextPrompt prompt = new TextPrompt())
{
prompt.OKButtonText = "Add";
if (prompt.ShowDialog(this) == DialogResult.OK &&
_currentLoc.AddLocKey(prompt.NewText, ""))
{
treeViewLocKeys.Nodes.Add(prompt.NewText);
}
}
}
private void deleteDisplayIDToolStripMenuItem_Click(object sender, EventArgs e)
{
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 is null)
{
if (treeViewLocKeys.SelectedNode is TreeNode t && _currentLoc.RemoveLocKey(t.Text))
{
MessageBox.Show(this, "something went wrong");
return;
treeViewLocKeys.SelectedNode.Remove();
ReloadTranslationTable();
}
}
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex != 1 ||
treeViewLocKeys.SelectedNode is null)
{
MessageBox.Show(this, "something went wrong");
return;
}
DataGridViewRow row = dataGridViewLocEntryData.Rows[e.RowIndex];
string locKey = treeViewLocKeys.SelectedNode.Text;
string locKey = treeViewLocKeys.SelectedNode.Text;
string language = row.Cells[0].Value.ToString();
string value = row.Cells[1].Value.ToString();
string value = row.Cells[1].Value.ToString();
_currentLoc.SetLocEntry(locKey, language, value);
}
private void treeView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.Delete)
deleteDisplayIDToolStripMenuItem_Click(sender, e);
}
{
if (e.KeyData == Keys.Delete)
deleteDisplayIDToolStripMenuItem_Click(sender, e);
}
private void buttonReplaceAll_Click(object sender, EventArgs e)
{
private void buttonReplaceAll_Click(object sender, EventArgs e)
{
for (int i = 0; i < dataGridViewLocEntryData.Rows.Count; i++)
{
dataGridViewLocEntryData.Rows[i].Cells[1].Value = textBoxReplaceAll.Text;
}
_currentLoc.SetLocEntry(treeViewLocKeys.SelectedNode.Text, textBoxReplaceAll.Text);
}
_currentLoc.SetLocEntry(treeViewLocKeys.SelectedNode.Text, textBoxReplaceAll.Text);
}
private void ReloadTranslationTable()
private void ReloadTranslationTable()
{
dataGridViewLocEntryData.Rows.Clear();
if (treeViewLocKeys.SelectedNode is null)
return;
foreach (KeyValuePair<string, string> locEntry in _currentLoc.GetLocEntries(treeViewLocKeys.SelectedNode.Text))
dataGridViewLocEntryData.Rows.Clear();
if (treeViewLocKeys.SelectedNode is null)
return;
foreach (KeyValuePair<string, string> locEntry in _currentLoc.GetLocEntries(treeViewLocKeys.SelectedNode.Text))
dataGridViewLocEntryData.Rows.Add(locEntry.Key, locEntry.Value);
}
}
private IEnumerable<string> GetAvailableLanguages()
private IEnumerable<string> GetAvailableLanguages()
{
foreach (var lang in LOCFile.ValidLanguages)
{
if (_currentLoc.Languages.Contains(lang))
continue;
yield return lang;
}
yield break;
}
foreach (var lang in LOCFile.ValidLanguages)
{
if (_currentLoc.Languages.Contains(lang))
continue;
yield return lang;
}
yield break;
}
private void addLanguageToolStripMenuItem_Click(object sender, EventArgs e)
{
string[] avalibleLang = GetAvailableLanguages().ToArray();
using (var dialog = new AddLanguage(avalibleLang))
if (dialog.ShowDialog(this) == DialogResult.OK)
{
_currentLoc.AddLanguage(dialog.SelectedLanguage);
ReloadTranslationTable();
}
}
private void addLanguageToolStripMenuItem_Click(object sender, EventArgs e)
{
string[] avalibleLang = GetAvailableLanguages().ToArray();
using (var dialog = new AddLanguage(avalibleLang))
if (dialog.ShowDialog(this) == DialogResult.OK)
{
_currentLoc.AddLanguage(dialog.SelectedLanguage);
ReloadTranslationTable();
}
}
private void saveToolStripMenuItem_Click(object sender, EventArgs e)
{
private void saveToolStripMenuItem_Click(object sender, EventArgs e)
{
_asset.SetData(new LOCFileWriter(_currentLoc, 2));
DialogResult = DialogResult.OK;
DialogResult = DialogResult.OK;
}
private void LOCEditor_FormClosing(object sender, FormClosingEventArgs e)
{
if (Settings.Default.AutoSaveChanges)
{
saveToolStripMenuItem_Click(sender, EventArgs.Empty);
}
if (Settings.Default.AutoSaveChanges)
{
saveToolStripMenuItem_Click(sender, EventArgs.Empty);
}
}
}
}

View File

@@ -121,6 +121,15 @@
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="contextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>163, 48</value>
</data>
<data name="&gt;&gt;contextMenuStrip1.Name" xml:space="preserve">
<value>contextMenuStrip1</value>
</data>
<data name="&gt;&gt;contextMenuStrip1.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="addDisplayIDToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 22</value>
</data>
@@ -133,18 +142,18 @@
<data name="deleteDisplayIDToolStripMenuItem.Text" xml:space="preserve">
<value>Delete Display ID</value>
</data>
<data name="contextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>163, 48</value>
</data>
<data name="&gt;&gt;contextMenuStrip1.Name" xml:space="preserve">
<value>contextMenuStrip1</value>
</data>
<data name="&gt;&gt;contextMenuStrip1.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<metadata name="GridContextMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>172, 17</value>
</metadata>
<data name="GridContextMenu.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 48</value>
</data>
<data name="&gt;&gt;GridContextMenu.Name" xml:space="preserve">
<value>GridContextMenu</value>
</data>
<data name="&gt;&gt;GridContextMenu.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroContextMenu, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<data name="addLanguageToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>172, 22</value>
</data>
@@ -157,15 +166,6 @@
<data name="removeLanguageToolStripMenuItem.Text" xml:space="preserve">
<value>Remove Language</value>
</data>
<data name="GridContextMenu.Size" type="System.Drawing.Size, System.Drawing">
<value>173, 48</value>
</data>
<data name="&gt;&gt;GridContextMenu.Name" xml:space="preserve">
<value>GridContextMenu</value>
</data>
<data name="&gt;&gt;GridContextMenu.Type" xml:space="preserve">
<value>MetroFramework.Controls.MetroContextMenu, MetroFramework, Version=1.4.0.0, Culture=neutral, PublicKeyToken=5f91a84759bf584a</value>
</data>
<metadata name="menuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>321, 17</value>
</metadata>
@@ -181,7 +181,7 @@
<value>NoControl</value>
</data>
<data name="buttonReplaceAll.Location" type="System.Drawing.Point, System.Drawing">
<value>911, 27</value>
<value>959, 27</value>
</data>
<data name="buttonReplaceAll.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
@@ -229,7 +229,7 @@
<value>4, 4, 4, 4</value>
</data>
<data name="dataGridViewLocEntryData.Size" type="System.Drawing.Size, System.Drawing">
<value>644, 612</value>
<value>692, 704</value>
</data>
<data name="dataGridViewLocEntryData.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -256,7 +256,7 @@
<value>4, 4, 4, 4</value>
</data>
<data name="textBoxReplaceAll.Size" type="System.Drawing.Size, System.Drawing">
<value>549, 23</value>
<value>597, 23</value>
</data>
<data name="textBoxReplaceAll.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -283,7 +283,7 @@
<value>4, 4, 4, 4</value>
</data>
<data name="treeViewLocKeys.Size" type="System.Drawing.Size, System.Drawing">
<value>342, 646</value>
<value>342, 738</value>
</data>
<data name="treeViewLocKeys.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -304,7 +304,7 @@
<value>Fill</value>
</data>
<data name="locSort.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 69</value>
<value>0, 0</value>
</data>
<data name="locSort.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
@@ -313,7 +313,7 @@
<value>3</value>
</data>
<data name="locSort.Size" type="System.Drawing.Size, System.Drawing">
<value>1002, 677</value>
<value>1050, 769</value>
</data>
<data name="locSort.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
@@ -336,12 +336,6 @@
<data name="menuStrip.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="saveToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>98, 22</value>
</data>
<data name="saveToolStripMenuItem.Text" xml:space="preserve">
<value>Save</value>
</data>
<data name="fileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>37, 19</value>
</data>
@@ -355,7 +349,7 @@
<value>7, 2, 0, 2</value>
</data>
<data name="menuStrip.Size" type="System.Drawing.Size, System.Drawing">
<value>1002, 23</value>
<value>1050, 23</value>
</data>
<data name="menuStrip.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -372,6 +366,12 @@
<data name="&gt;&gt;menuStrip.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="saveToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>98, 22</value>
</data>
<data name="saveToolStripMenuItem.Text" xml:space="preserve">
<value>Save</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
@@ -2899,9 +2899,6 @@
<data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>1056, 784</value>
</data>
<data name="$this.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>24, 69, 24, 23</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterParent</value>
</data>