Guter Plan.
Vermutlich meinst Du: … und der Fader für Kanal 2 versehentlich nach oben gezogen wird.
Das läßt sich einfach so lösen, daß Fader 1 zunächst eine übergeordnete Zustandsvariable, sagen wir TTEnable
, steuert. Der Rest funktioniert dann nur, wenn TTEnable
auf true
gesetzt ist. Das könnte etwa so aussehen (ich weiß nicht, was Dein Airlite mAirList beim Betätigen des Faders sagt):
var
TTEnable: boolean;
procedure OnLoad; // Beim Start erstmal FALSE setzen
begin
TTEnable:= false;
end;
procedure OnExecuteCommand(Command: string);
begin
if NOT TTEnable AND (Command = 'FADER 1 ON') then // einschalten bei Fader 1 auf
begin
TTEnable := true;
// weiteres, was bei offenem Fader 1 passieren soll
end
else if TTEnable AND (Command = 'FADER 1 ON') then // wieder ausschalten
begin
TTEnable := false;
// …
end;
if TTEnable then // nur, wenn TTEnable auf TRUE, also Fader 1 offen
begin
if (Command = 'FADER 2 ON') OR (Command = 'FADER 3 ON') then
begin
Execute Command('TALKTIMER RESET');
Execute Command('TALKTIMER START');
// …
end
else if (Command = 'FADER 2 OFF') AND (Command = 'FADER 3 OFF') then
begin
Execute Command('TALKTIMER STOP');
// …
end;
end;
end;
begin
end.
(Ungetestet.)
Gezeitete Grüße
TSD