Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/IcySon55/Kuriimu
Browse files Browse the repository at this point in the history
  • Loading branch information
Kirito committed Aug 21, 2017
2 parents 9835af2 + ec8906d commit 8cd31fb
Show file tree
Hide file tree
Showing 7 changed files with 117 additions and 72 deletions.
42 changes: 29 additions & 13 deletions src/Kuriimu/Editor.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

124 changes: 67 additions & 57 deletions src/Kuriimu/Editor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -751,30 +751,42 @@ private void UpdateLot()

private void UpdateLabels()
{
for (var i = mnuLabels.Items.Count - 1; i > 1; i--)
// Clear Labels
for (var i = tsbManageLabels.DropDownItems.Count - 1; i > 0; i--)
tsbManageLabels.DropDownItems.RemoveAt(i);
for (var i = mnuLabels.Items.Count - 1; i > 0; i--)
mnuLabels.Items.RemoveAt(i);

if (_lot == null) return;
if (_settings.Labels.Count < 0) return;

imlEntries.Images.Clear();
imlEntries.Images.Add("0", GenerateColorSquare(SystemColors.Window, 14, 14));

if (_settings.Labels.Count > 0)
{
tsbManageLabels.DropDownItems.Add(new ToolStripSeparator());
mnuLabels.Items.Add(new ToolStripSeparator());
}

foreach (var label in _settings.Labels)
{
// Images
imlEntries.Images.Add((_settings.Labels.IndexOf(label) + 1).ToString(), GenerateColorSquare(ColorTranslator.FromHtml(label.Color), 14, 14));
var tsiLabel = new ToolStripMenuItem(label.Name, GenerateColorSquare(ColorTranslator.FromHtml(label.Color)));
mnuLabels.Items.Add(tsiLabel);

var tsiLabelSet = new ToolStripMenuItem("Set " + label.Name, Resources.menu_set, tsiSetLabel_Click) { Tag = label };
tsiLabel.DropDownItems.Add(tsiLabelSet);
// Manage
var tsiLabel = new ToolStripMenuItem(label.Name, GenerateColorSquare(ColorTranslator.FromHtml(label.Color)));
tsbManageLabels.DropDownItems.Add(tsiLabel);

var tsiLabelEdit = new ToolStripMenuItem("Edit " + label.Name, Resources.menu_edit, tsiEditLabel_Click) { Tag = label };
tsiLabel.DropDownItems.Add(tsiLabelEdit);

var tsiLabelDelete = new ToolStripMenuItem("Delete " + label.Name, Resources.menu_delete, tsiDeleteLabel_Click) { Tag = label };
tsiLabel.DropDownItems.Add(tsiLabelDelete);

// Set
var tsiSetLabel = new ToolStripMenuItem(label.Name, GenerateColorSquare(ColorTranslator.FromHtml(label.Color)), tsiSetLabel_Click) { Tag = label };
mnuLabels.Items.Add(tsiSetLabel);
}
}

Expand All @@ -795,24 +807,14 @@ private void newLabelToolStripMenuItem_Click(object sender, EventArgs e)
{
if (_settings == null) return;

var lbl = new LabelForm(string.Empty, ColorTranslator.ToHtml(Color.Black), _settings.Labels.Select(o => o.Name).ToList(), true);
var lblForm = new LabelForm(string.Empty, ColorTranslator.ToHtml(Color.Black), _settings.Labels.Select(o => o.Name).ToList(), true);

if (lbl.ShowDialog() == DialogResult.OK && (lbl.NameChanged || lbl.ColorChanged))
if (lblForm.ShowDialog() == DialogResult.OK && (lblForm.NameChanged || lblForm.ColorChanged))
{
var label = new Kontract.Label(lbl.NewName, lbl.NewColor);
var label = new Kontract.Label(lblForm.NewName, lblForm.NewColor);
_settings.Labels.Add(label);
_settings.Save(Path.Combine(Application.StartupPath, "Kuriimu.settings"));
UpdateLabels();

var entry = (TextEntry)treEntries.SelectedNode?.Tag;
var lotEntry = !entry.IsSubEntry ? _lot.LotEntries.FirstOrDefault(o => o.Entry == entry.Name) : _lot.LotEntries.FirstOrDefault(o => o.Entry == entry.ParentEntry.Name).LotSubEntries.FirstOrDefault(o => o.Entry == entry.Name);
lotEntry.Label = label.Name; var newIndex = _settings.Labels.IndexOf(label) + 1;

if (newIndex == treEntries.SelectedNode.ImageIndex) return;
treEntries.SelectedNode.ImageIndex = newIndex;
treEntries.SelectedNode.SelectedImageIndex = newIndex;
_hasChanges = true;
UpdateForm();
}
}

