コード例 #1
0
ファイル: Main.cs プロジェクト: m1croN/subtitleedit
        private void ToolStripMenuItemUnbreakLinesClick(object sender, EventArgs e)
        {
            if (!IsSubtitleLoaded)
            {
                DisplaySubtitleNotLoadedMessage();
                return;
            }

            ReloadFromSourceView();
            using (var autoBreakUnbreakLines = new AutoBreakUnbreakLines())
            {
                var selectedLines = new Subtitle();
                foreach (int index in SubtitleListview1.SelectedIndices)
                    selectedLines.Paragraphs.Add(_subtitle.Paragraphs[index]);
                autoBreakUnbreakLines.Initialize(selectedLines, false);

                if (autoBreakUnbreakLines.ShowDialog() == DialogResult.OK && autoBreakUnbreakLines.FixedText.Count > 0)
                {
                    MakeHistoryForUndo(_language.BeforeRemoveLineBreaksInSelectedLines);

                    SubtitleListview1.BeginUpdate();
                    foreach (int index in SubtitleListview1.SelectedIndices)
                    {
                        var p = _subtitle.GetParagraphOrDefault(index);
                        if (autoBreakUnbreakLines.FixedText.ContainsKey(p.ID))
                        {
                            p.Text = autoBreakUnbreakLines.FixedText[p.ID];
                            SubtitleListview1.SetText(index, p.Text);
                            SubtitleListview1.SyntaxColorLine(_subtitle.Paragraphs, index, p);
                        }
                    }
                    SubtitleListview1.EndUpdate();
                    RefreshSelectedParagraph();
                    ShowStatus(string.Format(_language.NumberOfWithRemovedLineBreakX, autoBreakUnbreakLines.FixedText.Count));
                }
            }
        }
