So umfangreich die Funktionen in mAirList auch sind, so fehlt doch immer wieder mal das eine oder andere Feature für den gewünschten Zweck. Macht aber nichts, denn genau zu diesem Zweck gibt es die Scripting-Engine , mit welcher die Möglichkeiten in mAirList noch wesentlich umfangreicher werden als ohnehin schon. Also:
Klicksicherung – Buttons sichern und freischalten:
Man stelle sich eine Reihe Schalter oder Tasten (= Buttons) vor, die verschiedene Streams auf- und wieder abschalten. Sie versehentlich anzuklicken, kann widrige Folgen für die Sendung haben, es muß also eine Sicherung her. Wer noch eine Taste auf seiner Tastatur frei hat, ist fein raus: Die arrangieren wir so, daß erst diese eine Taste gedrückt werden muß, und dann hat man eine gewisse Zeit, den zutreffenden Button zu klicken – nach deren Ablauf werden die Buttons automatisch wieder entschärft. Klicken ohne Taste vorher wird stets ignoriert.
Für das Beispiel seien drei Tasten BUTTON.1
bis BUTTON.3
derart konfiguriert, daß sie deutlich zwischen gesperrt und nicht gesperrt zu unterscheiden sind. Zum Beispiel sei bei gesperrt die Schrift grau, sonst farbig. Für aktiv und inaktiv seien entsprechende Hintergründe zu wählen. Jetzt brauchen wir noch eine Taste, sie bekommt den Befehl, öhm …, MACH SIE SCHARF
.*
Hier kommt der Code:
var
i: integer;
const
Freigabe = 3500; // <-- Hier die Haltezeit in Millisekunden eingeben.
procedure OnLoad;
begin
for i := 1 to 3 do
begin
ExecuteCommand('BUTTON.' + IntToStr(i) + ' OFF');
ExecuteCommand('BUTTON.' + IntToStr(i) + ' DISABLE');
end;
end;
procedure OnExecuteCommand(Command: string);
begin
if Command = 'MACH SIE SCHARF' then begin
for i := 1 to 3 do
ExecuteCommand('BUTTON.' + IntToStr(i) + ' ENABLE');
ExecuteCommand('BUTTON.4 ON');
EnableTimer(Freigabe);
end;
end;
procedure OnTimer;
begin
for i := 1 to 3 do
ExecuteCommand('BUTTON.' + IntToStr(i) + ' DISABLE');
ExecuteCommand('BUTTON.4 OFF');
DisableTimer;
end;
begin
end.
BUTTON.4
ist noch aus der Testphase und zeigt an, daß die anderen Buttons jetzt freigeschaltet sind. Ich habe ihn dringelassen, weil er so schön leuchtet.
Zum Programmstart werden die Tasten abgeschaltet und verriegelt. (Was es mit der for … do
-Anweisung auf sich hat, ist an anderer Stelle beschrieben.) Wird der Befehl zur Freischaltung gegeben, werden die Tasten 1 bis 3 freigegeben und der Timer startet. Ist die eingestellte Zeit abgelaufen, werden die Buttons gesperrt, und der Timer wird wieder abgeschaltet. Diese Mimik läßt sich einfach an Eure eigenen Bedürfnisse anpassen, ich brauche das vermutlich nicht näher erläutern.
Gesicherte Grüße
TSD
* Man verzeihe mir bitte diesen uralten Kalauer, pardon! Wer dessen Herkunft erforschen möchte, der beginne seine Suche bei Polydor 52 252.