Expand Down Expand Up @@ -853,17 +855,17 @@ private void tsiEditLabel_Click(object sender, EventArgs e)
if (_settings == null) return;
var label = (Kontract.Label)((ToolStripItem)sender).Tag;

var lbl = new LabelForm(label.Name, label.Color, _settings.Labels.Select(o => o.Name).ToList());
var lblForm = new LabelForm(label.Name, label.Color, _settings.Labels.Select(o => o.Name).ToList());

if (lbl.ShowDialog() == DialogResult.OK && (lbl.NameChanged || lbl.ColorChanged))
if (lblForm.ShowDialog() == DialogResult.OK && (lblForm.NameChanged || lblForm.ColorChanged))
{
var previousLabel = label.Name;
label.Name = lbl.NewName;
label.Color = lbl.NewColor;
label.Name = lblForm.NewName;
label.Color = lblForm.NewColor;
_settings.Save(Path.Combine(Application.StartupPath, "Kuriimu.settings"));
UpdateLabels();

if (lbl.NameChanged)
if (lblForm.NameChanged)
foreach (var entry in _entries)
{
var lotEntry = _lot.LotEntries.FirstOrDefault(o => o.Entry == entry.Name);
Expand Down Expand Up @@ -893,7 +895,7 @@ private void tsiDeleteLabel_Click(object sender, EventArgs e)
if (_settings == null) return;
var label = (Kontract.Label)((ToolStripItem)sender).Tag;

if (MessageBox.Show($"Are you sure you want to delete the {label.Name} label?", "Confirm Deletion", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
if (MessageBox.Show($"Are you sure you want to delete the {label.Name} label?", "Confirm Label Deletion", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;

foreach (var entry in _entries)
{
Expand Down Expand Up @@ -1010,19 +1012,16 @@ private void UpdateForm()
{
Text = $"{Settings.Default.ApplicationName} v{FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).ProductVersion}" + (FileName() != string.Empty ? " - " + FileName() : string.Empty) + (_hasChanges ? "*" : string.Empty) + (_textAdapter != null ? " - " + _textAdapter.Description + " Adapter (" + _textAdapter.Name + ")" : string.Empty);

TextEntry entry = (TextEntry)treEntries.SelectedNode?.Tag;
var entry = (TextEntry)treEntries.SelectedNode?.Tag;

if (_fileOpen)
tslEntries.Text = (_textAdapter.Entries?.Count() + " Entries").Trim();
else
tslEntries.Text = "Entries";
tslEntries.Text = _fileOpen ? (_textAdapter.Entries?.Count() + " Entries").Trim() : "Entries";

if (_textAdapter != null)
{
bool itemSelected = _fileOpen && treEntries.SelectedNode != null;
bool canAdd = _fileOpen && _textAdapter.CanAddEntries;
bool canRename = itemSelected && _textAdapter.CanRenameEntries && entry.ParentEntry == null;
bool canDelete = itemSelected && _textAdapter.CanDeleteEntries && entry.ParentEntry == null;
var itemSelected = _fileOpen && treEntries.SelectedNode != null;
var canAdd = _fileOpen && _textAdapter.CanAddEntries;
var canRename = itemSelected && _textAdapter.CanRenameEntries && entry.ParentEntry == null;
var canDelete = itemSelected && _textAdapter.CanDeleteEntries && entry.ParentEntry == null;

splMain.Enabled = _fileOpen;
splContent.Enabled = _fileOpen;
Expand Down Expand Up @@ -1054,13 +1053,14 @@ private void UpdateForm()
tsbEntryProperties.Enabled = itemSelected && _textAdapter.EntriesHaveExtendedProperties;
sortEntriesToolStripMenuItem.Enabled = _fileOpen && _textAdapter.CanSortEntries;
sortEntriesToolStripMenuItem.Image = _textAdapter.SortEntries ? Resources.menu_sorted : Resources.menu_unsorted;
tsbManageLabels.Enabled = _fileOpen;
tsbShowTextPreview.Enabled = _fileOpen;
tsbShowTextPreview.Checked = Settings.Default.ShowTextPreview;
tsbSortEntries.Enabled = _fileOpen && _textAdapter.CanSortEntries;
tsbSortEntries.Image = _textAdapter.SortEntries ? Resources.menu_sorted : Resources.menu_unsorted;

// Preview
tsbPreviewEnabled.Enabled = _gameHandler != null ? _gameHandler.HandlerCanGeneratePreviews : false;
tsbPreviewEnabled.Enabled = _gameHandler?.HandlerCanGeneratePreviews ?? false;
tsbPreviewEnabled.Image = Settings.Default.PreviewEnabled ? Resources.menu_preview_visible : Resources.menu_preview_invisible;
tsbPreviewEnabled.Text = Settings.Default.PreviewEnabled ? "Disable Preview" : "Enable Preview";
tsbPreviewSave.Enabled = Settings.Default.PreviewEnabled && _gameHandler.HandlerCanGeneratePreviews && _gameHandlerPages != null && _gameHandlerPages.Count > 0;
Expand Down Expand Up @@ -1127,25 +1127,25 @@ private void tsbExportKUP_Click(object sender, EventArgs e)

private void tsbImportKUP_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Title = "Import KUP...";
ofd.InitialDirectory = Settings.Default.LastDirectory;
ofd.Filter = "Kuriimu Archive (*.kup)|*.kup";

if (ofd.ShowDialog() == DialogResult.OK)
{
try
{
//var bmp = (Bitmap)Image.FromFile(filename);
//_imageAdapter.Bitmap = bmp;
UpdatePreview();
//MessageBox.Show(filename + " imported successfully.", "Import Successful", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString(), ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
//OpenFileDialog ofd = new OpenFileDialog();
//ofd.Title = "Import KUP...";
//ofd.InitialDirectory = Settings.Default.LastDirectory;
//ofd.Filter = "Kuriimu Archive (*.kup)|*.kup";

//if (ofd.ShowDialog() == DialogResult.OK)
//{
// try
// {
// //var bmp = (Bitmap)Image.FromFile(filename);
// //_imageAdapter.Bitmap = bmp;
// UpdatePreview();
// //MessageBox.Show(filename + " imported successfully.", "Import Successful", MessageBoxButtons.OK, MessageBoxIcon.Information);
// }
// catch (Exception ex)
// {
// MessageBox.Show(ex.ToString(), ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
// }
//}
}

private void tsbBatchExportKUP_Click(object sender, EventArgs e)
Expand Down Expand Up @@ -1348,9 +1348,9 @@ private void treEntries_Leave(object sender, EventArgs e)
// Text
private void txtEdit_KeyUp(object sender, KeyEventArgs e)
{
TextEntry entry = (TextEntry)treEntries.SelectedNode.Tag;
string next = string.Empty;
string previous = string.Empty;
var entry = (TextEntry)treEntries.SelectedNode.Tag;
var previous = string.Empty;
var next = string.Empty;

previous = _gameHandler.GetKuriimuString(entry.EditedText);
next = txtEdit.Text.Replace("<null>", "\0").Replace("\r\n", _textAdapter.LineEndings);
Expand All @@ -1370,6 +1370,9 @@ private void txtEdit_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control & e.KeyCode == Keys.A)
txtEdit.SelectAll();

if (e.Control & (e.KeyCode != Keys.V && e.KeyCode != Keys.C && e.KeyCode != Keys.X && e.KeyCode != Keys.Z && e.KeyCode != Keys.Left && e.KeyCode != Keys.Right))
e.SuppressKeyPress = true;
}

private void txtOriginal_KeyDown(object sender, KeyEventArgs e)
Expand All @@ -1390,7 +1393,10 @@ private void tsbLotCreate_Click(object sender, EventArgs e)

private void tsbLotDelete_Click(object sender, EventArgs e)
{

if (MessageBox.Show($"Are you sure you want to delete the lot for {_textAdapter.FileInfo.Name}?\r\nAll labels, notes, and screenshots will be deleted.", "Confirm Lot Deletion", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return;
_lot = null;
File.Delete(_textAdapter.FileInfo.FullName + ".lot");
UpdateForm();
}

private void txtLotNotes_KeyUp(object sender, KeyEventArgs e)
Expand All @@ -1407,5 +1413,9 @@ private void txtLotNotes_KeyUp(object sender, KeyEventArgs e)

UpdateForm();
}

private void txtEdit_KeyPress(object sender, KeyPressEventArgs e)
{
}
}
}
Loading

0 comments on commit 8cd31fb

Please sign in to comment.