Esempio n. 1
0
        public override void Execute()
        {
            int            result         = this.Editor.Caret.EditPosition.Line + 1;
            GoToLineDialog goToLineDialog = new GoToLineDialog();

            goToLineDialog.LineNumber = result.ToString((IFormatProvider)CultureInfo.InvariantCulture);
            bool?nullable = goToLineDialog.ShowDialog();

            if (nullable.HasValue && nullable.Value && (int.TryParse(goToLineDialog.LineNumber, out result) && result > 0))
            {
                int documentLineIndex = result - 1;
                if (documentLineIndex >= this.Editor.Document.Lines.Count)
                {
                    documentLineIndex = this.Editor.Document.Lines.Count - 1;
                }
                this.View.GoToLine(documentLineIndex);
                this.View.Selection.Collapse();
            }
            base.Execute();
        }
Esempio n. 2
0
        public override void Execute()
        {
            base.Execute();
            int            result         = this.TextView.TextSnapshot.GetLineNumberFromPosition(this.TextView.Caret.Position.Index) + 1;
            GoToLineDialog goToLineDialog = new GoToLineDialog();

            goToLineDialog.LineNumber = result.ToString((IFormatProvider)CultureInfo.InvariantCulture);
            bool?nullable = goToLineDialog.ShowDialog();

            if (!nullable.HasValue || !nullable.Value || (!int.TryParse(goToLineDialog.LineNumber, out result) || result <= 0))
            {
                return;
            }
            --result;
            if (result >= this.TextView.TextSnapshot.LineCount)
            {
                result = this.TextView.TextSnapshot.LineCount - 1;
            }
            this.CodeEditor.GotoLine(result);
            this.CodeEditor.ClearSelection();
            this.CodeEditor.Focus();
        }