diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj b/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj index cac6cf9d9f..c03333264e 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj @@ -97,7 +97,6 @@ - @@ -167,8 +166,6 @@ - - Chiron.exe.Config Always diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsolePad.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsolePad.cs index 1693359c5c..a8d564f434 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsolePad.cs +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsolePad.cs @@ -14,14 +14,14 @@ namespace ICSharpCode.PythonBinding { public class PythonConsolePad : AbstractPadContent, IPythonConsolePad { - ThreadSafePythonConsoleTextEditor consoleTextEditor; + ThreadSafeScriptingConsoleTextEditor consoleTextEditor; AvalonEdit.TextEditor textEditor; PythonConsoleHost host; public PythonConsolePad() { textEditor = new AvalonEdit.TextEditor(); - consoleTextEditor = new ThreadSafePythonConsoleTextEditor(textEditor); + consoleTextEditor = new ThreadSafeScriptingConsoleTextEditor(textEditor); host = new PythonConsoleHost(consoleTextEditor); host.Run(); } diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsoleTextEditorKeyEventArgs.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsoleTextEditorKeyEventArgs.cs deleted file mode 100644 index 656dec92b9..0000000000 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsoleTextEditorKeyEventArgs.cs +++ /dev/null @@ -1,29 +0,0 @@ -// -// -// -// -// $Revision$ -// - -using System; -using System.Windows.Input; -using ICSharpCode.Scripting; - -namespace ICSharpCode.PythonBinding -{ - public class PythonConsoleTextEditorKeyEventArgs : ConsoleTextEditorKeyEventArgs - { - KeyEventArgs e; - - public PythonConsoleTextEditorKeyEventArgs(KeyEventArgs e) - : base(e.Key) - { - this.e = e; - } - - public override bool Handled { - get { return e.Handled; } - set { e.Handled = value; } - } - } -} diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ThreadSafePythonConsoleTextEditor.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ThreadSafePythonConsoleTextEditor.cs deleted file mode 100644 index 8595b14ccd..0000000000 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ThreadSafePythonConsoleTextEditor.cs +++ /dev/null @@ -1,118 +0,0 @@ -// -// -// -// -// $Revision$ -// - -using System; -using ICSharpCode.AvalonEdit; -using ICSharpCode.Scripting; - -namespace ICSharpCode.PythonBinding -{ - public class ThreadSafePythonConsoleTextEditor : IScriptingConsoleTextEditor - { - delegate string GetLineInvoker(int index); - - IScriptingConsoleTextEditor consoleTextEditor; - IControlDispatcher dispatcher; - - public ThreadSafePythonConsoleTextEditor(TextEditor textEditor) - : this(new PythonConsoleTextEditor(textEditor), new ControlDispatcher(textEditor)) - { - } - - public ThreadSafePythonConsoleTextEditor(IScriptingConsoleTextEditor consoleTextEditor, IControlDispatcher dispatcher) - { - this.consoleTextEditor = consoleTextEditor; - this.dispatcher = dispatcher; - } - - public event ConsoleTextEditorKeyEventHandler PreviewKeyDown { - add { consoleTextEditor.PreviewKeyDown += value; } - remove { consoleTextEditor.PreviewKeyDown -= value; } - } - - public void Dispose() - { - consoleTextEditor.Dispose(); - } - - public int Column { - get { return consoleTextEditor.Column; } - set { consoleTextEditor.Column = value; } - } - - public int SelectionLength { - get { return consoleTextEditor.SelectionLength; } - } - - public int SelectionStart { - get { return consoleTextEditor.SelectionStart; } - } - - public int Line { - get { return consoleTextEditor.Line; } - set { consoleTextEditor.Line = value; } - } - - public int TotalLines { - get { return consoleTextEditor.TotalLines; } - } - - public bool IsCompletionWindowDisplayed { - get { return consoleTextEditor.IsCompletionWindowDisplayed; } - } - - public void Write(string text) - { - if (dispatcher.CheckAccess()) { - consoleTextEditor.Write(text); - } else { - Action action = Write; - dispatcher.Invoke(action, text); - } - } - - public void Replace(int index, int length, string text) - { - if (dispatcher.CheckAccess()) { - consoleTextEditor.Replace(index, length, text); - } else { - Action action = Replace; - dispatcher.Invoke(action, index, length, text); - } - } - - public string GetLine(int index) - { - if (dispatcher.CheckAccess()) { - return consoleTextEditor.GetLine(index); - } else { - GetLineInvoker invoker = new GetLineInvoker(GetLine); - return (string)dispatcher.Invoke(invoker, index); - } - } - - public void ShowCompletionWindow(ScriptingConsoleCompletionDataProvider completionDataProvider) - { - if (dispatcher.CheckAccess()) { - consoleTextEditor.ShowCompletionWindow(completionDataProvider); - } else { - Action action = ShowCompletionWindow; - dispatcher.Invoke(action, completionDataProvider); - } - } - - public void MakeCurrentContentReadOnly() - { - if (dispatcher.CheckAccess()) { - consoleTextEditor.MakeCurrentContentReadOnly(); - } else { - Action action = MakeCurrentContentReadOnly; - dispatcher.Invoke(action); - } - } - } -} diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/BuiltinCodeCompletionTestFixture.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/BuiltinCodeCompletionTestFixture.cs index a146c9b3fd..1f2dbf2b57 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/BuiltinCodeCompletionTestFixture.cs +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/BuiltinCodeCompletionTestFixture.cs @@ -33,7 +33,7 @@ namespace PythonBinding.Tests.Console { TextEditor textEditorControl = new TextEditor(); textEditorControl.Text = ">>> __builtins__"; - PythonConsoleTextEditor textEditor = new PythonConsoleTextEditor(textEditorControl); + ScriptingConsoleTextEditor textEditor = new ScriptingConsoleTextEditor(textEditorControl); memberProvider = new MockMemberProvider(); memberProvider.SetMemberNames(new string[] {"a", "b", "c"}); diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleHostTests.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleHostTests.cs index dba3215fb1..021b9dcb71 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleHostTests.cs +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleHostTests.cs @@ -8,6 +8,7 @@ using System; using ICSharpCode.AvalonEdit; using ICSharpCode.PythonBinding; +using ICSharpCode.Scripting; using ICSharpCode.Scripting.Tests.Utils; using IronPython.Hosting; using IronPython.Runtime; @@ -27,13 +28,13 @@ namespace PythonBinding.Tests.Console { DerivedPythonConsoleHost host; TextEditor textEditorControl; - PythonConsoleTextEditor textEditor; + ScriptingConsoleTextEditor textEditor; [TestFixtureSetUp] public void Init() { textEditorControl = new TextEditor(); - textEditor = new PythonConsoleTextEditor(textEditorControl); + textEditor = new ScriptingConsoleTextEditor(textEditorControl); host = new DerivedPythonConsoleHost(textEditor); ScriptRuntime runtime = IronPython.Hosting.Python.CreateRuntime(); diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/PythonBinding.Tests.csproj b/src/AddIns/BackendBindings/Python/PythonBinding/Test/PythonBinding.Tests.csproj index 4145735221..186689c7dc 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/PythonBinding.Tests.csproj +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Test/PythonBinding.Tests.csproj @@ -104,7 +104,6 @@ - @@ -118,7 +117,6 @@ - diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/RubyBinding.csproj b/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/RubyBinding.csproj index 65ab918673..7d94344aa0 100644 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/RubyBinding.csproj +++ b/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/RubyBinding.csproj @@ -105,7 +105,6 @@ - @@ -134,9 +133,7 @@ - - diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsolePad.cs b/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsolePad.cs index 0b1bbba583..827faf9ef8 100644 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsolePad.cs +++ b/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsolePad.cs @@ -14,14 +14,14 @@ namespace ICSharpCode.RubyBinding { public class RubyConsolePad : AbstractPadContent, IRubyConsolePad { - ThreadSafeRubyConsoleTextEditor consoleTextEditor; + ThreadSafeScriptingConsoleTextEditor consoleTextEditor; AvalonEdit.TextEditor textEditor; RubyConsoleHost host; public RubyConsolePad() { textEditor = new AvalonEdit.TextEditor(); - consoleTextEditor = new ThreadSafeRubyConsoleTextEditor(textEditor); + consoleTextEditor = new ThreadSafeScriptingConsoleTextEditor(textEditor); host = new RubyConsoleHost(consoleTextEditor); host.Run(); } diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsoleTextEditor.cs b/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsoleTextEditor.cs deleted file mode 100644 index d0d62ec843..0000000000 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsoleTextEditor.cs +++ /dev/null @@ -1,157 +0,0 @@ -// -// -// -// -// $Revision$ -// - -using System; -using System.Drawing; -using System.Windows; -using System.Windows.Input; -using System.Windows.Threading; - -using ICSharpCode.AvalonEdit; -using ICSharpCode.AvalonEdit.CodeCompletion; -using ICSharpCode.AvalonEdit.Document; -using ICSharpCode.Scripting; -using ICSharpCode.SharpDevelop.Gui; - -namespace ICSharpCode.RubyBinding -{ - public class RubyConsoleTextEditor : IScriptingConsoleTextEditor - { - TextEditor textEditor; - Color customLineColour = Color.LightGray; - BeginReadOnlySectionProvider readOnlyRegion; - CompletionWindow completionWindow; - - public RubyConsoleTextEditor(TextEditor textEditor) - { - this.textEditor = textEditor; - readOnlyRegion = new BeginReadOnlySectionProvider(); - textEditor.TextArea.ReadOnlySectionProvider = readOnlyRegion; - textEditor.PreviewKeyDown += OnTextEditorPreviewKeyDown; - } - - void OnTextEditorPreviewKeyDown(object source, KeyEventArgs e) - { - if (PreviewKeyDown != null) { - PreviewKeyDown(this, new RubyConsoleTextEditorKeyEventArgs(e)); - } - } - - public event ConsoleTextEditorKeyEventHandler PreviewKeyDown; - - public void Dispose() - { - textEditor.PreviewKeyDown -= OnTextEditorPreviewKeyDown; - } - - public Color CustomLineColour { - get { return customLineColour; } - } - - public void Write(string text) - { - TextLocation location = GetCurrentCursorLocation(); - int offset = textEditor.Document.GetOffset(location); - textEditor.Document.Insert(offset, text); - } - - TextLocation GetCurrentCursorLocation() - { - return new TextLocation(Line + 1, Column + 1); - } - - public int Column { - get { return textEditor.TextArea.Caret.Column - 1; } - set { textEditor.TextArea.Caret.Column = value + 1; } - } - - public int SelectionStart { - get { return textEditor.SelectionStart; } - } - - public int SelectionLength { - get { return textEditor.SelectionLength; } - } - - public int Line { - get { return textEditor.TextArea.Caret.Line - 1; } - set { textEditor.TextArea.Caret.Line = value + 1; } - } - - /// - /// Gets the total number of lines in the text editor. - /// - public int TotalLines { - get { return textEditor.Document.LineCount; } - } - - /// - /// Gets the text for the specified line. - /// - public string GetLine(int index) - { - DocumentLine line = textEditor.Document.GetLineByNumber(index + 1); - return textEditor.Document.GetText(line); - } - - /// - /// Replaces the text at the specified index on the current line with the specified text. - /// - public void Replace(int index, int length, string text) - { - DocumentLine line = textEditor.Document.GetLineByNumber(textEditor.TextArea.Caret.Line); - int offset = line.Offset + index; - textEditor.Document.Replace(offset, length, text); - } - - /// - /// Makes the current text read only. Text can still be entered at the end. - /// - public void MakeCurrentContentReadOnly() - { - readOnlyRegion.EndOffset = textEditor.Document.TextLength; - } - - public void ShowCompletionWindow(ScriptingConsoleCompletionDataProvider completionDataProvider) - { - ICompletionData[] items = completionDataProvider.GenerateCompletionData(this); - if (items.Length > 0) { - ShowCompletionWindow(items); - } - } - - void ShowCompletionWindow(ICompletionData[] items) - { - completionWindow = new CompletionWindow(textEditor.TextArea); - completionWindow.Closed += CompletionWindowClosed; - foreach (ICompletionData item in items) { - completionWindow.CompletionList.CompletionData.Add(item); - } - completionWindow.ExpectInsertionBeforeStart = true; - completionWindow.Show(); - } - - void ShowCompletionWindow(CompletionWindow window) - { - if (completionWindow == window) { - window.Show(); - } - } - - public bool IsCompletionWindowDisplayed { - get { return completionWindow != null; } - } - - void CompletionWindowClosed(object source, EventArgs e) - { - if (completionWindow != null) { - completionWindow.Closed -= CompletionWindowClosed; - completionWindow = null; - } - } - } -} diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleHostTests.cs b/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleHostTests.cs index 516b51db9e..1d6a3fcd57 100644 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleHostTests.cs +++ b/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleHostTests.cs @@ -8,6 +8,7 @@ using System; using ICSharpCode.AvalonEdit; using ICSharpCode.RubyBinding; +using ICSharpCode.Scripting; using ICSharpCode.Scripting.Tests.Utils; using IronRuby.Hosting; using IronRuby.Runtime; @@ -27,13 +28,13 @@ namespace RubyBinding.Tests.Console { DerivedRubyConsoleHost host; TextEditor textEditorControl; - RubyConsoleTextEditor textEditor; + ScriptingConsoleTextEditor textEditor; [TestFixtureSetUp] public void Init() { textEditorControl = new TextEditor(); - textEditor = new RubyConsoleTextEditor(textEditorControl); + textEditor = new ScriptingConsoleTextEditor(textEditorControl); host = new DerivedRubyConsoleHost(textEditor); } diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleTextEditorTests.cs b/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleTextEditorTests.cs deleted file mode 100644 index 149660b922..0000000000 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/RubyConsoleTextEditorTests.cs +++ /dev/null @@ -1,147 +0,0 @@ -// -// -// -// -// $Revision$ -// - -using System; -using System.Collections.Generic; -using System.Threading; -using System.Windows.Input; - -using ICSharpCode.AvalonEdit; -using ICSharpCode.AvalonEdit.Editing; -using ICSharpCode.RubyBinding; -using ICSharpCode.Scripting; -using NUnit.Framework; -using RubyBinding.Tests.Utils; - -namespace RubyBinding.Tests.Console -{ - [TestFixture] - public class RubyConsoleTextEditorTests - { - RubyConsoleTextEditor consoleTextEditor; - TextEditor avalonEditTextEditor; - - [TestFixtureSetUp] - public void SetUpFixture() - { - avalonEditTextEditor = new TextEditor(); - consoleTextEditor = new RubyConsoleTextEditor(avalonEditTextEditor); - } - - [Test] - public void RubyConsoleTextEditorImplementsIScriptingConsoleTextEditorInterface() - { - Assert.IsNotNull(consoleTextEditor as IScriptingConsoleTextEditor); - } - - [Test] - public void MakeCurrentTextEditorContentReadOnlyExtendsReadOnlyRegionToEntireDocument() - { - avalonEditTextEditor.Text = String.Empty; - consoleTextEditor.Write("abc" + Environment.NewLine); - consoleTextEditor.MakeCurrentContentReadOnly(); - - IReadOnlySectionProvider readOnlySection = avalonEditTextEditor.TextArea.ReadOnlySectionProvider; - Assert.IsFalse(readOnlySection.CanInsert(2)); - } - - [Test] - public void WriteMethodUpdatesTextEditor() - { - avalonEditTextEditor.Text = String.Empty; - consoleTextEditor.Write("abc"); - Assert.AreEqual("abc", avalonEditTextEditor.Text); - } - - [Test] - public void ZeroBasedConsoleTextEditorColumnPositionIsOneLessThanAvalonTextEditorColumnPositionWhichIsOneBased() - { - avalonEditTextEditor.Text = "test"; - avalonEditTextEditor.TextArea.Caret.Column = 3; - - Assert.AreEqual(2, consoleTextEditor.Column); - } - - [Test] - public void SettingConsoleTextEditorColumnPositionUpdatesAvalonTextEditorColumnPosition() - { - avalonEditTextEditor.Text = "test"; - avalonEditTextEditor.TextArea.Caret.Column = 0; - - consoleTextEditor.Column = 1; - Assert.AreEqual(2, avalonEditTextEditor.TextArea.Caret.Column); - } - - [Test] - public void GetSelectionStartAndLengthWhenThreeCharactersSelected() - { - avalonEditTextEditor.Text = "te000xt"; - int startOffset = 2; - int endOffset = 5; - SimpleSelection expectedSelection = new SimpleSelection(startOffset, endOffset); - avalonEditTextEditor.SelectionStart = expectedSelection.StartOffset; - avalonEditTextEditor.SelectionLength = expectedSelection.Length; - - // Sanity check. - Assert.AreEqual("000", avalonEditTextEditor.SelectedText); - - AssertSelectionsAreEqual(expectedSelection, consoleTextEditor); - } - - void AssertSelectionsAreEqual(SimpleSelection expectedSelection, IScriptingConsoleTextEditor consoleTextEditor) - { - int selectionLength = consoleTextEditor.SelectionStart + consoleTextEditor.SelectionLength; - SimpleSelection actualSelection = new SimpleSelection(consoleTextEditor.SelectionStart, selectionLength); - Assert.AreEqual(expectedSelection, actualSelection); - } - - [Test] - public void GetSelectionStartAndLengthWhenNothingSelected() - { - avalonEditTextEditor.Text = "text"; - avalonEditTextEditor.TextArea.Caret.Column = 1; - avalonEditTextEditor.SelectionLength = 0; - - SimpleSelection expectedSelection = new SimpleSelection(1, 1); - AssertSelectionsAreEqual(expectedSelection, consoleTextEditor); - } - - [Test] - public void ConsoleTextEditorLineEqualsOneLessThanAvalonTextEditorCaretLine() - { - avalonEditTextEditor.Text = "abc\r\ndef"; - avalonEditTextEditor.TextArea.Caret.Line = 2; - Assert.AreEqual(1, consoleTextEditor.Line); - } - - [Test] - public void ConsoleTextEditorTotalLinesEqualsAvalonTextEditorTotalLines() - { - avalonEditTextEditor.Text = "abc\r\ndef\r\nghi"; - Assert.AreEqual(3, consoleTextEditor.TotalLines); - } - - [Test] - public void GetLineForZerothLineReturnsFirstLineInAvalonTextEditor() - { - avalonEditTextEditor.Text = "abc\r\ndef\r\nghi"; - Assert.AreEqual("abc", consoleTextEditor.GetLine(0)); - } - - [Test] - public void ReplaceTextReplacesTextInAvalonEditTextEditor() - { - avalonEditTextEditor.Text = "abc\r\ndef"; - avalonEditTextEditor.TextArea.Caret.Line = 2; - - int lineOffset = 1; - int length = 1; - consoleTextEditor.Replace(lineOffset, length, "test"); - Assert.AreEqual("abc\r\ndtestf", avalonEditTextEditor.Text); - } - } -} diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/ThreadSafeRubyConsoleTextEditorTests.cs b/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/ThreadSafeRubyConsoleTextEditorTests.cs deleted file mode 100644 index b95e821e7d..0000000000 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/Console/ThreadSafeRubyConsoleTextEditorTests.cs +++ /dev/null @@ -1,114 +0,0 @@ -// -// -// -// -// $Revision$ -// - -using System; -using System.Collections.Generic; -using System.Threading; -using System.Windows.Input; - -using ICSharpCode.AvalonEdit; -using ICSharpCode.AvalonEdit.Editing; -using ICSharpCode.RubyBinding; -using ICSharpCode.Scripting.Tests.Utils; -using ICSharpCode.Scripting.Tests.Utils.Tests; -using NUnit.Framework; -using RubyBinding.Tests.Utils; -using RubyBinding.Tests.Utils.Tests; - -namespace RubyBinding.Tests.Console -{ - [TestFixture] - public class ThreadSafeRubyConsoleTextEditorTests - { - ThreadSafeRubyConsoleTextEditor consoleTextEditor; - MockConsoleTextEditor textEditor; - MockControlDispatcher dispatcher; - - [TestFixtureSetUp] - public void SetUpFixture() - { - textEditor = new MockConsoleTextEditor(); - dispatcher = new MockControlDispatcher(); - consoleTextEditor = new ThreadSafeRubyConsoleTextEditor(textEditor, dispatcher); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseWriteMethodIsInvoked() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvoked = null; - - consoleTextEditor.Write("abc"); - Assert.IsNotNull(dispatcher.MethodInvoked); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseWriteMethodIsInvokedWithTextAsArg() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvokedArgs = null; - - consoleTextEditor.Write("abc"); - object[] expectedArgs = new object[] { "abc" }; - Assert.AreEqual(expectedArgs, dispatcher.MethodInvokedArgs); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseGetLineMethodIsInvoked() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvoked = null; - - consoleTextEditor.GetLine(0); - Assert.IsNotNull(dispatcher.MethodInvoked); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseGetLineMethodIsInvokedWithLineNumberAsArg() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvokedArgs = null; - - consoleTextEditor.GetLine(0); - object[] expectedArgs = new object[] { 0 }; - Assert.AreEqual(expectedArgs, dispatcher.MethodInvokedArgs); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseReplaceMethodIsInvoked() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvoked = null; - textEditor.Text = "abcd"; - - consoleTextEditor.Replace(0, 2, "12"); - Assert.IsNotNull(dispatcher.MethodInvoked); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseReplaceethodIsInvokedWithThreeArgs() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvokedArgs = null; - textEditor.Text = "abcd"; - - consoleTextEditor.Replace(0, 2, "12"); - object[] expectedArgs = new object[] { 0, 2, "12" }; - Assert.AreEqual(expectedArgs, dispatcher.MethodInvokedArgs); - } - - [Test] - public void IfDispatcherCheckAccessReturnsFalseMakeCurrentContentReadOnlyIsInvoked() - { - dispatcher.CheckAccessReturnValue = false; - dispatcher.MethodInvoked = null; - - consoleTextEditor.MakeCurrentContentReadOnly(); - Assert.IsNotNull(dispatcher.MethodInvoked); - } - } -} diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/RubyBinding.Tests.csproj b/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/RubyBinding.Tests.csproj index e262f69f07..1668769545 100644 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/RubyBinding.Tests.csproj +++ b/src/AddIns/BackendBindings/Ruby/RubyBinding/Test/RubyBinding.Tests.csproj @@ -84,11 +84,9 @@ - - diff --git a/src/AddIns/BackendBindings/Scripting/Project/ICSharpCode.Scripting.csproj b/src/AddIns/BackendBindings/Scripting/Project/ICSharpCode.Scripting.csproj index 283e43dcfa..9c2b833fa6 100644 --- a/src/AddIns/BackendBindings/Scripting/Project/ICSharpCode.Scripting.csproj +++ b/src/AddIns/BackendBindings/Scripting/Project/ICSharpCode.Scripting.csproj @@ -72,7 +72,10 @@ + + + diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsoleTextEditor.cs b/src/AddIns/BackendBindings/Scripting/Project/Src/ScriptingConsoleTextEditor.cs similarity index 93% rename from src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsoleTextEditor.cs rename to src/AddIns/BackendBindings/Scripting/Project/Src/ScriptingConsoleTextEditor.cs index 8babd17958..3c9ac2740a 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/PythonConsoleTextEditor.cs +++ b/src/AddIns/BackendBindings/Scripting/Project/Src/ScriptingConsoleTextEditor.cs @@ -13,19 +13,18 @@ using System.Windows.Threading; using ICSharpCode.AvalonEdit; using ICSharpCode.AvalonEdit.CodeCompletion; using ICSharpCode.AvalonEdit.Document; -using ICSharpCode.Scripting; using ICSharpCode.SharpDevelop.Gui; -namespace ICSharpCode.PythonBinding +namespace ICSharpCode.Scripting { - public class PythonConsoleTextEditor : IScriptingConsoleTextEditor + public class ScriptingConsoleTextEditor : IScriptingConsoleTextEditor { TextEditor textEditor; Color customLineColour = Color.LightGray; BeginReadOnlySectionProvider readOnlyRegion; CompletionWindow completionWindow; - public PythonConsoleTextEditor(TextEditor textEditor) + public ScriptingConsoleTextEditor(TextEditor textEditor) { this.textEditor = textEditor; readOnlyRegion = new BeginReadOnlySectionProvider(); @@ -36,7 +35,7 @@ namespace ICSharpCode.PythonBinding void OnTextEditorPreviewKeyDown(object source, KeyEventArgs e) { if (PreviewKeyDown != null) { - PreviewKeyDown(this, new PythonConsoleTextEditorKeyEventArgs(e)); + PreviewKeyDown(this, new ScriptingConsoleTextEditorKeyEventArgs(e)); } } diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsoleTextEditorKeyEventArgs.cs b/src/AddIns/BackendBindings/Scripting/Project/Src/ScriptingConsoleTextEditorKeyEventArgs.cs similarity index 68% rename from src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsoleTextEditorKeyEventArgs.cs rename to src/AddIns/BackendBindings/Scripting/Project/Src/ScriptingConsoleTextEditorKeyEventArgs.cs index 82da79d790..1a9ac3d4a4 100644 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/RubyConsoleTextEditorKeyEventArgs.cs +++ b/src/AddIns/BackendBindings/Scripting/Project/Src/ScriptingConsoleTextEditorKeyEventArgs.cs @@ -7,15 +7,14 @@ using System; using System.Windows.Input; -using ICSharpCode.Scripting; -namespace ICSharpCode.RubyBinding +namespace ICSharpCode.Scripting { - public class RubyConsoleTextEditorKeyEventArgs : ConsoleTextEditorKeyEventArgs + public class ScriptingConsoleTextEditorKeyEventArgs : ConsoleTextEditorKeyEventArgs { KeyEventArgs e; - public RubyConsoleTextEditorKeyEventArgs(KeyEventArgs e) + public ScriptingConsoleTextEditorKeyEventArgs(KeyEventArgs e) : base(e.Key) { this.e = e; diff --git a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/ThreadSafeRubyConsoleTextEditor.cs b/src/AddIns/BackendBindings/Scripting/Project/Src/ThreadSafeScriptingConsoleTextEditor.cs similarity index 86% rename from src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/ThreadSafeRubyConsoleTextEditor.cs rename to src/AddIns/BackendBindings/Scripting/Project/Src/ThreadSafeScriptingConsoleTextEditor.cs index 8a78c22351..5a1e2ed3d6 100644 --- a/src/AddIns/BackendBindings/Ruby/RubyBinding/Project/Src/ThreadSafeRubyConsoleTextEditor.cs +++ b/src/AddIns/BackendBindings/Scripting/Project/Src/ThreadSafeScriptingConsoleTextEditor.cs @@ -7,23 +7,22 @@ using System; using ICSharpCode.AvalonEdit; -using ICSharpCode.Scripting; -namespace ICSharpCode.RubyBinding +namespace ICSharpCode.Scripting { - public class ThreadSafeRubyConsoleTextEditor : IScriptingConsoleTextEditor + public class ThreadSafeScriptingConsoleTextEditor : IScriptingConsoleTextEditor { delegate string GetLineInvoker(int index); IScriptingConsoleTextEditor consoleTextEditor; IControlDispatcher dispatcher; - public ThreadSafeRubyConsoleTextEditor(TextEditor textEditor) - : this(new RubyConsoleTextEditor(textEditor), new ControlDispatcher(textEditor)) + public ThreadSafeScriptingConsoleTextEditor(TextEditor textEditor) + : this(new ScriptingConsoleTextEditor(textEditor), new ControlDispatcher(textEditor)) { } - public ThreadSafeRubyConsoleTextEditor(IScriptingConsoleTextEditor consoleTextEditor, IControlDispatcher dispatcher) + public ThreadSafeScriptingConsoleTextEditor(IScriptingConsoleTextEditor consoleTextEditor, IControlDispatcher dispatcher) { this.consoleTextEditor = consoleTextEditor; this.dispatcher = dispatcher; diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleTextEditorTests.cs b/src/AddIns/BackendBindings/Scripting/Test/Console/ScriptingConsoleTextEditorTests.cs similarity index 95% rename from src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleTextEditorTests.cs rename to src/AddIns/BackendBindings/Scripting/Test/Console/ScriptingConsoleTextEditorTests.cs index ca04e7adcc..90b134b64c 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/PythonConsoleTextEditorTests.cs +++ b/src/AddIns/BackendBindings/Scripting/Test/Console/ScriptingConsoleTextEditorTests.cs @@ -12,24 +12,23 @@ using System.Windows.Input; using ICSharpCode.AvalonEdit; using ICSharpCode.AvalonEdit.Editing; -using ICSharpCode.PythonBinding; using ICSharpCode.Scripting; +using ICSharpCode.Scripting.Tests.Utils; using NUnit.Framework; -using PythonBinding.Tests.Utils; -namespace PythonBinding.Tests.Console +namespace ICSharpCode.Scripting.Tests.Console { [TestFixture] - public class PythonConsoleTextEditorTests + public class ScriptingConsoleTextEditorTests { - PythonConsoleTextEditor consoleTextEditor; + ScriptingConsoleTextEditor consoleTextEditor; TextEditor avalonEditTextEditor; [TestFixtureSetUp] public void SetUpFixture() { avalonEditTextEditor = new TextEditor(); - consoleTextEditor = new PythonConsoleTextEditor(avalonEditTextEditor); + consoleTextEditor = new ScriptingConsoleTextEditor(avalonEditTextEditor); } [Test] diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/ThreadSafePythonConsoleTextEditorTests.cs b/src/AddIns/BackendBindings/Scripting/Test/Console/ThreadSafeScriptingConsoleTextEditorTests.cs similarity index 96% rename from src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/ThreadSafePythonConsoleTextEditorTests.cs rename to src/AddIns/BackendBindings/Scripting/Test/Console/ThreadSafeScriptingConsoleTextEditorTests.cs index 7b2d10173f..7f11415573 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Console/ThreadSafePythonConsoleTextEditorTests.cs +++ b/src/AddIns/BackendBindings/Scripting/Test/Console/ThreadSafeScriptingConsoleTextEditorTests.cs @@ -12,20 +12,16 @@ using System.Windows.Input; using ICSharpCode.AvalonEdit; using ICSharpCode.AvalonEdit.Editing; -using ICSharpCode.PythonBinding; using ICSharpCode.Scripting; using ICSharpCode.Scripting.Tests.Utils; -using ICSharpCode.Scripting.Tests.Utils.Tests; using NUnit.Framework; -using PythonBinding.Tests.Utils; -using PythonBinding.Tests.Utils.Tests; -namespace PythonBinding.Tests.Console +namespace ICSharpCode.Scripting.Tests.Console { [TestFixture] - public class ThreadSafePythonConsoleTextEditorTests + public class ThreadSafeScriptingConsoleTextEditorTests { - ThreadSafePythonConsoleTextEditor threadSafeConsoleTextEditor; + ThreadSafeScriptingConsoleTextEditor threadSafeConsoleTextEditor; TextEditor avalonEditTextEditor; MockControlDispatcher dispatcher; MockConsoleTextEditor fakeConsoleTextEditor; @@ -39,7 +35,7 @@ namespace PythonBinding.Tests.Console dispatcher.CheckAccessReturnValue = true; fakeConsoleTextEditor = new MockConsoleTextEditor(); - threadSafeConsoleTextEditor = new ThreadSafePythonConsoleTextEditor(fakeConsoleTextEditor, dispatcher); + threadSafeConsoleTextEditor = new ThreadSafeScriptingConsoleTextEditor(fakeConsoleTextEditor, dispatcher); } [Test] diff --git a/src/AddIns/BackendBindings/Scripting/Test/ICSharpCode.Scripting.Tests.csproj b/src/AddIns/BackendBindings/Scripting/Test/ICSharpCode.Scripting.Tests.csproj index 65ebfa3c7e..a6a9d2f9e0 100644 --- a/src/AddIns/BackendBindings/Scripting/Test/ICSharpCode.Scripting.Tests.csproj +++ b/src/AddIns/BackendBindings/Scripting/Test/ICSharpCode.Scripting.Tests.csproj @@ -72,6 +72,8 @@ + + diff --git a/src/AddIns/BackendBindings/Scripting/Test/Utils/MockControlDispatcher.cs b/src/AddIns/BackendBindings/Scripting/Test/Utils/MockControlDispatcher.cs index 23cefa19be..abb729849f 100644 --- a/src/AddIns/BackendBindings/Scripting/Test/Utils/MockControlDispatcher.cs +++ b/src/AddIns/BackendBindings/Scripting/Test/Utils/MockControlDispatcher.cs @@ -8,7 +8,7 @@ using System; using ICSharpCode.Scripting; -namespace ICSharpCode.Scripting.Tests.Utils.Tests +namespace ICSharpCode.Scripting.Tests.Utils { public class MockControlDispatcher : IControlDispatcher {