2019-02-21 23:41:44 +01:00
|
|
|
|
using Nikse.SubtitleEdit.Core.Interfaces;
|
|
|
|
|
|
|
|
|
|
namespace Nikse.SubtitleEdit.Core.Forms.FixCommonErrors
|
2015-09-19 09:28:36 +02:00
|
|
|
|
{
|
2020-02-16 08:08:19 +01:00
|
|
|
|
public class FixHyphensRemoveDashSingleLine : IFixCommonError
|
2015-09-19 09:28:36 +02:00
|
|
|
|
{
|
|
|
|
|
public void Fix(Subtitle subtitle, IFixCallbacks callbacks)
|
|
|
|
|
{
|
|
|
|
|
var language = Configuration.Settings.Language.FixCommonErrors;
|
2020-02-16 08:08:19 +01:00
|
|
|
|
string fixAction = language.FixHyphensInDialogs;
|
2015-09-19 09:28:36 +02:00
|
|
|
|
int iFixes = 0;
|
|
|
|
|
for (int i = 0; i < subtitle.Paragraphs.Count; i++)
|
|
|
|
|
{
|
|
|
|
|
var p = subtitle.Paragraphs[i];
|
2020-02-17 21:54:35 +01:00
|
|
|
|
if (Helper.IsOneSentence(p.Text) && callbacks.AllowFix(p, fixAction))
|
2015-09-19 09:28:36 +02:00
|
|
|
|
{
|
|
|
|
|
string oldText = p.Text;
|
2020-02-17 21:54:35 +01:00
|
|
|
|
string text = Helper.FixHyphensRemoveForSingleLine(subtitle, p.Text, i);
|
2015-09-19 09:28:36 +02:00
|
|
|
|
if (text != oldText)
|
|
|
|
|
{
|
|
|
|
|
p.Text = text;
|
|
|
|
|
iFixes++;
|
|
|
|
|
callbacks.AddFixToListView(p, fixAction, oldText, p.Text);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-02-16 08:08:19 +01:00
|
|
|
|
callbacks.UpdateFixStatus(iFixes, language.RemoveHyphensSingleLine, language.XHyphensSingleLineRemoved);
|
2015-09-19 09:28:36 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|