v.0.2.2 ColorSerial, usage

This commit is contained in:
tiijay
2025-11-09 14:13:01 +01:00
parent 9d29dcd542
commit b501f2d0d2
3 changed files with 82 additions and 13 deletions

View File

@@ -165,7 +165,7 @@ void ColorSerial::data(const char *label, int value, const char *unit)
data(label, buf, unit);
}
void ColorSerial::temperature(float temp, const char *label)
void ColorSerial::temperature(float temp, const char *temp_unit, const char *label)
{
const char *color;
if (temp < 0)
@@ -185,7 +185,7 @@ void ColorSerial::temperature(float temp, const char *label)
Serial.print(RESET);
Serial.print(color);
Serial.print(temp, 1);
Serial.print("°C");
Serial.print(temp_unit);
Serial.print(RESET);
Serial.println();
}
@@ -257,7 +257,7 @@ void ColorSerial::progressBar(int percent, const char *label, int width)
}
// Section Headers
void ColorSerial::header(const char *title, char decorator, int width)
void ColorSerial::header(const char *title, const char *decorator, int width)
{
int titleLen = strlen(title);
int padding = (width - titleLen - 2) / 2;
@@ -275,7 +275,7 @@ void ColorSerial::header(const char *title, char decorator, int width)
// Title line
Serial.print(MAGENTA);
Serial.print("");
Serial.print("|");
Serial.print(RESET);
for (int i = 0; i < padding; i++)
@@ -298,6 +298,62 @@ void ColorSerial::header(const char *title, char decorator, int width)
Serial.println();
}
void ColorSerial::boxHeader(const char *title, int width)
{
int titleLen = strlen(title);
int padding = (width - titleLen - 4) / 2; // -4 für die Box-Ränder
Serial.println();
// Top line
Serial.print(MAGENTA);
Serial.print("");
for (int i = 0; i < width - 2; i++)
{
Serial.print("");
}
Serial.print("");
Serial.print(RESET);
Serial.println();
// Title line
Serial.print(MAGENTA);
Serial.print("");
Serial.print(RESET);
for (int i = 0; i < padding; i++)
{
Serial.print(" ");
}
Serial.print(BOLD);
Serial.print(title);
Serial.print(RESET);
// Padding nach dem Titel
// for (int i = 0; i < (width - titleLen - padding - 4); i++)
for (int i = 0; i < (width - titleLen - padding - 2); i++)
{
Serial.print(" ");
}
Serial.print(MAGENTA);
Serial.print("");
Serial.print(RESET);
Serial.println();
// Bottom line
Serial.print(MAGENTA);
Serial.print("");
for (int i = 0; i < width - 2; i++)
{
Serial.print("");
}
Serial.print("");
Serial.print(RESET);
Serial.println();
}
void ColorSerial::subheader(const char *title)
{
Serial.print(CYAN);