From b2f7322f3072ff90c8e6039ec4b3219d3c3fb919 Mon Sep 17 00:00:00 2001 From: Alex-TIMEHACK Date: Sun, 15 Oct 2017 20:25:37 +0100 Subject: It's broken. --- ShiftOS.Main/ShiftOS/Apps/Terminal.Designer.cs | 2 +- ShiftOS.Main/ShiftOS/Apps/Terminal.cs | 72 ++++++++++++++++---------- ShiftOS.Main/ShiftOS/Desktop.cs | 2 +- 3 files changed, 46 insertions(+), 30 deletions(-) (limited to 'ShiftOS.Main/ShiftOS') diff --git a/ShiftOS.Main/ShiftOS/Apps/Terminal.Designer.cs b/ShiftOS.Main/ShiftOS/Apps/Terminal.Designer.cs index e92cdb4..b514bbf 100644 --- a/ShiftOS.Main/ShiftOS/Apps/Terminal.Designer.cs +++ b/ShiftOS.Main/ShiftOS/Apps/Terminal.Designer.cs @@ -60,6 +60,6 @@ #endregion - private System.Windows.Forms.RichTextBox termmain; + public System.Windows.Forms.RichTextBox termmain; } } diff --git a/ShiftOS.Main/ShiftOS/Apps/Terminal.cs b/ShiftOS.Main/ShiftOS/Apps/Terminal.cs index a9bd093..1bd5c03 100644 --- a/ShiftOS.Main/ShiftOS/Apps/Terminal.cs +++ b/ShiftOS.Main/ShiftOS/Apps/Terminal.cs @@ -8,15 +8,19 @@ using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using ShiftOS.Engine; -using ShiftOS.Engine.Terminal; +using ShiftOS.Main.Terminal; namespace ShiftOS.Main.ShiftOS.Apps { public partial class Terminal : UserControl { + public int TerminalID = TerminalBackend.trmTopID++; // Used so that we can have multiple instances of the terminal whilst the command begin run knowing what terminal to send the text to - very complicated ;) public string defaulttextBefore = "user> "; public string defaulttextResult = "user@shiftos> "; // NOT YET IMPLEMENTED!!! - public bool doClear = false; + public bool DoClear = false; + public bool RunningCommand = false; + public bool WaitingResponse = false; + public string InputReturnText = ""; // The below variables makes the terminal... a terminal! public string OldText = ""; @@ -27,12 +31,8 @@ namespace ShiftOS.Main.ShiftOS.Apps InitializeComponent(); termmain.ContextMenuStrip = new ContextMenuStrip(); // Disables the right click of a richtextbox! - } - public void Print(string text) - { - termmain.AppendText($"\n {text} \n {defaulttextResult}"); - TrackingPosition = termmain.Text.Length; + TerminalBackend.trm.Add(this); // Makes the commands run! } private void termmain_KeyDown(object sender, KeyEventArgs e) @@ -45,51 +45,67 @@ namespace ShiftOS.Main.ShiftOS.Apps // termmain.Paste(DataFormats.GetFormat(DataFormats.Text)); e.Handled = true; } else if (e.KeyCode == Keys.Enter) { - Print(TerminalBackend.RunCommand(termmain.Text.Substring(TrackingPosition, termmain.Text.Length - TrackingPosition))); // The most horrific line in the entire application! + RunningCommand = true; + TerminalBackend.RunCommand(termmain.Text.Substring(TrackingPosition, termmain.Text.Length - TrackingPosition), TerminalID); // The most horrific line in the entire application! + RunningCommand = false; + termmain.AppendText($"\n {defaulttextResult}"); + TrackingPosition = termmain.Text.Length; e.Handled = true; } } private void termmain_TextChanged(object sender, EventArgs e) { - if (termmain.SelectionStart < TrackingPosition) + if (!RunningCommand) { - if (doClear == false) // If it's not clearing the terminal + if (termmain.SelectionStart < TrackingPosition) { - termmain.Text = OldText; - termmain.Select(termmain.Text.Length, 0); + if (!DoClear) // If it's not clearing the terminal + { + termmain.Text = OldText; + termmain.Select(termmain.Text.Length, 0); + } + } + else + { + OldText = termmain.Text; } - } - else - { - OldText = termmain.Text; } } private void termmain_SelectionChanged(object sender, EventArgs e) { - if (termmain.SelectionStart < TrackingPosition) + if (!RunningCommand) { - termmain.Text = OldText; - termmain.Select(termmain.Text.Length, 0); + if (termmain.SelectionStart < TrackingPosition) + { + termmain.Text = OldText; + termmain.Select(termmain.Text.Length, 0); + } } } private void Terminal_Load(object sender, EventArgs e) { - Print("\n"); + termmain.Text = $"\n {defaulttextResult}"; + TrackingPosition = termmain.Text.Length; } - public string RunCommand(string command) + public void Input(string request) { - string ToReturn = ""; + InputReturnText = ""; + RunningCommand = false; - if (command == "hi") - { - ToReturn = $"{ToReturn} \n Hi!"; - MessageBox.Show("HI!"); - } - return ToReturn; + termmain.AppendText($"\n {request} "); + TrackingPosition = termmain.Text.Length; + } + + public void Clear() + { + DoClear = true; + termmain.Text = $"\n {defaulttextResult}"; + TrackingPosition = termmain.Text.Length; + DoClear = false; } } } diff --git a/ShiftOS.Main/ShiftOS/Desktop.cs b/ShiftOS.Main/ShiftOS/Desktop.cs index 06f1fc8..3477788 100644 --- a/ShiftOS.Main/ShiftOS/Desktop.cs +++ b/ShiftOS.Main/ShiftOS/Desktop.cs @@ -61,7 +61,7 @@ namespace ShiftOS.Main.ShiftOS private void terminalToolStripMenuItem_Click(object sender, EventArgs e) { Apps.Terminal trm = new Apps.Terminal(); - + ShiftWM.Init(trm, "Terminal", null, false, true); } } -- cgit v1.2.3 From 179ec19e6b49dd6c0f5de5dc6f69128338a28e12 Mon Sep 17 00:00:00 2001 From: Alex-TIMEHACK Date: Sat, 18 Nov 2017 16:46:45 +0000 Subject: I don't know WHAT git did but I fixed it. --- .vs/ShiftOS/v15/sqlite3/storage.ide | Bin 1413120 -> 1622016 bytes ShiftOS.Engine/ShiftOS.Engine.csproj | 1 - ShiftOS.Main/ShiftOS.Main.csproj | 3 -- ShiftOS.Main/ShiftOS/Apps/Terminal.cs | 94 +++++++++++----------------------- ShiftOS.Main/ShiftOS/Desktop.cs | 7 --- 5 files changed, 29 insertions(+), 76 deletions(-) (limited to 'ShiftOS.Main/ShiftOS') diff --git a/.vs/ShiftOS/v15/sqlite3/storage.ide b/.vs/ShiftOS/v15/sqlite3/storage.ide index 4ff5119..1ddce4d 100644 Binary files a/.vs/ShiftOS/v15/sqlite3/storage.ide and b/.vs/ShiftOS/v15/sqlite3/storage.ide differ diff --git a/ShiftOS.Engine/ShiftOS.Engine.csproj b/ShiftOS.Engine/ShiftOS.Engine.csproj index 6b810fa..88ad0cf 100644 --- a/ShiftOS.Engine/ShiftOS.Engine.csproj +++ b/ShiftOS.Engine/ShiftOS.Engine.csproj @@ -63,7 +63,6 @@ True Resources.resx - diff --git a/ShiftOS.Main/ShiftOS.Main.csproj b/ShiftOS.Main/ShiftOS.Main.csproj index f7d8dc0..35d7761 100644 --- a/ShiftOS.Main/ShiftOS.Main.csproj +++ b/ShiftOS.Main/ShiftOS.Main.csproj @@ -102,9 +102,6 @@ - - HijackScreen.cs - ResXFileCodeGenerator Resources.Designer.cs diff --git a/ShiftOS.Main/ShiftOS/Apps/Terminal.cs b/ShiftOS.Main/ShiftOS/Apps/Terminal.cs index a5c5a11..5976cab 100644 --- a/ShiftOS.Main/ShiftOS/Apps/Terminal.cs +++ b/ShiftOS.Main/ShiftOS/Apps/Terminal.cs @@ -14,52 +14,48 @@ namespace ShiftOS.Main.ShiftOS.Apps public bool RunningCommand = false; public bool WaitingResponse = false; public string InputReturnText = ""; -using ShiftOS.Engine.Terminal; - -namespace ShiftOS.Main.ShiftOS.Apps -{ - public partial class Terminal : UserControl - { - public string DefaulttextBefore = "user> "; - string DefaulttextResult = "user@shiftos> "; // NOT YET IMPLEMENTED!!! - bool DoClear = false; // The below variables makes the terminal... a terminal! string OldText = ""; int TrackingPosition; - termmain.ContextMenuStrip = new ContextMenuStrip(); // Disables the right click of a richtextbox! - - TerminalBackend.trm.Add(this); // Makes the commands run! - } public Terminal() { InitializeComponent(); termmain.ContextMenuStrip = new ContextMenuStrip(); // Disables the right click of a richtextbox! - } - void Print(string text) + TerminalBackend.trm.Add(this); + } + + void Print() + { + termmain.AppendText($"\n {defaulttextResult}"); + TrackingPosition = termmain.Text.Length; + } + + void Print(string text) { - termmain.AppendText($"\n {text} \n {DefaulttextResult}"); + termmain.AppendText($"\n {text} \n {defaulttextResult}"); TrackingPosition = termmain.Text.Length; - } - if (e.Control && e.KeyCode == Keys.V) - { - //if (Clipboard.ContainsText()) - // termmain.Paste(DataFormats.GetFormat(DataFormats.Text)); - e.Handled = true; - } else if (e.KeyCode == Keys.Enter) { - RunningCommand = true; - TerminalBackend.RunCommand(termmain.Text.Substring(TrackingPosition, termmain.Text.Length - TrackingPosition), TerminalID); // The most horrific line in the entire application! - RunningCommand = false; - termmain.AppendText($"\n {defaulttextResult}"); - TrackingPosition = termmain.Text.Length; - e.Handled = true; - } } + //if (e.Control && e.KeyCode == Keys.V) + // { + // //if (Clipboard.ContainsText()) + // // termmain.Paste(DataFormats.GetFormat(DataFormats.Text)); + // e.Handled = true; + // } else if (e.KeyCode == Keys.Enter) { + // RunningCommand = true; + // TerminalBackend.RunCommand(termmain.Text.Substring(TrackingPosition, termmain.Text.Length - TrackingPosition), TerminalID); // The most horrific line in the entire application! + // RunningCommand = false; + // termmain.AppendText($"\n {defaulttextResult}"); + // TrackingPosition = termmain.Text.Length; + // e.Handled = true; + // } + //} + private void termmain_TextChanged(object sender, EventArgs e) { if (!RunningCommand) @@ -113,8 +109,7 @@ namespace ShiftOS.Main.ShiftOS.Apps TrackingPosition = termmain.Text.Length; DoClear = false; } - } -} + void termmain_KeyDown(object sender, KeyEventArgs e) { // The below code disables the ability to paste anything other then text... @@ -127,41 +122,10 @@ namespace ShiftOS.Main.ShiftOS.Apps } else if (e.KeyCode == Keys.Enter) { - Print( - TerminalBackend.RunCommand( - termmain.Text.Substring( - TrackingPosition, - termmain.Text.Length - TrackingPosition))); // The most horrific line in the entire application! + TerminalBackend.RunCommand(termmain.Text.Substring(TrackingPosition, termmain.Text.Length - TrackingPosition), TerminalID); // The most horrific line in the entire application! + Print(); e.Handled = true; } } - - void termmain_TextChanged(object sender, EventArgs e) - { - if (termmain.SelectionStart < TrackingPosition) - { - if (DoClear) return; - - termmain.Text = OldText; - termmain.Select(termmain.Text.Length, 0); - } - else - { - OldText = termmain.Text; - } - } - - void termmain_SelectionChanged(object sender, EventArgs e) - { - if (termmain.SelectionStart >= TrackingPosition) return; - - termmain.Text = OldText; - termmain.Select(termmain.Text.Length, 0); - } - - void Terminal_Load(object sender, EventArgs e) - { - Print("\n"); - } } } diff --git a/ShiftOS.Main/ShiftOS/Desktop.cs b/ShiftOS.Main/ShiftOS/Desktop.cs index 10eea41..4bf4805 100644 --- a/ShiftOS.Main/ShiftOS/Desktop.cs +++ b/ShiftOS.Main/ShiftOS/Desktop.cs @@ -60,13 +60,6 @@ namespace ShiftOS.Main.ShiftOS ShiftWM.Init(trm, "Terminal", null, false, true); } - } -} - void terminalToolStripMenuItem_Click(object sender, EventArgs e) - { - var trm = new Terminal(); - ShiftWM.Init(trm, "Terminal", null); - } void textPadToolStripMenuItem_Click(object sender, EventArgs e) { -- cgit v1.2.3 From c0400bc229d5f275955d6c964108deebf0908b4b Mon Sep 17 00:00:00 2001 From: Alex-TIMEHACK Date: Sat, 18 Nov 2017 16:48:19 +0000 Subject: Fixed tiny caret issue. --- ShiftOS.Main/ShiftOS/Apps/Terminal.cs | 1 + 1 file changed, 1 insertion(+) (limited to 'ShiftOS.Main/ShiftOS') diff --git a/ShiftOS.Main/ShiftOS/Apps/Terminal.cs b/ShiftOS.Main/ShiftOS/Apps/Terminal.cs index 5976cab..c65f705 100644 --- a/ShiftOS.Main/ShiftOS/Apps/Terminal.cs +++ b/ShiftOS.Main/ShiftOS/Apps/Terminal.cs @@ -91,6 +91,7 @@ namespace ShiftOS.Main.ShiftOS.Apps { termmain.Text = $"\n {defaulttextResult}"; TrackingPosition = termmain.Text.Length; + termmain.Select(termmain.TextLength, 1); } public void Input(string request) -- cgit v1.2.3