kleiner-brauhelfer/kleiner-brauhelfer-2

Felder mit neu berechneten Werten hervorheben.

Closed this issue · 9 comments

Speziell im Braudaten-Tab ändern sich mit jeder Eingabe viele Felder. Mit den Augen kann man aber nicht überall gleichzeitig sein. Deswegen sollte es ersichtlich sein welche Felder sich geändert haben.

Konkret ließe sich das durch Fett machen der Felder realisieren. Nach Ablauf eines Timers fällt das Feld auf normale Schrift zurück.

Die Änderung würde ich selbst machen und bräuchte nur ein OK, das so eine Funktion erwünscht ist.

Ich denke, dass könnte schon interessant sein. Ich würde es eher farblich kennzeichen. Man müsste schauen, was besser wirkt.

Implementiere es am besten innerhalb der Klasse DoubleSpinBox und SpinBox.

Bin gespannt. Und ruhig fragen, wenn etwas im Code unklar ist.

Der Code hat Top-Qualität! Da sehe ich keinen Bedarf für Fragen. Die SpinBox-Klassen habe ich schon ins Auge gefasst.

Bis die Implementierung vorzeigbar wird, braucht es wohl noch mindestens einen Monat. (Hab in der Arbeit gerade viel zu tun.)

Kein Stress mit der Implementierung. Wie wäre es anstatt eines Timers, die Farben zurückzusetzen, wenn das Eingabefeld, wo die Änderung gemacht wurde, den Fokus verliert? So hat der User die Kontrolle und kann sich Zeit nehmen, die Änderungen nachzuvollziehen.

Womöglich muss man dann eine globale Liste der Eingabefelder führen, welche geändert wurden, um diese wieder zurücksetzen zu können.

Bist du schon etwas weitergekommen? Ich würde sonst einen Versuch starten.

Das war eine gute Idee! Es gefällt mir. Hier eine Demo:
demo
Die Farbe ist allerdingt der Malzfarbe noch zu ähnlich.

Erledigt mit fdd54e7.

Sieht sehr gut aus. Das ist die Deluxe-Version. Bei mir hatte ich nur einen Timer pro SpinBox vorgesehen.

Bei der Farbwahl kenne ich die Farbkodierung:

  • Rot = schlecht
  • Gelb = warnung
  • Grün = hier gehts weiter
  • Blau = Info
  • Weiß = nix besonderes
    Statt blau würde ich ein blasses Violett mit der selben Intensität wie die das gelb empfehlen.

Damit mein Timer in der SpinBox funktioniert gibt es einen coolen Trick. Den nehm ich immer, wenn auf mehrere Maschinen verteilte Steuerungen ihren Fehler und Status abgleichen. Der lässt sich von verschiedenen Stellen auslösen und auch wieder quittieren - ohne Race-Conditions.

int setCounter = 0;
int resetCounter = 0;

void update()
{
++setCounter;
}

void timerElapesed()
{
++resetCounter;
}

bool checkStatus()
{
return (resetCounter != setCounter)
}

Ich habe ein Blauton ausprobiert, aber mir wirkt es zu kalt.
Warnung ist im KBH orange, also passt es schon.