Fernsteuer-ID toggle?

Durch einen Dialog mit @JP_Im_Radio (siehe Button "On-Air-Status"-Eigenschaften für umschaltbaren Button nutzen) bin ich auf eine Idee gekommen, die manch’ Fernsteuerung leichter machen könnte:

  • Frei definierte Fernsteuer-IDs umschaltbar machen, also ON/OFF.

Angenommen, ich möchte einen bestimmten Status (SHOWSTATUS) in der Statusanzeige per Fernsteuerung anzeigen lassen:

  • SHOWSTATUS ON
    … funktioniert ebenso wie …
  • SHOWSTATUS OFF

Nur SHOWSTATUS ON/OFF eben nicht.
- Ich bitte um Korrektur, wenn ich da falsch liegen sollte -

Voraussetzung: Beim Programmstart lege ich einmal den gewünschten Status fest. Dafür gibt es ja die Aktionen bei Programmstart in der Konfiguration.
Wenn ich da z.B. SHOWSTATUS OFF setze, kann ich danach doch zuverlässig togglen, oder?

Das geht mit jedem Befehl einfach zu bauen, habe ich auch schon mal beschrieben (hier). Man muß nur eine Variable mitlaufen lassen, die sich merkt, was gerade an ist. Oder aus.

var
  Status: boolean;

procedure OnLoad;
begin
  ExecuteCommand('SHOWSTATUS OFF');
  Status := false;  
end;

procedure OnExecuteCommand(Command: string);
begin
  if Command = 'SHOWSTATUS ON/OFF' then
    if Status then
      ExecuteCommand('SHOWSTATUS OFF')
    else
      ExecuteCommand('SHOWSTATUS ON');
end;

begin
end.

1 Like

Vergiß obiges Skript. Nimm das hier:

var
  Status: boolean;

procedure OnLoad;
begin
  ExecuteCommand('SHOWSTATUS OFF');
  Status := false;  
end;

procedure OnExecuteCommand(Command: string);
begin
  if Command = 'SHOWSTATUS On/OFF' then
    if Status then
    begin
      ExecuteCommand('SHOWSTATUS OFF');
      Status := false;
    end
    else
    begin
      ExecuteCommand('SHOWSTATUS ON');
      Status := true;
    end;
end;

begin
end.

3 Likes