コード例 #2
0
ファイル: Main.cs プロジェクト: IlgnerBri/subtitleedit
        private void ToolStripMenuItemUnbreakLinesClick(object sender, EventArgs e)
        {
            if (IsSubtitleLoaded)
            {
                ReloadFromSourceView();
                var autoBreakUnbreakLines = new AutoBreakUnbreakLines();
                var selectedLines = new Subtitle();
                foreach (int index in SubtitleListview1.SelectedIndices)
                    selectedLines.Paragraphs.Add(_subtitle.Paragraphs[index]);
                autoBreakUnbreakLines.Initialize(selectedLines, false);

                if (autoBreakUnbreakLines.ShowDialog() == DialogResult.OK && autoBreakUnbreakLines.FixedParagraphs.Count > 0)
                {
                    MakeHistoryForUndo(_language.BeforeRemoveLineBreaksInSelectedLines);

                    SubtitleListview1.BeginUpdate();
                    foreach (int index in SubtitleListview1.SelectedIndices)
                    {
                        Paragraph p = _subtitle.GetParagraphOrDefault(index);

                        int indexFixed = autoBreakUnbreakLines.FixedParagraphs.IndexOf(p);
                        if (indexFixed >= 0)
                        {
                            p.Text = Utilities.UnbreakLine(p.Text);
                            SubtitleListview1.SetText(index, p.Text);
                        }
                    }
                    SubtitleListview1.EndUpdate();
                    RefreshSelectedParagraph();
                    ShowStatus(string.Format(_language.NumberOfWithRemovedLineBreakX, autoBreakUnbreakLines.FixedParagraphs.Count));
                }
            }
            else
            {
                MessageBox.Show(_language.NoSubtitleLoaded, Title, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
コード例 #3
0
ファイル: Main.cs プロジェクト: socialpercon/subtitleedit
        private void ToolStripMenuItemAutoBreakLinesClick(object sender, EventArgs e)
        {
            if (!IsSubtitleLoaded)
            {
                MessageBox.Show(this, _language.NoSubtitleLoaded, Title, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            ReloadFromSourceView();
            using (var autoBreakUnbreakLines = new AutoBreakUnbreakLines())
            {
                var selectedLines = new Subtitle();
                foreach (int index in SubtitleListview1.SelectedIndices)
                    selectedLines.Paragraphs.Add(_subtitle.Paragraphs[index]);
                autoBreakUnbreakLines.Initialize(selectedLines, true);

                if (autoBreakUnbreakLines.ShowDialog() == DialogResult.OK && autoBreakUnbreakLines.FixedText.Count > 0)
                {
                    MakeHistoryForUndo(_language.BeforeAutoBalanceSelectedLines);
                    var language = Utilities.AutoDetectGoogleLanguage(_subtitle);
                    SubtitleListview1.BeginUpdate();
                    foreach (int index in SubtitleListview1.SelectedIndices)
                    {
                        var p = _subtitle.GetParagraphOrDefault(index);
                        if (autoBreakUnbreakLines.FixedText.ContainsKey(p.ID))
                        {
                            p.Text = autoBreakUnbreakLines.FixedText[p.ID];
                            SubtitleListview1.SetText(index, p.Text);
                            SubtitleListview1.SyntaxColorLine(_subtitle.Paragraphs, index, p);
                        }
                    }
                    SubtitleListview1.EndUpdate();
                    RefreshSelectedParagraph();
                    ShowStatus(string.Format(_language.NumberOfLinesAutoBalancedX, autoBreakUnbreakLines.FixedText.Count));
                }
            }
        }
コード例 #4
0
        private void ToolStripMenuItemAutoBreakLinesClick(object sender, EventArgs e)
        {
            if (!this.IsSubtitleLoaded)
            {
                this.DisplaySubtitleNotLoadedMessage();
                return;
            }

            this.ReloadFromSourceView();
            using (var autoBreakUnbreakLines = new AutoBreakUnbreakLines())
            {
                var selectedLines = new Subtitle();
                foreach (int index in this.SubtitleListview1.SelectedIndices)
                {
                    selectedLines.Paragraphs.Add(this._subtitle.Paragraphs[index]);
                }

                autoBreakUnbreakLines.Initialize(selectedLines, true);

                if (autoBreakUnbreakLines.ShowDialog() == DialogResult.OK && autoBreakUnbreakLines.FixedText.Count > 0)
                {
                    this.MakeHistoryForUndo(this._language.BeforeAutoBalanceSelectedLines);
                    var language = Utilities.AutoDetectGoogleLanguage(this._subtitle);
                    this.SubtitleListview1.BeginUpdate();
                    foreach (int index in this.SubtitleListview1.SelectedIndices)
                    {
                        var p = this._subtitle.GetParagraphOrDefault(index);
                        if (autoBreakUnbreakLines.FixedText.ContainsKey(p.Id))
                        {
                            p.Text = autoBreakUnbreakLines.FixedText[p.Id];
                            this.SubtitleListview1.SetText(index, p.Text);
                            this.SubtitleListview1.SyntaxColorLine(this._subtitle.Paragraphs, index, p);
                        }
                    }

                    this.SubtitleListview1.EndUpdate();
                    this.RefreshSelectedParagraph();
                    this.ShowStatus(string.Format(this._language.NumberOfLinesAutoBalancedX, autoBreakUnbreakLines.FixedText.Count));
                }
            }
        }
コード例 #5
0
ファイル: Main.cs プロジェクト: nguansak/subtitleedit
        private void ToolStripMenuItemAutoBreakLinesClick(object sender, EventArgs e)
        {
            if (IsSubtitleLoaded)
            {
                ReloadFromSourceView();
                var autoBreakUnbreakLines = new AutoBreakUnbreakLines();
                var selectedLines = new Subtitle();
                foreach (int index in SubtitleListview1.SelectedIndices)
                    selectedLines.Paragraphs.Add(_subtitle.Paragraphs[index]);
                autoBreakUnbreakLines.Initialize(selectedLines, true);

                if (autoBreakUnbreakLines.ShowDialog() == DialogResult.OK && autoBreakUnbreakLines.FixedParagraphs.Count > 0)
                {
                    MakeHistoryForUndo(_language.BeforeAutoBalanceSelectedLines);
                    string language = Utilities.AutoDetectGoogleLanguage(_subtitle);
                    SubtitleListview1.BeginUpdate();
                    foreach (int index in SubtitleListview1.SelectedIndices)
                    {
                        Paragraph p = _subtitle.GetParagraphOrDefault(index);

                        int indexFixed = autoBreakUnbreakLines.FixedParagraphs.IndexOf(p);
                        if (indexFixed >= 0)
                        {
                            p.Text = Utilities.AutoBreakLine(p.Text, 5, autoBreakUnbreakLines.MininumLength, autoBreakUnbreakLines.MergeLinesShorterThan, language);
                            SubtitleListview1.SetText(index, p.Text);
                            SubtitleListview1.SyntaxColorLine(_subtitle.Paragraphs, index, p);
                        }
                    }
                    SubtitleListview1.EndUpdate();
                    RefreshSelectedParagraph();
                    ShowStatus(string.Format(_language.NumberOfLinesAutoBalancedX, autoBreakUnbreakLines.FixedParagraphs.Count));
                }
            }
            else
            {
                MessageBox.Show(_language.NoSubtitleLoaded, Title, MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }