From 8e4b29c5a54d679099d8eb487c76062c4960c069 Mon Sep 17 00:00:00 2001 From: EverythingWindows Date: Sun, 6 Nov 2022 14:24:53 +0700 Subject: [PATCH] perfection to color function --- .../MainForms/SaveLoadSystem.vb | 10 +- ShiftOS-TheRevival/MainForms/Shiftoriums.vb | 120 +++++++--- ShiftOS-TheRevival/MainForms/Strings.vb | 32 ++- .../MainForms/Terminal.Designer.vb | 1 + ShiftOS-TheRevival/MainForms/Terminal.vb | 51 ++++- .../MainForms/TerminalColorSystem.vb | 209 ++++++++++++++++++ ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj | 1 + 7 files changed, 373 insertions(+), 51 deletions(-) create mode 100644 ShiftOS-TheRevival/MainForms/TerminalColorSystem.vb diff --git a/ShiftOS-TheRevival/MainForms/SaveLoadSystem.vb b/ShiftOS-TheRevival/MainForms/SaveLoadSystem.vb index 7fe5613..3a41005 100644 --- a/ShiftOS-TheRevival/MainForms/SaveLoadSystem.vb +++ b/ShiftOS-TheRevival/MainForms/SaveLoadSystem.vb @@ -16,11 +16,14 @@ Strings.AvailableFeature(10) = "2" Strings.AvailableFeature(11) = "0" Strings.AvailableFeature(12) = "2" + Strings.AvailableFeature(13) = "2" + Strings.AvailableFeature(14) = "2" + Strings.AvailableFeature(15) = "2" End Sub Public Sub FreeRoamMode() Strings.ComputerInfo(2) = "0" - Strings.ComputerInfo(4) = "12" + Strings.ComputerInfo(4) = "16" Strings.AvailableFeature(0) = "1" Strings.AvailableFeature(1) = "1" Strings.AvailableFeature(2) = "1" @@ -34,6 +37,9 @@ Strings.AvailableFeature(10) = "1" Strings.AvailableFeature(11) = "1" Strings.AvailableFeature(12) = "1" + Strings.AvailableFeature(13) = "1" + Strings.AvailableFeature(14) = "1" + Strings.AvailableFeature(15) = "1" End Sub Public Sub GodMode() @@ -52,5 +58,7 @@ Strings.AvailableFeature(10) = "2" Strings.AvailableFeature(11) = "0" Strings.AvailableFeature(12) = "2" + Strings.AvailableFeature(14) = "2" + Strings.AvailableFeature(15) = "2" End Sub End Module diff --git a/ShiftOS-TheRevival/MainForms/Shiftoriums.vb b/ShiftOS-TheRevival/MainForms/Shiftoriums.vb index 6ef2cc6..23552ee 100644 --- a/ShiftOS-TheRevival/MainForms/Shiftoriums.vb +++ b/ShiftOS-TheRevival/MainForms/Shiftoriums.vb @@ -7,24 +7,39 @@ Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(key | 5 CP) ShiftOS Key" Else If Strings.AvailableFeature(0) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(man | 20 CP) ShiftOS Help Manual" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(man | 10 CP) ShiftOS Help Manual" End If If Strings.AvailableFeature(1) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(clear | 25 CP) Clear Terminal Screen" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(clear | 20 CP) Clear Terminal Screen" Else If Strings.AvailableFeature(2) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(print | 30 CP) Print Terminal Screen" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(print | 25 CP) Print Terminal Screen" Else If Strings.AvailableFeature(3) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(termdspdrv | 50 CP) Terminal Display Driver" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(termdspdrv | 40 CP) Terminal Display Driver" Else If Strings.AvailableFeature(4) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(infobar | 55 CP) Terminal InfoBar" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(infobar | 50 CP) Terminal InfoBar" End If If Strings.AvailableFeature(8) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(shiftfetch | 75 CP) Shiftfetch" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(shiftfetch | 55 CP) Shiftfetch" + End If + If Strings.AvailableFeature(10) = "0" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(2bitcolor | 60 CP) 2-bit Color Support" + Else + If Strings.AvailableFeature(13) = "0" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(rgb | 70 CP) Red, Green, and Blue" + Else + If Strings.AvailableFeature(14) = "0" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(rgb2 | 75 CP) RGB Variant" + Else + If Strings.AvailableFeature(15) = "0" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(4bitcolor | 80 CP) 4-bit Color Support" + End If + End If + End If + End If End If - End If End If If Strings.AvailableFeature(5) = "0" Then Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(stime | 10 CP) Time by Seconds" @@ -33,19 +48,16 @@ Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(mtime | 20 CP) Time by Minutes" Else If Strings.AvailableFeature(7) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(htime | 40 CP) Time by Hours" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(htime | 30 CP) Time by Hours" Else If Strings.AvailableFeature(12) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(pmam | 60 CP) PM and AM" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(pmam | 40 CP) PM and AM" End If End If End If End If If Strings.AvailableFeature(9) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(bc | 10 CP) Basic Calculator" - End If - If Strings.AvailableFeature(10) = "0" Then - Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(2bitcolor | 100 CP) 2-bit Color Support" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "(bc | 55 CP) Basic Calculator" End If End If End If @@ -60,35 +72,35 @@ Case "man" If Strings.AvailableFeature(0) = "0" Then ManHeader(0) = "ShiftOS Help Manual (command: man)" - ManHeader(1) = "20 CP" + ManHeader(1) = "10 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows up any further help instruction on each command, its corresponding action and its example if necessary" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "clear" If Strings.AvailableFeature(1) = "0" Then ManHeader(0) = "Clear Terminal Screen (command: clear)" - ManHeader(1) = "25 CP" + ManHeader(1) = "20 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Clears the terminal screen" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "print" If Strings.AvailableFeature(2) = "0" Then ManHeader(0) = "Print Command (command: print)" - ManHeader(1) = "30 CP" + ManHeader(1) = "25 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Prints a corresponding text entered in the command" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "termdspdrv" If Strings.AvailableFeature(3) = "0" Then ManHeader(0) = "Terminal Display Driver" - ManHeader(1) = "50 CP" + ManHeader(1) = "40 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Display driver for ShiftOS' Terminal to utilize advantages such as Infobar, ASCII-based applications" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "infobar" If Strings.AvailableFeature(4) = "0" Then ManHeader(0) = "Terminal InfoBar" - ManHeader(1) = "55 CP" + ManHeader(1) = "50 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Panel bar at the bottom of the terminal to display basic informations" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If @@ -109,28 +121,28 @@ Case "htime" If Strings.AvailableFeature(7) = "0" Then ManHeader(0) = "Time by Hours" - ManHeader(1) = "40 CP" + ManHeader(1) = "30 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in hours form since midnight" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "shiftfetch" If Strings.AvailableFeature(8) = "0" Then ManHeader(0) = "Shiftfetch" - ManHeader(1) = "75 CP" + ManHeader(1) = "55 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "ShiftOS port of Neofetch, A command-line system information tool" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "bc" If Strings.AvailableFeature(9) = "0" Then ManHeader(0) = "Basic Calculator" - ManHeader(1) = "75 CP" + ManHeader(1) = "55 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Basic Calculator for simple calculation" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If Case "2bitcolor" If Strings.AvailableFeature(10) = "0" Then ManHeader(0) = "2-bit Color Support" - ManHeader(1) = "100 CP" + ManHeader(1) = "60 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds 2 colours (Dark Gray, Light Gray) supports to the terminal" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If @@ -144,10 +156,31 @@ Case "pmam" If Strings.AvailableFeature(12) = "0" Then ManHeader(0) = "PM and AM" - ManHeader(1) = "60 CP" + ManHeader(1) = "40 CP" Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in PM and AM format" & Environment.NewLine & Environment.NewLine & ManHeader(1) Terminal.BadCommand = False End If + Case "rgb" + If Strings.AvailableFeature(13) = "0" Then + ManHeader(0) = "Red, Green, and Blue" + ManHeader(1) = "70 CP" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds Red, Green, and Blue support to the Display Driver" & Environment.NewLine & Environment.NewLine & ManHeader(1) + Terminal.BadCommand = False + End If + Case "rgb2" + If Strings.AvailableFeature(14) = "0" Then + ManHeader(0) = "RGB Variant" + ManHeader(1) = "75 CP" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds lighter or darker variant of Red, Green, and Blue" & Environment.NewLine & Environment.NewLine & ManHeader(1) + Terminal.BadCommand = False + End If + Case "4bitcolor" + If Strings.AvailableFeature(15) = "0" Then + ManHeader(0) = "4-bit Color Display" + ManHeader(1) = "80 CP" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds to 16 colours support to the Display Driver" & Environment.NewLine & Environment.NewLine & ManHeader(1) + Terminal.BadCommand = False + End If Case Else Terminal.BadCommand = False Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "Shiftorium: Bad command or not available" @@ -158,16 +191,16 @@ Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "Installing feature..." Select Case prompt Case "man" - Shiftorium_InstallFeatures(True, "man", 0, 20) + Shiftorium_InstallFeatures(True, "man", 0, 10) Terminal.BadCommand = False Case "clear" - Shiftorium_InstallFeatures(True, "clear", 1, 25) + Shiftorium_InstallFeatures(True, "clear", 1, 20) Terminal.BadCommand = False Case "print" - Shiftorium_InstallFeatures(True, "print", 2, 30) + Shiftorium_InstallFeatures(True, "print", 2, 25) Terminal.BadCommand = False Case "termdspdrv" - Shiftorium_InstallFeatures(True, "termdspdrv", 3, 50) + Shiftorium_InstallFeatures(True, "termdspdrv", 3, 40) Terminal.BadCommand = False Case "infobar" Shiftorium_InstallFeatures(True, "infobar", 4, 50) @@ -179,22 +212,31 @@ Shiftorium_InstallFeatures(True, "mtime", 6, 20) Terminal.BadCommand = False Case "htime" - Shiftorium_InstallFeatures(True, "htime", 7, 40) + Shiftorium_InstallFeatures(True, "htime", 7, 30) Terminal.BadCommand = False Case "shiftfetch" - Shiftorium_InstallFeatures(True, "shiftfetch", 8, 75) + Shiftorium_InstallFeatures(True, "shiftfetch", 8, 55) Terminal.BadCommand = False Case "bc" - Shiftorium_InstallFeatures(True, "bc", 9, 75) + Shiftorium_InstallFeatures(True, "bc", 9, 55) Terminal.BadCommand = False Case "2bitcolor" - Shiftorium_InstallFeatures(True, "2bitcolor", 10, 100) + Shiftorium_InstallFeatures(True, "2bitcolor", 10, 60) Terminal.BadCommand = False Case "key" Shiftorium_InstallFeatures(True, "key", 11, 5) Terminal.BadCommand = False Case "pmam" - Shiftorium_InstallFeatures(True, "pmam", 12, 60) + Shiftorium_InstallFeatures(True, "pmam", 12, 40) + Terminal.BadCommand = False + Case "rgb" + Shiftorium_InstallFeatures(True, "rgb", 13, 70) + Terminal.BadCommand = False + Case "rgb2" + Shiftorium_InstallFeatures(True, "rgb2", 14, 75) + Terminal.BadCommand = False + Case "4bitcolor" + Shiftorium_InstallFeatures(True, "4bitcolor", 15, 80) Terminal.BadCommand = False Case Else Terminal.BadCommand = False @@ -253,6 +295,7 @@ success = True Case "2bitcolor" Strings.AvailableFeature(10) = "1" + Strings.AvailableFeature(13) = "0" success = True Case "key" Strings.AvailableFeature(11) = "1" @@ -262,7 +305,18 @@ Case "pmam" Strings.AvailableFeature(7) = "3" Strings.AvailableFeature(12) = "1" - 'Strings.AvailableFeature(13) = "0" + success = True + Case "rgb" + Strings.AvailableFeature(13) = "1" + Strings.AvailableFeature(14) = "0" + success = True + Case "rgb2" + Strings.AvailableFeature(14) = "1" + Strings.AvailableFeature(15) = "0" + success = True + Case "4bitcolor" + Strings.AvailableFeature(15) = "1" + success = True End Select If success = False Then If IsCLI = True Then diff --git a/ShiftOS-TheRevival/MainForms/Strings.vb b/ShiftOS-TheRevival/MainForms/Strings.vb index b742ece..1435a4a 100644 --- a/ShiftOS-TheRevival/MainForms/Strings.vb +++ b/ShiftOS-TheRevival/MainForms/Strings.vb @@ -2,8 +2,8 @@ Public Shared OSInfo() As String Public Shared ComputerInfo(4) As String Public Shared IsFree As Boolean - Public Shared OnceInfo(1) As String - Public Shared AvailableFeature(12) As String + Public Shared OnceInfo(2) As String + Public Shared AvailableFeature(15) As String Public Shared CLIInterpreter As String Public Shared SaveFile As String @@ -29,6 +29,8 @@ 'OnceInfo Strings: '0 = IsRoot? (0.1) (default : No) '1 = RootDirectory (0.2.3) (default : My.Computer.FileSystem.SpecialDirectories.Temp & "\ShiftOS\ShiftFS\") + '2 = Infobar Boolean (0.2.3) (default : True) + '3 = Color for Terminal (0.2.3) (default : 0F) ' 'ComputerInfo Strings: '0 = Computer Name (0.1) (default : shiftos) @@ -51,19 +53,25 @@ '10 = 2-bit Color Display [Adds Dark Gray and Light Gray support to the Display Driver] (0.2.3) (default : 0) '11 = ShiftOS Key [A key to unlock advanced features on ShiftOS] (0.2.3) (default : 0) '12 = Time by PM and AM [Showing time in hours form since midnight] (0.2.3) (default : 0) + '13 = Red, Green, Blue [Adds Red, Green, and Blue support to the Display Driver] (0.2.3) (default : 0) + '14 = RGB Variant [Adds lighter or darker variant of Red, Green, and Blue] (0.2.3) (default : 0) + '15 = 4-bit Color Display [Adds to 16 colours support to the Display Driver] (0.2.3) (default : 0) ' 'Features bought hierarchy : 'ShiftOS Key (KEY) (5 CP) - '>ShiftOS Help Manual (MAN) (20 CP) - '>Terminal Clear (CLEAR) (25 CP) - '>>Terminal Print (PRINT) (30 CP) - '>>>Terminal Display Driver (TERMDSPDRV) (50 CP) - '>>>>Terminal InfoBar (INFOBAR) (55 CP) - '>>>>Shiftfetch (SHIFTFETCH) (75 CP) - '>>>>2-bit Color Display (2BITCOLOR) (100 CP) - '>>Basic Calculator (BC) (75 CP) + '>ShiftOS Help Manual (MAN) (10 CP) + '>Terminal Clear (CLEAR) (20 CP) + '>>Terminal Print (PRINT) (25 CP) + '>>>Terminal Display Driver (TERMDSPDRV) (40 CP) + '>>>>Terminal InfoBar (INFOBAR) (50 CP) + '>>>>Shiftfetch (SHIFTFETCH) (55 CP) + '>>>>2-bit Color Display (2BITCOLOR) (60 CP) + '>>>>>Red, Green, Blue (rgb) (70 CP) + '>>>>>>RGB Variant (rgb2) (75 CP) + '>>>>>>>4-bit Color Display (4BITCOLOR) (80 CP) + '>>Basic Calculator (BC) (55 CP) '>>Time by Seconds (TIME, STIME) (10 CP) '>>>Time by Minutes (TIME, MTIME) (20 CP) - '>>>>Time by Hours (Time, HTIME) (40 CP) - '>>>>>PM and AM (Time, PMAM (60 CP)) + '>>>>Time by Hours (Time, HTIME) (30 CP) + '>>>>>PM and AM (Time, PMAM (40 CP)) End Class diff --git a/ShiftOS-TheRevival/MainForms/Terminal.Designer.vb b/ShiftOS-TheRevival/MainForms/Terminal.Designer.vb index 2c51995..1c9c2f3 100644 --- a/ShiftOS-TheRevival/MainForms/Terminal.Designer.vb +++ b/ShiftOS-TheRevival/MainForms/Terminal.Designer.vb @@ -71,6 +71,7 @@ Partial Class Terminal Me.ClientSize = New System.Drawing.Size(800, 450) Me.Controls.Add(Me.TextBox1) Me.Controls.Add(Me.InfoBar) + Me.ForeColor = System.Drawing.Color.White Me.Name = "Terminal" Me.Text = "Terminal" Me.ResumeLayout(False) diff --git a/ShiftOS-TheRevival/MainForms/Terminal.vb b/ShiftOS-TheRevival/MainForms/Terminal.vb index f838a54..199f68a 100644 --- a/ShiftOS-TheRevival/MainForms/Terminal.vb +++ b/ShiftOS-TheRevival/MainForms/Terminal.vb @@ -55,11 +55,17 @@ Public Class Terminal Public Sub CheckFeature() If Strings.AvailableFeature(4) = "1" Then - InfoBarTimer.Start() - TextBox1.Dock = DockStyle.None - InfoBar.Visible = True - InfoBar.SendToBack() - TextBox1.Dock = DockStyle.Fill + If Strings.OnceInfo(2) = "True" Then + InfoBarTimer.Start() + TextBox1.Dock = DockStyle.None + InfoBar.Visible = True + InfoBar.SendToBack() + TextBox1.Dock = DockStyle.Fill + Else + TextBox1.Dock = DockStyle.None + InfoBar.Visible = False + TextBox1.Dock = DockStyle.Fill + End If Else TextBox1.Dock = DockStyle.None InfoBar.Visible = False @@ -135,6 +141,10 @@ Public Class Terminal TextBox1.Text = TextBox1.Text & Environment.NewLine & Strings.ComputerInfo(2) & " Codepoint(s) available in your wallet" AdvancedCommand = False BadCommand = False + Case "colors" + DisplayColors() + AdvancedCommand = False + BadCommand = False Case "guess" ChangeInterpreter = True AppHost("guess") @@ -160,6 +170,8 @@ Public Class Terminal TextBox1.Text = TextBox1.Text & Environment.NewLine & "CLEAR Clear the terminal" End If TextBox1.Text = TextBox1.Text & Environment.NewLine & "CODEPOINT Display Codepoint(s) from your wallet" + TextBox1.Text = TextBox1.Text & Environment.NewLine & "COLOR Changes Terminal Text and Background color to the corresponding choice" + TextBox1.Text = TextBox1.Text & Environment.NewLine & "COLORS Shows available colors support for the terminal" TextBox1.Text = TextBox1.Text & Environment.NewLine & "GUESS Runs 'Guess the Number' application" TextBox1.Text = TextBox1.Text & Environment.NewLine & "HELP Shows all commands available and its corresponding action" If Strings.AvailableFeature(0) = 1 Then @@ -280,6 +292,35 @@ Public Class Terminal End Select If AdvancedCommand = True Then + If command Like "color *" Then + GetColor("terminal", command.Substring(6, 1), command.Substring(7, 1)) + BadCommand = False + End If + If command Like "infobar *" Then + If Strings.AvailableFeature(4) = "1" Then + 'Infobar panel-ish and some sort + Dim infobarcommand As String = command.Replace("infobar ", "") + Dim advancedtool As Boolean = True + Select Case infobarcommand + Case "on" + Strings.OnceInfo(2) = "True" + CheckFeature() + BadCommand = False + advancedtool = False + Case "off" + Strings.OnceInfo(2) = "False" + CheckFeature() + BadCommand = False + advancedtool = False + End Select + If advancedtool = True Then + If infobarcommand Like "color *" Then + GetColor("infobar", infobarcommand.Substring(6, 1), infobarcommand.Substring(7, 1)) + BadCommand = False + End If + End If + End If + End If If command Like "man *" Then If Strings.AvailableFeature(0) = "1" Then 'MAN command starts with this kinda format diff --git a/ShiftOS-TheRevival/MainForms/TerminalColorSystem.vb b/ShiftOS-TheRevival/MainForms/TerminalColorSystem.vb new file mode 100644 index 0000000..2dd8c85 --- /dev/null +++ b/ShiftOS-TheRevival/MainForms/TerminalColorSystem.vb @@ -0,0 +1,209 @@ +Module TerminalColorSystem + 'GUIDE to COLORS in TERMINAL + 'Using the same Hexadecimal numbering as what Command Prompt used to: + '0 = Black 8 = Gray + '1 = Blue 9 = Light Blue + '2 = Green A = Light Green + '3 = Aqua B = Light Aqua + '4 = Red C = Light Red + '5 = Purple D = Light Purple + '6 = Yellow E = Yellow + '7 = Dark Gray F = White + Public BgColor As Color + Public FgColor As Color + + Public Sub DisplayColors() + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "TERMINAL SUPPORTED COLORS" & Environment.NewLine & Environment.NewLine + If Strings.AvailableFeature(10) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "0 = Black 8 = Gray" + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "0 = Black 8 = ???" + End If + If Strings.AvailableFeature(14) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "1 = Blue 9 = Light Blue" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "2 = Green A = Light Green" + + Else + If Strings.AvailableFeature(13) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "1 = ??? 9 = Light Blue" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "2 = Green A = ???" + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "1 = ??? 9 = ???" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "2 = ??? A = ???" + End If + End If + If Strings.AvailableFeature(15) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "3 = Aqua B = Light Aqua" + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "3 = ??? B = ???" + End If + If Strings.AvailableFeature(14) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "4 = Red C = Light Red" + ElseIf Strings.AvailableFeature(13) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "4 = ??? C = Light Red" + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "4 = ??? C = ???" + End If + If Strings.AvailableFeature(15) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "5 = Purple D = Light Purple" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "6 = Yellow E = Yellow" + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "5 = ??? D = ???" + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "6 = ??? E = ???" + End If + If Strings.AvailableFeature(10) = "1" Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "7 = Dark Gray F = White" + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "7 = ??? F = White" + End If + End Sub + + Public Sub GetColor(App As String, Bg As String, Fg As String) + Select Case App + Case "terminal" + BgColor = Color.Black + FgColor = Color.White + Case "infobar" + BgColor = Color.White + FgColor = Color.Black + End Select + If Bg = Fg Then + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "Background and Foreground Color cannot be same!" + Else + If Strings.AvailableFeature(10) = "1" Then + Select Case Bg + Case "0" + BgColor = Color.Black + Case "7" + BgColor = Color.Silver + Case "8" + BgColor = Color.Gray + Case "f" + BgColor = Color.White + Case "2", "9", "c" + If Strings.AvailableFeature(13) = "1" Then + Select Case Bg + Case "2" + BgColor = Color.Green + Case "9" + BgColor = Color.Blue + Case "c" + BgColor = Color.Red + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "One or two colors you selected is not available." + End If + Case "1", "4", "a" + If Strings.AvailableFeature(14) = "1" Then + Select Case Bg + Case "1" + BgColor = Color.Navy + Case "4" + BgColor = Color.Maroon + Case "a" + BgColor = Color.Lime + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "One or two colors you selected is not available." + End If + Case "3", "5", "6", "b", "d", "e" + If Strings.AvailableFeature(15) = "1" Then + Select Case Bg + Case "3" + BgColor = Color.Cyan + Case "5" + BgColor = Color.Magenta + Case "6" + BgColor = Color.Brown + Case "b" + BgColor = Color.Aqua + Case "d" + BgColor = Color.Fuchsia + Case "e" + BgColor = Color.Yellow + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "One or two colors you selected is not available." + End If + Case Else + BgColor = Color.Black + End Select + Select Case Fg + Case "0" + FgColor = Color.Black + Case "7" + FgColor = Color.Silver + Case "8" + FgColor = Color.Gray + Case "f" + FgColor = Color.White + Case "2", "9", "c" + If Strings.AvailableFeature(13) = "1" Then + Select Case Fg + Case "2" + FgColor = Color.Green + Case "9" + FgColor = Color.Blue + Case "c" + FgColor = Color.Red + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "One or two colors you selected is not available." + End If + Case "1", "4", "a" + If Strings.AvailableFeature(14) = "1" Then + Select Case Fg + Case "1" + FgColor = Color.Navy + Case "4" + FgColor = Color.Maroon + Case "a" + FgColor = Color.Lime + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "One or two colors you selected is not available." + End If + Case "3", "5", "6", "b", "d", "e" + If Strings.AvailableFeature(15) = "1" Then + Select Case Fg + Case "3" + FgColor = Color.Cyan + Case "5" + FgColor = Color.Magenta + Case "6" + FgColor = Color.Brown + Case "b" + FgColor = Color.Aqua + Case "d" + FgColor = Color.Fuchsia + Case "e" + FgColor = Color.Yellow + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "One or two colors you selected is not available." + End If + Case Else + FgColor = Color.White + End Select + Else + Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "Color is not supported for 1-bit Color Display" + Select Case App + Case "terminal" + BgColor = Color.Black + FgColor = Color.White + Case "infobar" + BgColor = Color.White + FgColor = Color.Black + End Select + End If + End If + Select Case App + Case "infobar" + Terminal.InfoBar.BackColor = BgColor + Terminal.InfoBar.ForeColor = FgColor + Case "terminal" + Terminal.TextBox1.BackColor = BgColor + Terminal.TextBox1.ForeColor = FgColor + End Select + End Sub +End Module diff --git a/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj b/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj index 4ac3cf1..81b06a6 100644 --- a/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj +++ b/ShiftOS-TheRevival/ShiftOS-TheRevival.vbproj @@ -128,6 +128,7 @@ Form + True