mirror of
https://github.com/SubtitleEdit/subtitleedit.git
synced 2024-10-27 22:42:38 +01:00
Arrow up/down now navigates to prev/next sub when playing video fullscreen
git-svn-id: https://subtitleedit.googlecode.com/svn/trunk@925 99eadd0c-20b8-1223-b5c4-2a2b2df33de2
This commit is contained in:
parent
ebedc3ddda
commit
788a987141
@ -197,7 +197,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
public Main()
|
||||
{
|
||||
//try
|
||||
try
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
@ -351,11 +351,11 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
FixLargeFonts();
|
||||
}
|
||||
//catch (Exception exception)
|
||||
//{
|
||||
// Cursor = Cursors.Default;
|
||||
// MessageBox.Show(exception.Message + Environment.NewLine + exception.StackTrace);
|
||||
//}
|
||||
catch (Exception exception)
|
||||
{
|
||||
Cursor = Cursors.Default;
|
||||
MessageBox.Show(exception.Message + Environment.NewLine + exception.StackTrace);
|
||||
}
|
||||
}
|
||||
|
||||
private void BatchConvert(string[] args) // E.g.: /convert *.txt SubRip
|
||||
@ -364,8 +364,6 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (!Utilities.IsRunningOnMac() && !Utilities.IsRunningOnLinux())
|
||||
AttachConsole(ATTACH_PARENT_PROCESS);
|
||||
|
||||
Console.WriteLine();
|
||||
Console.WriteLine();
|
||||
Console.WriteLine();
|
||||
Console.WriteLine();
|
||||
Console.WriteLine(Title + " - Batch converter");
|
||||
@ -373,7 +371,6 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
Console.WriteLine("- Syntax: SubtitleEdit /convert <pattern> <name-of-format-without-spaces> [/offset:hh:mm:ss:msec] [/encoding:<encoding name>]");
|
||||
Console.WriteLine(" example: SubtitleEdit /convert *.srt sami");
|
||||
Console.WriteLine();
|
||||
Console.WriteLine();
|
||||
|
||||
string pattern = args[2];
|
||||
string toFormat = args[3];
|
||||
@ -391,9 +388,12 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
Encoding targetEncoding = Encoding.UTF8;
|
||||
try
|
||||
{
|
||||
targetEncodingName = targetEncodingName.Substring(10);
|
||||
if (!string.IsNullOrEmpty(targetEncodingName))
|
||||
targetEncoding = Encoding.GetEncoding(targetEncodingName);
|
||||
{
|
||||
targetEncodingName = targetEncodingName.Substring(10);
|
||||
if (!string.IsNullOrEmpty(targetEncodingName))
|
||||
targetEncoding = Encoding.GetEncoding(targetEncodingName);
|
||||
}
|
||||
}
|
||||
catch (Exception exception)
|
||||
{
|
||||
@ -12337,5 +12337,49 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
//tc.DrawMode = TabDrawMode.Normal;
|
||||
}
|
||||
|
||||
public void GotoNextSubPosFromvideoPos()
|
||||
{
|
||||
if (mediaPlayer.VideoPlayer != null && _subtitle != null)
|
||||
{
|
||||
double ms = mediaPlayer.VideoPlayer.CurrentPosition * 1000.0;
|
||||
foreach (Paragraph p in _subtitle.Paragraphs)
|
||||
{
|
||||
if (p.EndTime.TotalMilliseconds > ms && p.StartTime.TotalMilliseconds < ms)
|
||||
{
|
||||
// currrent sub
|
||||
}
|
||||
else if (p.Duration.TotalSeconds < 10 && p.StartTime.TotalMilliseconds > ms)
|
||||
{
|
||||
mediaPlayer.VideoPlayer.CurrentPosition = p.StartTime.TotalSeconds;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void GotoPrevSubPosFromvideoPos()
|
||||
{
|
||||
if (mediaPlayer.VideoPlayer != null && _subtitle != null)
|
||||
{
|
||||
double ms = mediaPlayer.VideoPlayer.CurrentPosition * 1000.0;
|
||||
int i = _subtitle.Paragraphs.Count-1;
|
||||
while (i>0)
|
||||
{
|
||||
Paragraph p = _subtitle.Paragraphs[i];
|
||||
if (p.EndTime.TotalMilliseconds > ms && p.StartTime.TotalMilliseconds < ms)
|
||||
{
|
||||
// currrent sub
|
||||
}
|
||||
else if (p.Duration.TotalSeconds < 10 && p.StartTime.TotalMilliseconds < ms)
|
||||
{
|
||||
mediaPlayer.VideoPlayer.CurrentPosition = p.StartTime.TotalSeconds;
|
||||
return;
|
||||
}
|
||||
i--;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
@ -99,6 +99,21 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
e.SuppressKeyPress = true;
|
||||
}
|
||||
}
|
||||
|
||||
else if (e.KeyCode == Keys.Up && e.Modifiers == Keys.Alt && WindowState == FormWindowState.Maximized)
|
||||
{
|
||||
_mainForm.GotoPrevSubPosFromvideoPos();
|
||||
e.Handled = true;
|
||||
}
|
||||
else if (e.Modifiers == Keys.Alt && e.KeyCode == Keys.Down && WindowState == FormWindowState.Maximized)
|
||||
{
|
||||
_mainForm.GotoNextSubPosFromvideoPos();
|
||||
e.Handled = true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
else if (_redockKeys == e.KeyData)
|
||||
{
|
||||
_mainForm.redockVideoControlsToolStripMenuItem_Click(null, null);
|
||||
|
Loading…
Reference in New Issue
Block a user