So, hab mal etwas rumprobiert und eine Lösung mit Button und Script gefunden.
Zunächst brauchst du den aktuellen Snapshot (Build 817).
Dann legst du dir ein Bildschirmobjekt vom Typ statischer Text an - das wird der Button -, und stellst Font usw. Außerdem ist es wichtig, dem Button auf der Seite “Erweitert” eine Fernsteuerungs-ID zu verpassen, zum Beispiel “AUTOMATIONBUTTON”.
ein und speicherst die Konfiguration.
Sodann öffnest du die screenobjects.ini im Texteditor, suchst den Abschnitt des neuen statischen Texts, und fügst dort folgende Zeile ein:
ClickCommand=AUTOMATION 1 ON/OFF
Damit wird der Text zu einem Button, und wenn du ihn anklickst, wird der angegebene Befehl ausgeführt, also die Automation ein- bzw. ausgeschaltet.
Nun geht es noch darum, den aktuellen Automation-Status in dem Textobjekt darzustellen. Dafür sorgt das folgende Notification Script:
procedure UpdateButton;
begin
if PlaybackControl(0).GetAutomation then begin
ExecuteCommand('AUTOMATIONBUTTON TEXT AUTO');
ExecuteCommand('AUTOMATIONBUTTON BACKGROUNDCOLOR #FF0000');
if trunc(now * 24 * 60 * 60 * 2) mod 2 = 0 then
ExecuteCommand('AUTOMATIONBUTTON BACKGROUNDCOLOR #FFFF00')
else
ExecuteCommand('AUTOMATIONBUTTON BACKGROUNDCOLOR #FF0000');
end
else begin
ExecuteCommand('AUTOMATIONBUTTON TEXT ASSIST');
ExecuteCommand('AUTOMATIONBUTTON BACKGROUNDCOLOR #00FF40');
end;
end;
procedure OnLoad;
begin
UpdateButton;
EnableTimer(500);
end;
procedure OnAutomationOn(PlaylistIndex: integer);
begin
UpdateButton;
end;
procedure OnAutomationOff(PlaylistIndex: integer);
begin
UpdateButton;
end;
procedure OnTimer;
begin
UpdateButton;
end;
begin
end.
Herzstück ist die Prozedur UpdateButton, die dem Textobjekt je nach Zustand der Automation verschiedene Befehle schickt (über seine Fernsteuerungs-ID), die seine Hintergrundfarbe und seinen Text verändern. Die UpdateButton-Prozedur wird zu verschiedenen Gelegenheiten aufgerufen:
- Wenn das Script geladen wird (OnLoad)
- Wenn sich der Zustand der Automation ändert (OnAutomationOn, OnAutomationOff)
- Alle 500ms per Timer, um das Blinken zu realisieren
Fertig