mirror of
https://github.com/SubtitleEdit/subtitleedit.git
synced 2025-02-01 05:21:40 +01:00
Work on new shortcuts
This commit is contained in:
parent
59b1b13253
commit
f3ec11f54c
@ -1963,7 +1963,10 @@ can edit in same subtitle file (collaboration)</Information>
|
||||
<GoToFirstSelectedLine>Go to first selected line</GoToFirstSelectedLine>
|
||||
<GoToNextEmptyLine>Go to next empty line</GoToNextEmptyLine>
|
||||
<MergeSelectedLines>Merge selected lines</MergeSelectedLines>
|
||||
<MergeSelectedLinesAndUnbreak>Merge selected lines and unbreak</MergeSelectedLinesAndUnbreak>
|
||||
<MergeSelectedLinesAndUnbreakCjk>Merge selected lines and unbreak without space (CJK)</MergeSelectedLinesAndUnbreakCjk>
|
||||
<MergeSelectedLinesOnlyFirstText>Merge selected lines, keep only first non-empty text</MergeSelectedLinesOnlyFirstText>
|
||||
<MergeSelectedLinesBilingual>Merge selected lines bilingual</MergeSelectedLinesBilingual>
|
||||
<ToggleTranslationMode>Toggle translator mode</ToggleTranslationMode>
|
||||
<SwitchOriginalAndTranslation>Switch original and translation</SwitchOriginalAndTranslation>
|
||||
<MergeOriginalAndTranslation>Merge original and translation</MergeOriginalAndTranslation>
|
||||
@ -2240,6 +2243,7 @@ Setting a font for a subtitle is normally done in the video player, but can also
|
||||
<UnknownSubtitle>
|
||||
<Title>Unknown subtitle type</Title>
|
||||
<Message>If you want this fixed please send an email to mailto:niksedk@gmail.com and include a copy of the subtitle.</Message>
|
||||
<ImportAsPlainText>Import as plain text...</ImportAsPlainText>
|
||||
</UnknownSubtitle>
|
||||
<VisualSync>
|
||||
<Title>Visual sync</Title>
|
||||
|
@ -2253,7 +2253,10 @@ can edit in same subtitle file (collaboration)",
|
||||
GoToFirstSelectedLine = "Go to first selected line",
|
||||
GoToNextEmptyLine = "Go to next empty line",
|
||||
MergeSelectedLines = "Merge selected lines",
|
||||
MergeSelectedLinesAndUnbreak = "Merge selected lines and unbreak",
|
||||
MergeSelectedLinesAndUnbreakCjk = "Merge selected lines and unbreak without space (CJK)",
|
||||
MergeSelectedLinesOnlyFirstText = "Merge selected lines, keep only first non-empty text",
|
||||
MergeSelectedLinesBilingual = "Merge selected lines bilingual",
|
||||
ToggleTranslationMode = "Toggle translator mode",
|
||||
SwitchOriginalAndTranslation = "Switch original and translation",
|
||||
MergeOriginalAndTranslation = "Merge original and translation",
|
||||
@ -2565,6 +2568,7 @@ can edit in same subtitle file (collaboration)",
|
||||
{
|
||||
Title = "Unknown subtitle type",
|
||||
Message = "If you want this fixed please send an email to mailto:niksedk@gmail.com and include a copy of the subtitle.",
|
||||
ImportAsPlainText = "Import as plain text...",
|
||||
};
|
||||
|
||||
VisualSync = new LanguageStructure.VisualSync
|
||||
|
@ -5326,9 +5326,18 @@ namespace Nikse.SubtitleEdit.Core
|
||||
case "Settings/MergeSelectedLines":
|
||||
language.Settings.MergeSelectedLines = reader.Value;
|
||||
break;
|
||||
case "Settings/MergeSelectedLinesAndUnbreak":
|
||||
language.Settings.MergeSelectedLinesAndUnbreak = reader.Value;
|
||||
break;
|
||||
case "Settings/MergeSelectedLinesAndUnbreakCjk":
|
||||
language.Settings.MergeSelectedLinesAndUnbreakCjk = reader.Value;
|
||||
break;
|
||||
case "Settings/MergeSelectedLinesOnlyFirstText":
|
||||
language.Settings.MergeSelectedLinesOnlyFirstText = reader.Value;
|
||||
break;
|
||||
case "Settings/MergeSelectedLinesBilingual":
|
||||
language.Settings.MergeSelectedLinesBilingual = reader.Value;
|
||||
break;
|
||||
case "Settings/ToggleTranslationMode":
|
||||
language.Settings.ToggleTranslationMode = reader.Value;
|
||||
break;
|
||||
@ -6049,6 +6058,9 @@ namespace Nikse.SubtitleEdit.Core
|
||||
case "UnknownSubtitle/Message":
|
||||
language.UnknownSubtitle.Message = reader.Value;
|
||||
break;
|
||||
case "UnknownSubtitle/ImportAsPlainText":
|
||||
language.UnknownSubtitle.ImportAsPlainText = reader.Value;
|
||||
break;
|
||||
case "VisualSync/Title":
|
||||
language.VisualSync.Title = reader.Value;
|
||||
break;
|
||||
|
@ -2132,7 +2132,10 @@
|
||||
public string GoToFirstSelectedLine { get; set; }
|
||||
public string GoToNextEmptyLine { get; set; }
|
||||
public string MergeSelectedLines { get; set; }
|
||||
public string MergeSelectedLinesAndUnbreak { get; set; }
|
||||
public string MergeSelectedLinesAndUnbreakCjk { get; set; }
|
||||
public string MergeSelectedLinesOnlyFirstText { get; set; }
|
||||
public string MergeSelectedLinesBilingual { get; set; }
|
||||
public string ToggleTranslationMode { get; set; }
|
||||
public string SwitchOriginalAndTranslation { get; set; }
|
||||
public string MergeOriginalAndTranslation { get; set; }
|
||||
@ -2443,6 +2446,7 @@
|
||||
{
|
||||
public string Title { get; set; }
|
||||
public string Message { get; set; }
|
||||
public string ImportAsPlainText { get; set; }
|
||||
}
|
||||
|
||||
public class VisualSync
|
||||
|
@ -947,7 +947,10 @@ namespace Nikse.SubtitleEdit.Core
|
||||
public string GeneralGoToFirstSelectedLine { get; set; }
|
||||
public string GeneralGoToNextEmptyLine { get; set; }
|
||||
public string GeneralMergeSelectedLines { get; set; }
|
||||
public string GeneralMergeSelectedLinesAndUnbreak { get; set; }
|
||||
public string GeneralMergeSelectedLinesAndUnbreakCjk { get; set; }
|
||||
public string GeneralMergeSelectedLinesOnlyFirstText { get; set; }
|
||||
public string GeneralMergeSelectedLinesBilingual { get; set; }
|
||||
public string GeneralMergeWithNext { get; set; }
|
||||
public string GeneralMergeWithPrevious { get; set; }
|
||||
public string GeneralToggleTranslationMode { get; set; }
|
||||
@ -1043,7 +1046,7 @@ namespace Nikse.SubtitleEdit.Core
|
||||
public string MainListViewCopyTextFromOriginalToCurrent { get; set; }
|
||||
public string MainListViewAutoDuration { get; set; }
|
||||
public string MainListViewColumnDeleteText { get; set; }
|
||||
public string MainListViewColumnDeleteTextAndShiftUp { get; set; }
|
||||
public string MainListViewColumnDeleteTextAndShiftUp { get; set; }
|
||||
public string MainListViewColumnInsertText { get; set; }
|
||||
public string MainListViewColumnPaste { get; set; }
|
||||
public string MainListViewColumnTextUp { get; set; }
|
||||
@ -2800,9 +2803,18 @@ namespace Nikse.SubtitleEdit.Core
|
||||
subNode = node.SelectSingleNode("GeneralMergeSelectedLines");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.GeneralMergeSelectedLines = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("GeneralMergeSelectedLinesAndUnbreak");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreak = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("GeneralMergeSelectedLinesAndUnbreakCjk");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreakCjk = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("GeneralMergeSelectedLinesOnlyFirstText");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.GeneralMergeSelectedLinesOnlyFirstText = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("GeneralMergeSelectedLinesBilingual");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.GeneralMergeSelectedLinesBilingual = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("GeneralMergeWithNext");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.GeneralMergeWithNext = subNode.InnerText;
|
||||
@ -3022,7 +3034,7 @@ namespace Nikse.SubtitleEdit.Core
|
||||
subNode = node.SelectSingleNode("MainVideoGoToPrevSubtitle");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.MainVideoGoToPrevSubtitle = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("MainVideoGoToNextSubtitle");
|
||||
subNode = node.SelectSingleNode("MainVideoGoToNextSubtitle");
|
||||
if (subNode != null)
|
||||
settings.Shortcuts.MainVideoGoToNextSubtitle = subNode.InnerText;
|
||||
subNode = node.SelectSingleNode("MainVideoFullscreen");
|
||||
@ -3889,7 +3901,10 @@ namespace Nikse.SubtitleEdit.Core
|
||||
textWriter.WriteElementString("GeneralGoToFirstSelectedLine", settings.Shortcuts.GeneralGoToFirstSelectedLine);
|
||||
textWriter.WriteElementString("GeneralGoToNextEmptyLine", settings.Shortcuts.GeneralGoToNextEmptyLine);
|
||||
textWriter.WriteElementString("GeneralMergeSelectedLines", settings.Shortcuts.GeneralMergeSelectedLines);
|
||||
textWriter.WriteElementString("GeneralMergeSelectedLinesAndUnbreak", settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreak);
|
||||
textWriter.WriteElementString("GeneralMergeSelectedLinesAndUnbreakCjk", settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreakCjk);
|
||||
textWriter.WriteElementString("GeneralMergeSelectedLinesOnlyFirstText", settings.Shortcuts.GeneralMergeSelectedLinesOnlyFirstText);
|
||||
textWriter.WriteElementString("GeneralMergeSelectedLinesBilingual", settings.Shortcuts.GeneralMergeSelectedLinesBilingual);
|
||||
textWriter.WriteElementString("GeneralMergeWithNext", settings.Shortcuts.GeneralMergeWithNext);
|
||||
textWriter.WriteElementString("GeneralMergeWithPrevious", settings.Shortcuts.GeneralMergeWithPrevious);
|
||||
textWriter.WriteElementString("GeneralToggleTranslationMode", settings.Shortcuts.GeneralToggleTranslationMode);
|
||||
|
@ -132,6 +132,9 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
private Keys _mainGeneralGoToFirstSelectedLine = Keys.None;
|
||||
private Keys _mainGeneralGoToFirstEmptyLine = Keys.None;
|
||||
private Keys _mainGeneralMergeSelectedLines = Keys.None;
|
||||
private Keys _mainGeneralMergeSelectedLinesAndUnbreak = Keys.None;
|
||||
private Keys _mainGeneralMergeSelectedLinesAndUnbreakNoSpace = Keys.None;
|
||||
private Keys _mainGeneralMergeSelectedLinesBilingual = Keys.None;
|
||||
private Keys _mainGeneralMergeSelectedLinesOnlyFirstText = Keys.None;
|
||||
private Keys _mainGeneralToggleTranslationMode = Keys.None;
|
||||
private Keys _mainGeneralSwitchTranslationAndOriginal = Keys.None;
|
||||
@ -189,7 +192,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
private Keys _mainAdjustSetStartAndOffsetTheRest = Keys.None;
|
||||
private Keys _mainAdjustSetEndAndOffsetTheRest = Keys.None;
|
||||
private Keys _mainAdjustSetEndAndOffsetTheRestAndGoToNext = Keys.None;
|
||||
private Keys _mainAdjustSetEndAndGotoNext = Keys.None;
|
||||
private Keys _mainAdjustSetEndAndGotoNext = Keys.None;
|
||||
private Keys _mainAdjustInsertViaEndAutoStart = Keys.None;
|
||||
private Keys _mainAdjustInsertViaEndAutoStartAndGoToNext = Keys.None;
|
||||
private Keys _mainAdjustSetStartAutoDurationAndGoToNext = Keys.None;
|
||||
@ -3141,7 +3144,10 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
else
|
||||
{
|
||||
ShowUnknownSubtitle();
|
||||
if (ShowUnknownSubtitle(fileName, true))
|
||||
{
|
||||
ImportPlainText(fileName);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -3348,12 +3354,13 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
}
|
||||
|
||||
private void ShowUnknownSubtitle()
|
||||
private bool ShowUnknownSubtitle(string fileName, bool allowImportPlainText = false)
|
||||
{
|
||||
using (var unknownSubtitle = new UnknownSubtitle())
|
||||
{
|
||||
unknownSubtitle.Initialize(Title);
|
||||
unknownSubtitle.Initialize(Title, fileName, allowImportPlainText);
|
||||
unknownSubtitle.ShowDialog(this);
|
||||
return unknownSubtitle.ImportPlainText;
|
||||
}
|
||||
}
|
||||
|
||||
@ -9043,7 +9050,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
}
|
||||
|
||||
private void MergeSelectedLines()
|
||||
private void MergeSelectedLines(bool unbreak = false)
|
||||
{
|
||||
if (_subtitle.Paragraphs.Count > 0 && SubtitleListview1.SelectedItems.Count > 1)
|
||||
{
|
||||
@ -9082,7 +9089,11 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string text = sb.ToString();
|
||||
text = HtmlUtil.FixInvalidItalicTags(text);
|
||||
text = ChangeAllLinesItalictoSingleItalic(text);
|
||||
text = Utilities.AutoBreakLine(text, LanguageAutoDetect.AutoDetectGoogleLanguage(_subtitle));
|
||||
if (unbreak)
|
||||
text = Utilities.UnbreakLine(text);
|
||||
else
|
||||
text = Utilities.AutoBreakLine(text, LanguageAutoDetect.AutoDetectGoogleLanguage(_subtitle));
|
||||
|
||||
currentParagraph.Text = text;
|
||||
|
||||
//display time
|
||||
@ -9117,7 +9128,12 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
original.Text = originalTexts.ToString().Replace(" ", " ");
|
||||
original.Text = original.Text.Replace(Environment.NewLine, " ");
|
||||
original.Text = ChangeAllLinesItalictoSingleItalic(original.Text);
|
||||
original.Text = Utilities.AutoBreakLine(original.Text);
|
||||
|
||||
if (unbreak)
|
||||
original.Text = Utilities.UnbreakLine(original.Text);
|
||||
else
|
||||
original.Text = Utilities.AutoBreakLine(original.Text, LanguageAutoDetect.AutoDetectGoogleLanguage(_subtitleAlternate));
|
||||
|
||||
original.EndTime.TotalMilliseconds = currentParagraph.EndTime.TotalMilliseconds;
|
||||
_subtitleAlternate.Renumber();
|
||||
}
|
||||
@ -9170,7 +9186,15 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
}
|
||||
|
||||
private void MergeWithLineAfter(bool insertDash)
|
||||
public enum BreakMode
|
||||
{
|
||||
Normal,
|
||||
Unbreak,
|
||||
UnbreakNoSpace,
|
||||
Bilangual
|
||||
}
|
||||
|
||||
private void MergeWithLineAfter(bool insertDash, BreakMode breakMode = BreakMode.Normal)
|
||||
{
|
||||
int firstSelectedIndex = SubtitleListview1.SelectedItems[0].Index;
|
||||
|
||||
@ -12008,6 +12032,47 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
MergeSelectedLines();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//TODO: Work on new shortcuts - start
|
||||
else if (_mainGeneralMergeSelectedLinesAndUnbreak == e.KeyData)
|
||||
{
|
||||
e.SuppressKeyPress = true;
|
||||
if (SubtitleListview1.SelectedItems.Count == 2)
|
||||
MergeWithLineAfter(false, BreakMode.Unbreak);
|
||||
else
|
||||
MergeSelectedLines(true);
|
||||
}
|
||||
else if (_mainGeneralMergeSelectedLinesAndUnbreakNoSpace == e.KeyData)
|
||||
{
|
||||
if (_subtitle.Paragraphs.Count > 0 && SubtitleListview1.SelectedItems.Count >= 1)
|
||||
{
|
||||
e.SuppressKeyPress = true;
|
||||
if (SubtitleListview1.SelectedItems.Count == 2)
|
||||
MergeWithLineAfter(false, BreakMode.UnbreakNoSpace);
|
||||
else
|
||||
MergeSelectedLines(true);
|
||||
}
|
||||
}
|
||||
else if (_mainGeneralMergeSelectedLinesBilingual == e.KeyData)
|
||||
{
|
||||
if (_subtitle.Paragraphs.Count > 0 && SubtitleListview1.SelectedItems.Count >= 1)
|
||||
{
|
||||
e.SuppressKeyPress = true;
|
||||
if (SubtitleListview1.SelectedItems.Count == 2)
|
||||
MergeWithLineAfter(false);
|
||||
else
|
||||
MergeSelectedLines();
|
||||
}
|
||||
}
|
||||
//TODO: Work on new shortcuts - end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
else if (_mainGeneralMergeSelectedLinesOnlyFirstText == e.KeyData)
|
||||
{
|
||||
if (_subtitle.Paragraphs.Count > 0 && SubtitleListview1.SelectedItems.Count >= 1)
|
||||
@ -14486,7 +14551,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
SubtitleFormat f = sub.LoadSubtitle(fileName, out enc, null);
|
||||
if (f == null)
|
||||
{
|
||||
ShowUnknownSubtitle();
|
||||
ShowUnknownSubtitle(fileName);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -14560,7 +14625,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
if (format == null)
|
||||
{
|
||||
ShowUnknownSubtitle();
|
||||
ShowUnknownSubtitle(openFileDialog1.FileName);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -16631,6 +16696,9 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
_mainGeneralGoToFirstSelectedLine = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralGoToFirstSelectedLine);
|
||||
_mainGeneralGoToFirstEmptyLine = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralGoToNextEmptyLine);
|
||||
_mainGeneralMergeSelectedLines = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralMergeSelectedLines);
|
||||
_mainGeneralMergeSelectedLinesAndUnbreak = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreak);
|
||||
_mainGeneralMergeSelectedLinesAndUnbreakNoSpace = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreakCjk);
|
||||
_mainGeneralMergeSelectedLinesBilingual = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesBilingual);
|
||||
_mainGeneralMergeSelectedLinesOnlyFirstText = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesOnlyFirstText);
|
||||
_mainGeneralToggleTranslationMode = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralToggleTranslationMode);
|
||||
_mainGeneralSwitchTranslationAndOriginal = UiUtil.GetKeys(Configuration.Settings.Shortcuts.GeneralSwitchOriginalAndTranslation);
|
||||
|
@ -774,10 +774,13 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
var generalNode = new ShortcutNode(Configuration.Settings.Language.General.GeneralText);
|
||||
AddNode(generalNode, language.MergeSelectedLines, nameof(Configuration.Settings.Shortcuts.GeneralMergeSelectedLines));
|
||||
AddNode(generalNode, language.MergeSelectedLinesOnlyFirstText, nameof(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesOnlyFirstText));
|
||||
AddNode(generalNode, language.MergeOriginalAndTranslation, nameof(Configuration.Settings.Shortcuts.GeneralMergeOriginalAndTranslation));
|
||||
AddNode(generalNode, language.MergeWithPrevious, nameof(Configuration.Settings.Shortcuts.GeneralMergeWithPrevious));
|
||||
AddNode(generalNode, language.MergeWithNext, nameof(Configuration.Settings.Shortcuts.GeneralMergeWithNext));
|
||||
AddNode(generalNode, language.MergeSelectedLinesAndUnbreak, nameof(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreak));
|
||||
AddNode(generalNode, language.MergeSelectedLinesAndUnbreakCjk, nameof(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesAndUnbreakCjk));
|
||||
AddNode(generalNode, language.MergeSelectedLinesOnlyFirstText, nameof(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesOnlyFirstText));
|
||||
AddNode(generalNode, language.MergeSelectedLinesBilingual, nameof(Configuration.Settings.Shortcuts.GeneralMergeSelectedLinesBilingual));
|
||||
AddNode(generalNode, language.MergeOriginalAndTranslation, nameof(Configuration.Settings.Shortcuts.GeneralMergeOriginalAndTranslation));
|
||||
AddNode(generalNode, language.ToggleTranslationMode, nameof(Configuration.Settings.Shortcuts.GeneralToggleTranslationMode));
|
||||
AddNode(generalNode, language.SwitchOriginalAndTranslation, nameof(Configuration.Settings.Shortcuts.GeneralSwitchOriginalAndTranslation));
|
||||
AddNode(generalNode, language.WaveformPlayFirstSelectedSubtitle, nameof(Configuration.Settings.Shortcuts.GeneralPlayFirstSelected));
|
||||
|
54
src/Forms/UnknownSubtitle.Designer.cs
generated
54
src/Forms/UnknownSubtitle.Designer.cs
generated
@ -31,6 +31,9 @@
|
||||
this.labelTitle = new System.Windows.Forms.Label();
|
||||
this.buttonOK = new System.Windows.Forms.Button();
|
||||
this.richTextBoxMessage = new System.Windows.Forms.RichTextBox();
|
||||
this.buttonImportPlainText = new System.Windows.Forms.Button();
|
||||
this.LabelPreview = new System.Windows.Forms.Label();
|
||||
this.textBoxPreview = new System.Windows.Forms.TextBox();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// labelTitle
|
||||
@ -38,7 +41,7 @@
|
||||
this.labelTitle.AutoSize = true;
|
||||
this.labelTitle.Location = new System.Drawing.Point(15, 25);
|
||||
this.labelTitle.Name = "labelTitle";
|
||||
this.labelTitle.Size = new System.Drawing.Size(145, 17);
|
||||
this.labelTitle.Size = new System.Drawing.Size(114, 13);
|
||||
this.labelTitle.TabIndex = 0;
|
||||
this.labelTitle.Text = "Unknown subtitle type";
|
||||
//
|
||||
@ -47,7 +50,7 @@
|
||||
this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.buttonOK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.buttonOK.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.buttonOK.Location = new System.Drawing.Point(324, 134);
|
||||
this.buttonOK.Location = new System.Drawing.Point(457, 272);
|
||||
this.buttonOK.Name = "buttonOK";
|
||||
this.buttonOK.Size = new System.Drawing.Size(100, 27);
|
||||
this.buttonOK.TabIndex = 8;
|
||||
@ -63,17 +66,55 @@
|
||||
this.richTextBoxMessage.Name = "richTextBoxMessage";
|
||||
this.richTextBoxMessage.ReadOnly = true;
|
||||
this.richTextBoxMessage.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
|
||||
this.richTextBoxMessage.Size = new System.Drawing.Size(406, 47);
|
||||
this.richTextBoxMessage.Size = new System.Drawing.Size(539, 47);
|
||||
this.richTextBoxMessage.TabIndex = 41;
|
||||
this.richTextBoxMessage.TabStop = false;
|
||||
this.richTextBoxMessage.Text = "If you want this fixed please send an email to mailto:niksedk@gmail.com and inclu" +
|
||||
"de a copy of the subtitle.";
|
||||
//
|
||||
// buttonImportPlainText
|
||||
//
|
||||
this.buttonImportPlainText.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.buttonImportPlainText.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.buttonImportPlainText.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.buttonImportPlainText.Location = new System.Drawing.Point(260, 272);
|
||||
this.buttonImportPlainText.Name = "buttonImportPlainText";
|
||||
this.buttonImportPlainText.Size = new System.Drawing.Size(191, 27);
|
||||
this.buttonImportPlainText.TabIndex = 42;
|
||||
this.buttonImportPlainText.Text = "Import plain text...";
|
||||
this.buttonImportPlainText.UseVisualStyleBackColor = true;
|
||||
this.buttonImportPlainText.Click += new System.EventHandler(this.buttonImportPlainText_Click);
|
||||
//
|
||||
// LabelPreview
|
||||
//
|
||||
this.LabelPreview.AutoSize = true;
|
||||
this.LabelPreview.Location = new System.Drawing.Point(17, 101);
|
||||
this.LabelPreview.Name = "LabelPreview";
|
||||
this.LabelPreview.Size = new System.Drawing.Size(45, 13);
|
||||
this.LabelPreview.TabIndex = 44;
|
||||
this.LabelPreview.Text = "Preview";
|
||||
//
|
||||
// textBoxPreview
|
||||
//
|
||||
this.textBoxPreview.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textBoxPreview.Location = new System.Drawing.Point(18, 118);
|
||||
this.textBoxPreview.Multiline = true;
|
||||
this.textBoxPreview.Name = "textBoxPreview";
|
||||
this.textBoxPreview.ReadOnly = true;
|
||||
this.textBoxPreview.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||
this.textBoxPreview.Size = new System.Drawing.Size(539, 141);
|
||||
this.textBoxPreview.TabIndex = 43;
|
||||
//
|
||||
// UnknownSubtitle
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 17F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(436, 173);
|
||||
this.ClientSize = new System.Drawing.Size(569, 311);
|
||||
this.Controls.Add(this.LabelPreview);
|
||||
this.Controls.Add(this.textBoxPreview);
|
||||
this.Controls.Add(this.buttonImportPlainText);
|
||||
this.Controls.Add(this.richTextBoxMessage);
|
||||
this.Controls.Add(this.buttonOK);
|
||||
this.Controls.Add(this.labelTitle);
|
||||
@ -97,5 +138,8 @@
|
||||
private System.Windows.Forms.Label labelTitle;
|
||||
private System.Windows.Forms.Button buttonOK;
|
||||
private System.Windows.Forms.RichTextBox richTextBoxMessage;
|
||||
private System.Windows.Forms.Button buttonImportPlainText;
|
||||
private System.Windows.Forms.Label LabelPreview;
|
||||
private System.Windows.Forms.TextBox textBoxPreview;
|
||||
}
|
||||
}
|
@ -1,4 +1,5 @@
|
||||
using Nikse.SubtitleEdit.Core;
|
||||
using System.IO;
|
||||
using Nikse.SubtitleEdit.Core;
|
||||
using Nikse.SubtitleEdit.Logic;
|
||||
using System.Windows.Forms;
|
||||
|
||||
@ -6,6 +7,8 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
{
|
||||
public sealed partial class UnknownSubtitle : Form
|
||||
{
|
||||
public bool ImportPlainText { get; set; }
|
||||
|
||||
public UnknownSubtitle()
|
||||
{
|
||||
UiUtil.PreInitialize(this);
|
||||
@ -16,12 +19,35 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
labelTitle.Text = Configuration.Settings.Language.UnknownSubtitle.Title;
|
||||
richTextBoxMessage.Text = Configuration.Settings.Language.UnknownSubtitle.Message;
|
||||
buttonOK.Text = Configuration.Settings.Language.General.Ok;
|
||||
buttonImportPlainText.Text = Configuration.Settings.Language.UnknownSubtitle.ImportAsPlainText;
|
||||
UiUtil.FixLargeFonts(this, buttonOK);
|
||||
}
|
||||
|
||||
public void Initialize(string title)
|
||||
public void Initialize(string title, string fileName, bool allowImportPlainText)
|
||||
{
|
||||
Text = title;
|
||||
try
|
||||
{
|
||||
var file = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
|
||||
|
||||
int length = (int)file.Length;
|
||||
if (length > 100000)
|
||||
length = 100000;
|
||||
|
||||
file.Position = 0;
|
||||
var fileBuffer = new byte[length];
|
||||
file.Read(fileBuffer, 0, length);
|
||||
file.Close();
|
||||
|
||||
var encoding = LanguageAutoDetect.DetectAnsiEncoding(fileBuffer);
|
||||
LabelPreview.Text = Configuration.Settings.Language.General.Preview + " - " + fileName;
|
||||
textBoxPreview.Text = encoding.GetString(fileBuffer).Replace("\0", " ");
|
||||
buttonImportPlainText.Visible = allowImportPlainText && !string.IsNullOrWhiteSpace(textBoxPreview.Text);
|
||||
}
|
||||
catch
|
||||
{
|
||||
// ignored
|
||||
}
|
||||
}
|
||||
|
||||
private void FormUnknownSubtitle_KeyDown(object sender, KeyEventArgs e)
|
||||
@ -29,5 +55,11 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (e.KeyCode == Keys.Escape)
|
||||
DialogResult = DialogResult.Cancel;
|
||||
}
|
||||
|
||||
private void buttonImportPlainText_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
ImportPlainText = true;
|
||||
DialogResult = DialogResult.OK;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user