The library can now be used for Windows exclusive bots (Made with WinForm or Wpf)

This commit is contained in:
2022-11-13 16:28:44 +02:00
parent 655f5e2ce0
commit 5bb13aa4a6
11 changed files with 202 additions and 127 deletions

View File

@@ -46,38 +46,38 @@ public static class Utilities
foreach (var row in data)
{
if (row[0][0] == tableLine)
Settings.Variables.outputStream.Write(tableCross);
Logger.Write(tableCross);
else
Settings.Variables.outputStream.Write(tableWall);
Logger.Write(tableWall);
for (var l = 0; l < row.Length; l++)
{
if (row[l][0] == tableLine)
{
for (var i = 0; i < len[l] + 4; ++i)
Settings.Variables.outputStream.Write(tableLine);
Logger.Write(tableLine);
}
else if (row[l].Length == len[l])
{
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write(row[l]);
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
Logger.Write(row[l]);
Logger.Write(" ");
}
else
{
var lenHalf = row[l].Length / 2;
for (var i = 0; i < (len[l] + 4) / 2 - lenHalf; ++i)
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write(row[l]);
Logger.Write(" ");
Logger.Write(row[l]);
for (var i = (len[l] + 4) / 2 + lenHalf + 1; i < len[l] + 4; ++i)
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
if (row[l].Length % 2 == 0)
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
}
Settings.Variables.outputStream.Write(row[l][0] == tableLine ? tableCross : tableWall);
Logger.Write(row[l][0] == tableLine ? tableCross : tableWall);
}
Settings.Variables.outputStream.WriteLine(); //end line
Logger.WriteLine(); //end line
}
return;
@@ -95,44 +95,44 @@ public static class Utilities
foreach (var row in data)
{
Settings.Variables.outputStream.Write("\t");
Logger.Write("\t");
if (row[0] == "-")
Settings.Variables.outputStream.Write("+");
Logger.Write("+");
else
Settings.Variables.outputStream.Write("|");
Logger.Write("|");
foreach (var s in row)
{
if (s == "-")
{
for (var i = 0; i < maxLen + 4; ++i)
Settings.Variables.outputStream.Write("-");
Logger.Write("-");
}
else if (s.Length == maxLen)
{
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write(s);
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
Logger.Write(s);
Logger.Write(" ");
}
else
{
var lenHalf = s.Length / 2;
for (var i = 0; i < div - lenHalf; ++i)
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write(s);
Logger.Write(" ");
Logger.Write(s);
for (var i = div + lenHalf + 1; i < maxLen + 4; ++i)
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
if (s.Length % 2 == 0)
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
}
if (s == "-")
Settings.Variables.outputStream.Write("+");
Logger.Write("+");
else
Settings.Variables.outputStream.Write("|");
Logger.Write("|");
}
Settings.Variables.outputStream.WriteLine(); //end line
Logger.WriteLine(); //end line
}
return;
@@ -153,12 +153,12 @@ public static class Utilities
{
if (data[i][j] == "-")
data[i][j] = " ";
Settings.Variables.outputStream.Write(data[i][j]);
Logger.Write(data[i][j]);
for (var k = 0; k < widths[j] - data[i][j].Length + 1 + space_between_columns; k++)
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
}
Settings.Variables.outputStream.WriteLine();
Logger.WriteLine();
}
return;
@@ -169,12 +169,15 @@ public static class Utilities
public static void WriteColorText(string text, bool appendNewLineAtEnd = true)
{
if (Console.Out != Settings.Variables.outputStream)
if (!Logger.isConsole)
{
Settings.Variables.outputStream.Write(text);
foreach (var item in Colors)
text = text.Replace($"{ColorPrefix}{item.Key}", "").Replace("&c", "");
Logger.Write(text);
if (appendNewLineAtEnd)
Settings.Variables.outputStream.WriteLine();
Logger.WriteLine();
return;
}
var initialForeGround = Console.ForegroundColor;
var input = text.ToCharArray();
@@ -197,12 +200,12 @@ public static class Utilities
}
else
{
Settings.Variables.outputStream.Write(input[i]);
Logger.Write(input[i]);
}
Console.ForegroundColor = initialForeGround;
if (appendNewLineAtEnd)
Settings.Variables.outputStream.WriteLine();
Logger.WriteLine();
}
@@ -219,7 +222,7 @@ public static class Utilities
public ProgressBar(ProgressBarType type)
{
if (Settings.Variables.outputStream != Console.Out)
if (!Logger.isConsole)
throw new Exception("This class (or function) can be used with console only. For UI please use another approach.");
this.type = type;
}
@@ -281,9 +284,9 @@ public static class Utilities
{
Console.CursorLeft = 0;
for (var i = 0; i < BarLength + message.Length + 1; i++)
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
Console.CursorLeft = 0;
Settings.Variables.outputStream.WriteLine(message);
Logger.WriteLine(message);
}
}
@@ -298,14 +301,14 @@ public static class Utilities
private void UpdateNoEnd(string message)
{
Console.CursorLeft = 0;
Settings.Variables.outputStream.Write("[");
Logger.Write("[");
for (var i = 1; i <= position; i++)
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write("<==()==>");
Logger.Write(" ");
Logger.Write("<==()==>");
position += positive ? 1 : -1;
for (var i = position; i <= BarLength - 1 - (positive ? 0 : 2); i++)
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write("] " + message);
Logger.Write(" ");
Logger.Write("] " + message);
if (position == BarLength - 1 || position == 1)
@@ -315,14 +318,14 @@ public static class Utilities
private void UpdateNoEnd()
{
Console.CursorLeft = 0;
Settings.Variables.outputStream.Write("[");
Logger.Write("[");
for (var i = 1; i <= position; i++)
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write("<==()==>");
Logger.Write(" ");
Logger.Write("<==()==>");
position += positive ? 1 : -1;
for (var i = position; i <= BarLength - 1 - (positive ? 0 : 2); i++)
Settings.Variables.outputStream.Write(" ");
Settings.Variables.outputStream.Write("]");
Logger.Write(" ");
Logger.Write("]");
if (position == BarLength - 1 || position == 1)
@@ -332,9 +335,9 @@ public static class Utilities
private void UpdateNormal(float progress)
{
Console.CursorLeft = 0;
Settings.Variables.outputStream.Write("[");
Logger.Write("[");
Console.CursorLeft = BarLength;
Settings.Variables.outputStream.Write("]");
Logger.Write("]");
Console.CursorLeft = 1;
var onechunk = 30.0f / Max;
@@ -344,22 +347,22 @@ public static class Utilities
{
Console.BackgroundColor = NoColor ? ConsoleColor.Black : Color;
Console.CursorLeft = position++;
Settings.Variables.outputStream.Write("#");
Logger.Write("#");
}
for (var i = position; i < BarLength; i++)
{
Console.BackgroundColor = NoColor ? ConsoleColor.Black : ConsoleColor.DarkGray;
Console.CursorLeft = position++;
Settings.Variables.outputStream.Write(" ");
Logger.Write(" ");
}
Console.CursorLeft = BarLength + 4;
Console.BackgroundColor = ConsoleColor.Black;
if (progress.CanAproximateTo(Max))
Settings.Variables.outputStream.Write(progress + " % ✓");
Logger.Write(progress + " % ✓");
else
Settings.Variables.outputStream.Write(MathF.Round(progress, 2) + " % ");
Logger.Write(MathF.Round(progress, 2) + " % ");
}
}
}

View File

@@ -192,7 +192,7 @@ public static class Functions
}
catch (Exception ex)
{
Settings.Variables.outputStream.WriteLine($"Failed to extract {entry.Name}. Exception: {ex.Message}");
Logger.WriteLine($"Failed to extract {entry.Name}. Exception: {ex.Message}");
}
currentZIPFile++;
@@ -224,7 +224,7 @@ public static class Functions
}
catch (Exception ex)
{
Settings.Variables.outputStream.WriteLine($"Failed to extract {entry.Name}. Exception: {ex.Message}");
Logger.WriteLine($"Failed to extract {entry.Name}. Exception: {ex.Message}");
}
await Task.Delay(10);