コード例 #1
0
        protected void Cut()
        {
            var sel = sci.GetSelection();
            var sl  = sci.GetLineFromPosition(sel.Start);

            if (sl != sci.LineCount - 1 || sci.GetColumnFromPosition(sel.Start) > lastLen)
            {
                sci.Copy();
            }
            else
            {
                sci.Cut();
            }
        }
コード例 #2
0
        public void Run()
        {
            var src = sci.Text;

            if (sci.HasSelections())
            {
                src = src + "\r\n_=()\r\n" + sci.GetSelection().Text;
            }

            var asm = app.GetService <ICodeBuilderService>().
                      RunBuilder <CompiledAssembly>(src, app.Document(), BuildOptions.Output | BuildOptions.ErrorList);

            if (asm != null)
            {
                app.GetService <ICodeRunnerService>().
                RunCode(asm, ExecOptions.Annotation | ExecOptions.PrintResult | ExecOptions.Console | ExecOptions.ShowOutput);
            }
        }
コード例 #3
0
        private void WriteExecutionResult(ScintillaControl sci, ExecOptions options, object data)
        {
            if (options.Set(ExecOptions.PrintResult))
            {
                var outp = App.GetService <IOutputService>();
                outp.WriteLine(OutputFormat.Header, "Execution result:");
                outp.WriteLine((data ?? "[unit]").ToString());
            }

            if (options.Set(ExecOptions.TipResult) && sci != null)
            {
                sci.ShowCallTip(sci.GetSelection().CaretPosition, (data ?? "[unit]").ToString());
            }
        }