Fixed a crash in set color (or set font) - thx LEO33 :)

git-svn-id: https://subtitleedit.googlecode.com/svn/trunk@780 99eadd0c-20b8-1223-b5c4-2a2b2df33de2
This commit is contained in:
niksedk 2011-11-05 06:26:25 +00:00
parent d7ba0010da
commit 3ac954c659
5 changed files with 192 additions and 145 deletions

View File

@ -191,6 +191,35 @@ namespace Nikse.SubtitleEdit.Forms
Utilities.InitializeSubtitleFont(subtitleListView1);
listViewFixes.ListViewItemSorter = new ListViewSorter { ColumnNumber = 1, IsNumber = true };
if (!string.IsNullOrEmpty(Configuration.Settings.CommonErrors.StartSize))
{
StartPosition = FormStartPosition.Manual;
string[] arr = Configuration.Settings.CommonErrors.StartSize.Split(';');
int x, y;
if (arr.Length == 2 && int.TryParse(arr[0], out x) && int.TryParse(arr[1], out y))
{
if (x > 10 && x < 10000 && y > 10 && y < 10000)
{
Width = x;
Height = y;
}
}
}
if (!string.IsNullOrEmpty(Configuration.Settings.CommonErrors.StartPosition))
{
StartPosition = FormStartPosition.Manual;
string[] arr = Configuration.Settings.CommonErrors.StartPosition.Split(';');
int x, y;
if (arr.Length == 2 && int.TryParse(arr[0], out x) && int.TryParse(arr[1], out y))
{
if (x > 0 && x < Screen.PrimaryScreen.WorkingArea.Width && y > 0 && y < Screen.PrimaryScreen.WorkingArea.Height)
{
Left = x;
Top = y;
}
}
}
if (Screen.PrimaryScreen.WorkingArea.Width <= 124)
{
this.Width = this.MinimumSize.Width;

View File

@ -3214,7 +3214,7 @@ namespace Nikse.SubtitleEdit.Forms
ReloadFromSourceView();
SaveSubtitleListviewIndexes();
var fixErrors = new FixCommonErrors();
_formPositionsAndSizes.SetPositionAndSize(fixErrors);
//_formPositionsAndSizes.SetPositionAndSize(fixErrors);
ShowInTaskbar = false;
if (onlySelectedLines)
@ -3254,8 +3254,10 @@ namespace Nikse.SubtitleEdit.Forms
SubtitleListview1.Fill(_subtitle, _subtitleAlternate);
RestoreSubtitleListviewIndexes();
_change = true;
_formPositionsAndSizes.SavePositionAndSize(fixErrors);
//_formPositionsAndSizes.SavePositionAndSize(fixErrors);
}
Configuration.Settings.CommonErrors.StartSize = fixErrors.Width + ";" + fixErrors.Height;
Configuration.Settings.CommonErrors.StartPosition = fixErrors.Left + ";" + fixErrors.Top;
}
else
{
@ -5291,6 +5293,9 @@ namespace Nikse.SubtitleEdit.Forms
private void SetFontColor(Paragraph p, string color)
{
if (p == null)
return;
bool done = false;
string s = p.Text;
@ -5359,6 +5364,9 @@ namespace Nikse.SubtitleEdit.Forms
private void SetFontName(Paragraph p)
{
if (p == null)
return;
bool done = false;
string s = p.Text;

View File

@ -140,6 +140,8 @@ namespace Nikse.SubtitleEdit.Logic
public class FixCommonErrorsSettings
{
public string StartPosition { get; set; }
public string StartSize { get; set; }
public bool EmptyLinesTicked { get; set; }
public bool OverlappingDisplayTimeTicked { get; set; }
public bool TooShortDisplayTimeTicked { get; set; }
@ -920,6 +922,12 @@ namespace Nikse.SubtitleEdit.Logic
settings.CommonErrors = new Nikse.SubtitleEdit.Logic.FixCommonErrorsSettings();
node = doc.DocumentElement.SelectSingleNode("CommonErrors");
subNode = node.SelectSingleNode("StartPosition");
if (subNode != null)
settings.CommonErrors.StartPosition = subNode.InnerText;
subNode = node.SelectSingleNode("StartSize");
if (subNode != null)
settings.CommonErrors.StartSize = subNode.InnerText;
subNode = node.SelectSingleNode("EmptyLinesTicked");
if (subNode != null)
settings.CommonErrors.EmptyLinesTicked = Convert.ToBoolean(subNode.InnerText);
@ -1387,6 +1395,8 @@ namespace Nikse.SubtitleEdit.Logic
textWriter.WriteEndElement();
textWriter.WriteStartElement("CommonErrors", "");
textWriter.WriteElementString("StartPosition", settings.CommonErrors.StartPosition);
textWriter.WriteElementString("StartSize", settings.CommonErrors.StartSize);
textWriter.WriteElementString("EmptyLinesTicked", settings.CommonErrors.EmptyLinesTicked.ToString());
textWriter.WriteElementString("OverlappingDisplayTimeTicked", settings.CommonErrors.OverlappingDisplayTimeTicked.ToString());
textWriter.WriteElementString("TooShortDisplayTimeTicked", settings.CommonErrors.TooShortDisplayTimeTicked.ToString());