Events

Top  Previous  Next

Moskito ist aus der Anwender- und Programmierersicht ein Kommandogesteuertes System. Aktionen werden erst dann ausgelöst, wenn der Anwender einen Befehl abschickt. Dies äußert sich z.B. darin, dass Befehle und Daten mit <Return> bestätigt werden und graphische Elemente erst dann sichtbar sind, wenn der Zielpunkt gesetzt ist.

Mit dem Eventmechanismus ist es möglich, Aktionen auszulösen, obwohl der Anwender keine Befehle betätigt und der Kommandointerpreter, die Zentrale von Moskito, keine Kommandos erhält. Es sind mehrere Eventarten realisiert.

Mausevents werden immer dann ausgelöst, wenn die Maus oder der Digitizer bewegt wurde.

Ausgabeevents werden für jede Textausgabe in das Protokollfenster ausgelöst.

Die Events werden von Moskito selbst verwendet. Mit den Mausevents ist das Programm in der Lage, beim Drucken den Blattrahmen oder den druckbaren Bereich anzuzeigen und mit dem Mauszeiger zu verschieben. Mit den Ausgabeevents können die Textausgaben aller Befehle abgefangen und in eine Dialogbox umgeleitet werden oder auch manipuliert werden.

Die Events finden nur dann statt, wenn sich eine Routine dafür angemeldet hat. Sie finden solange statt, bis die entsprechende Routine sich wieder abmeldet. Entsprechend müssen alle Datenstrukturen, die die Eventroutine benutzt, für diesen Zeitraum ansprechbar sein. Wenn also die Daten auf dem Stack angelegt werden, dann muss der Event abgemeldet werden, bevor der Stack ungültig wird.

More:

buttonBeispiel für einen Mausevent

buttonBeispiel für ein Ausgabeevent