Version 1.0.97:
Bugfixes HS:
Allgemeine Features:
Neue, allgemeine Formatier-Befehle %& und %|:
%&{Wert} - "ver-und'et" die voranstehende Integer-Zahl mit {Wert}. (Bit Maskierung)
%|{Wert} - "ver-oder't" die voranstehende Integer-Zahl mit {Wert}. (Bit Maskierung)
Die wird zB in dem Eventserver oder auch in den Mappings der Commandserver benötigt, um komplexe Protokolle bitweise zerlegen bzw maskieren zu können.
Die Formatier-Befehle lassen sich jetzt in allen .csv's zusätzlich zur Match-Bedingung angeben
verknüpft den erhaltenen Wert mit &15 und wird nur dann eine Aktion auslösen, wenn das daraus entstehende Resultat <8 ist.
Die Match-Bedingung ist nicht zwingend, d.h. ein
funktioniert auch.
Der Parser unterstützt jetzt das Einbetten von 1-Byte Hex-Werten in die Kommandosequenz:
<SYS><SETVOL=\0x0F></SYS> ist also gleichbedeutend mit <SYS><SETVOL=15></SYS>
Gleiches gilt für die Match-Bedingung:
...;<\0x08{%&\0x0F};... entspricht ...;<8{%&15};...
Version 1.0.98:
Bugfixes:
Änderungen:
PrefPane: Lizenz-Agreement Button jetzt rechts unterhalb des Banners
Neuerungen:
Buttonleisten - neue Definition in der CONFIG-Sektion:
SIZE;{Pixel}/AUTO - setzt die Buttonhöhe bzw. -breite auf {Pixel} bzw. 1/10 des Bildschirms (bei AUTO), default: AUTO
Neue TV - Kommandos:
GETFAV - liefert die aktuelle Favoritenliste
SETFAV={Name} - aktiviert die Favoritenliste {Name}
GETFAVLIST - liefert eine Liste aller Favoritenlisten
GETALLFAVCHS={Name} - liefert eine Liste aller Kanäle der Favoritenliste {Name}
Version 1.0.99:
Neue Features:
Buttonleisten:
neuer Schalter in der Buttonleisten-csv:
IMAGE;SCALE/CENTER/TOP/BOTTOM/LEFT/RIGHT
legt die Position des Button-Bildes fest. SCALE skaliert auf Buttongröße (default)
Neue SYS-Befehle:
DISABLEBUTTON={Leiste},{Index} - schaltet einen Button ab, dieser ist dann nicht mehr klickbar und wird ausgegraut
ENABLEBUTTON={Leiste},{Index} - reaktiviert einen Button, der zuvor abgeschaltet wurde
Die automatische Bild-Skalierung kann nun abgeschaltet werden und Bilder in ihrer echten Größe unverändert dargestellt werden.
Ab sofort sind Texte und Bilder in einem Button gleichzeitig möglich (bisher nur beim SWITCH-Buttontyp)
Bugfix HOLD-Button: Die Zuordnung langer/kurzer Klick war nicht immer eindeutig.
GUI allgemein:
Neue SYS-Befehle:
Wichtig: die obigen Befehle funktionieren nur dann, wenn die mmh-GUI die vorderste Applikation ist. Zwar wird bei jedem Maus-Kommando die mmh-GUI unsichtbar in den Vordergrund geholt, aber es ist theoretisch möglich, daß durch andere FRONT-Befehle bzw. einen Mausklick des Users eine andere Applikation in den Vordergrund geholt wird. Geschieht dies, funktioniert die Maus wieder wie gewohnt. Wird dann jedoch (z.B. durch den Aufruf einer Buttonleiste) irgendwann die GUI wieder in den Vordergrund geholt, stellt sich der konfigurierte Maus-Zustand wieder ein.
Um zu verhindern, daß die GUI den Focus durch Mausaktionen verliert, stellt man entweder ein WINDOW bildschirmfüllend dar oder blockiert den Mauszeiger über einem GUI-Element (WINDOW bzw. Buttonleiste).
PefPane:
Bugfix: "hartes" Ausblenden der PrefPane bei Rückkehr zu den System-Einstellungen behoben
Änderung Log-Fenster: das Logfenster überlappt jetzt nicht mehr die Fenstergrenzen des PrefPanes. Dafür gibt es unten links jetzt einen Button Expand/Collapse, der das Logfenster auf Wunsch vergrößert bzw. wieder verkleinert.
Allgemeine Bugfixes:
Snow Leopard (10.6): Der System-Sleep bei aktiviertem mmh geht jetzt genauso schnell wie unter Leopard.
SYS-ENKEY funktioniert wieder.
Allgemeine Änderungen:
Das automatische Konvertieren von HEX-Werten in der Kommandosequenz wurde entfernt (Kollidierte mit Buttonlabels, die Steuerzeichen benötigen), stattdessen gibt es neue Formatier-Optionen:
{%dec}
wandelt einen Hex-Wert in den entsprechende Dezimalzahl um,
Beispiel:
{%ascii}
wandelt eine Hex-Sequenz in ASCII-Zeichen um,
Beispiel:
{%hex{Stellen}}
wandelt eine Dezimalzahl oder eine ASCII-Sequenz in eine HEX-Zahl mit {Stellen} (nur bei Dezimalzahlen) um. {Stellen} ist optional.
Beispiele:
(mmh erkennt, daß das Argument nicht nur aus Ziffern besteht und wandelt daher alles in Zeichencodes um, in diesem Modus wird immer der komplette String umgewandelt, {Stellen} hat hier keinen Einfluß)
Rechenoperationen:
{%-{Wert}} - subtrahiert {Wert} vom Argument
{%+{Wert}} - addiert{Wert} zum Argument
{%/{Wert}} - dividiert das Argument durch {Wert} - ist {Wert} = 0 erfolgt keine Berechnung
{%*{Wert}} - multipliziert das Argument mit {Wert}
Die Zahl der Nachkommastellen des Resultats hängt von der Zahl der Nachkommastellen von {Wert} ab. Die Interne Berechnung erfolgt immer als Fliesskommazahl.
Sämtliche Formatieroptionen lassen sich jetzt in einer {} zusammenfassen. Die Ausführung erfolgt von links nach rechts:
Umfassendes Beispiel:
0A wird in eine Dezimalzahl umgewandelt: 10
10 + 30 = 40
40 * 2 = 80
80 / 4 = 20
20 - 3 = 17
Aber das ist nur etwas für Fortgeschrittene.. :-) und Thema in der Experts Schulung....
... schönes WE
PS: aktuelle Command Liste für den Script Client habe ich noch nicht und kommt mit dem aktuellen Scriptclient in den nächsten Tagen.
Bugfixes HS:
- Engine startet auch bei fehlender DATAPOINT-Definiton
- Logausgabe in korrektem Adressformat
- Absturz bei aktivierter Debug-Ausgabe behoben
Allgemeine Features:
Neue, allgemeine Formatier-Befehle %& und %|:
%&{Wert} - "ver-und'et" die voranstehende Integer-Zahl mit {Wert}. (Bit Maskierung)
Beispiel: 100{%&15} -> 4
%|{Wert} - "ver-oder't" die voranstehende Integer-Zahl mit {Wert}. (Bit Maskierung)
Beispiel: 100{%|15} -> 111
Die wird zB in dem Eventserver oder auch in den Mappings der Commandserver benötigt, um komplexe Protokolle bitweise zerlegen bzw maskieren zu können.
Die Formatier-Befehle lassen sich jetzt in allen .csv's zusätzlich zur Match-Bedingung angeben
...;<8{%&15};...
verknüpft den erhaltenen Wert mit &15 und wird nur dann eine Aktion auslösen, wenn das daraus entstehende Resultat <8 ist.
Die Match-Bedingung ist nicht zwingend, d.h. ein
...;{%&15};...
funktioniert auch.
Der Parser unterstützt jetzt das Einbetten von 1-Byte Hex-Werten in die Kommandosequenz:
<SYS><SETVOL=\0x0F></SYS> ist also gleichbedeutend mit <SYS><SETVOL=15></SYS>
Gleiches gilt für die Match-Bedingung:
...;<\0x08{%&\0x0F};... entspricht ...;<8{%&15};...
Version 1.0.98:
Bugfixes:
- - intern: Speicher-Handling des Parsers geändert (möglicher Fix für Thread-Überlauf)
- - der additional send port hat bisher auf den Quell-Port des Clients +1 zurückgesendet, jetzt korrekt auf den in der PrefPane angezeigten Port.
- - Button-Ansteuerung bei fehlender Actionsequenz in der Button .csv gefixt
Änderungen:
PrefPane: Lizenz-Agreement Button jetzt rechts unterhalb des Banners
Neuerungen:
Buttonleisten - neue Definition in der CONFIG-Sektion:
SIZE;{Pixel}/AUTO - setzt die Buttonhöhe bzw. -breite auf {Pixel} bzw. 1/10 des Bildschirms (bei AUTO), default: AUTO
Neue TV - Kommandos:
GETFAV - liefert die aktuelle Favoritenliste
SETFAV={Name} - aktiviert die Favoritenliste {Name}
GETFAVLIST - liefert eine Liste aller Favoritenlisten
GETALLFAVCHS={Name} - liefert eine Liste aller Kanäle der Favoritenliste {Name}
Version 1.0.99:
Neue Features:
Buttonleisten:
neuer Schalter in der Buttonleisten-csv:
IMAGE;SCALE/CENTER/TOP/BOTTOM/LEFT/RIGHT
legt die Position des Button-Bildes fest. SCALE skaliert auf Buttongröße (default)
Neue SYS-Befehle:
DISABLEBUTTON={Leiste},{Index} - schaltet einen Button ab, dieser ist dann nicht mehr klickbar und wird ausgegraut
ENABLEBUTTON={Leiste},{Index} - reaktiviert einen Button, der zuvor abgeschaltet wurde
Die automatische Bild-Skalierung kann nun abgeschaltet werden und Bilder in ihrer echten Größe unverändert dargestellt werden.
Ab sofort sind Texte und Bilder in einem Button gleichzeitig möglich (bisher nur beim SWITCH-Buttontyp)
Bugfix HOLD-Button: Die Zuordnung langer/kurzer Klick war nicht immer eindeutig.
GUI allgemein:
Neue SYS-Befehle:
- HIDEMOUSE - versteckt den Mauszeiger - Mausklicks und -bewegungen funktionieren trotzdem
- SHOWMOUSE - zeigt den Mauszeiger wieder
- LOCKMOUSE - lähmt den Mauszeiger - Mausklicks funktionieren trotzdem
- UNLOCKMOUSE - gibt den Mauszeiger wieder frei
Wichtig: die obigen Befehle funktionieren nur dann, wenn die mmh-GUI die vorderste Applikation ist. Zwar wird bei jedem Maus-Kommando die mmh-GUI unsichtbar in den Vordergrund geholt, aber es ist theoretisch möglich, daß durch andere FRONT-Befehle bzw. einen Mausklick des Users eine andere Applikation in den Vordergrund geholt wird. Geschieht dies, funktioniert die Maus wieder wie gewohnt. Wird dann jedoch (z.B. durch den Aufruf einer Buttonleiste) irgendwann die GUI wieder in den Vordergrund geholt, stellt sich der konfigurierte Maus-Zustand wieder ein.
Um zu verhindern, daß die GUI den Focus durch Mausaktionen verliert, stellt man entweder ein WINDOW bildschirmfüllend dar oder blockiert den Mauszeiger über einem GUI-Element (WINDOW bzw. Buttonleiste).
PefPane:
Bugfix: "hartes" Ausblenden der PrefPane bei Rückkehr zu den System-Einstellungen behoben
Änderung Log-Fenster: das Logfenster überlappt jetzt nicht mehr die Fenstergrenzen des PrefPanes. Dafür gibt es unten links jetzt einen Button Expand/Collapse, der das Logfenster auf Wunsch vergrößert bzw. wieder verkleinert.
Allgemeine Bugfixes:
Snow Leopard (10.6): Der System-Sleep bei aktiviertem mmh geht jetzt genauso schnell wie unter Leopard.
SYS-ENKEY funktioniert wieder.
Allgemeine Änderungen:
Das automatische Konvertieren von HEX-Werten in der Kommandosequenz wurde entfernt (Kollidierte mit Buttonlabels, die Steuerzeichen benötigen), stattdessen gibt es neue Formatier-Optionen:
{%dec}
wandelt einen Hex-Wert in den entsprechende Dezimalzahl um,
Beispiel:
<SYS><SETVOL=2F{%dec}></SYS> wird zu <SYS><SETVOL=47></SYS>
{%ascii}
wandelt eine Hex-Sequenz in ASCII-Zeichen um,
Beispiel:
<SYS><SAY=414243{%ascii}></SYS> wird zu <SYS><SAY=ABC></SYS>
{%hex{Stellen}}
wandelt eine Dezimalzahl oder eine ASCII-Sequenz in eine HEX-Zahl mit {Stellen} (nur bei Dezimalzahlen) um. {Stellen} ist optional.
Beispiele:
<SYS><SAY=15{%hex}></SYS> wird zu <SYS><SAY=F></SYS>
<SYS><SAY=15{%hex4}></SYS> wird zu <SYS><SAY=000F></SYS>
<SYS><SAY=A1BC{%hex}></SYS> wird zu <SYS><SAY=41314243></SYS>
<SYS><SAY=15{%hex4}></SYS> wird zu <SYS><SAY=000F></SYS>
<SYS><SAY=A1BC{%hex}></SYS> wird zu <SYS><SAY=41314243></SYS>
(mmh erkennt, daß das Argument nicht nur aus Ziffern besteht und wandelt daher alles in Zeichencodes um, in diesem Modus wird immer der komplette String umgewandelt, {Stellen} hat hier keinen Einfluß)
Rechenoperationen:
{%-{Wert}} - subtrahiert {Wert} vom Argument
{%+{Wert}} - addiert{Wert} zum Argument
{%/{Wert}} - dividiert das Argument durch {Wert} - ist {Wert} = 0 erfolgt keine Berechnung
{%*{Wert}} - multipliziert das Argument mit {Wert}
Die Zahl der Nachkommastellen des Resultats hängt von der Zahl der Nachkommastellen von {Wert} ab. Die Interne Berechnung erfolgt immer als Fliesskommazahl.
Sämtliche Formatieroptionen lassen sich jetzt in einer {} zusammenfassen. Die Ausführung erfolgt von links nach rechts:
Umfassendes Beispiel:
<SYS><SETVOL=0A{%dec,%+30,%*2,%/4,%-3}></SYS> wird zu <SYS><SETVOL=17></SYS>
0A wird in eine Dezimalzahl umgewandelt: 10
10 + 30 = 40
40 * 2 = 80
80 / 4 = 20
20 - 3 = 17
Aber das ist nur etwas für Fortgeschrittene.. :-) und Thema in der Experts Schulung....
... schönes WE
PS: aktuelle Command Liste für den Script Client habe ich noch nicht und kommt mit dem aktuellen Scriptclient in den nächsten Tagen.