•  Back 
  •  Ereignisverwaltung 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - das Betriebssystem
Author      : 
Version     : tos.hyp (5. März 2013)
Subject     : Programmieren/Atari
Nodes       : 3001
Index Size  : 93602
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Titel
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File8.7.6  evnt_multi                                                  TOS

 Name:         »Event Multi« - wartet auf ein beliebiges Ereignis.

 AES-Nummer:   25

 Deklaration:  int16_t evnt_multi ( int16_t ev_mflags, int16_t 
               ev_mbclicks, int16_t ev_mbmask, int16_t ev_mbstate, 
               int16_t ev_mm1flags, int16_t ev_mm1x, int16_t ev_mm1y, 
               int16_t ev_mm1width, int16_t ev_mm1height, int16_t 
               ev_mm2flags, int16_t ev_mm2x, int16_t ev_mm2y, int16_t 
               ev_mm2width, int16_t ev_mm2height, int16_t 
               *ev_mmgpbuff, int16_t ev_mtlocount, int16_t 
               ev_mthicount, int16_t *ev_mmox, int16_t *ev_mmoy, 
               int16_t *ev_mmbutton, int16_t *ev_mmokstate, int16_t 
               *ev_mkreturn, int16_t *ev_mbreturn );

 Beschreibung: Die evnt_multi Funktion wartet auf eine Reihe 
               verschiedener Events.

                Parameter     Bedeutung

                ev_mflags     gewünschtes Ereignis:
                              MU_KEYBD      (0x0001) Tastaturereignis
                              MU_BUTTON     (0x0002) Buttonereignis
                              MU_M1         (0x0004) Mausereignis 1
                              MU_M2         (0x0008) Mausereignis 2
                              MU_MESAG      (0x0010) Nachrichten
                              MU_TIMER      (0x0020) Zeitereignisse
                              MU_WHEEL      (0x0040) Mausrad, XaAES
                              MU_MX         (0x0080) Mausbewegung, 
                              XaAES
                              MU_KEYBD4     (0x0100) GEM/4
                              MU_NORM_KEYBD (0x0100) normierte 
                              Tastenkodes, XaAES
                              MU_DYNAMIC_KEYBD (0x0200) XaAES, noch 
                              nicht vorhanden
                              X_MU_DIALOG   (0x4000) (Geneva)
                ev_mbclicks   Anzahl der Klicks, siehe ev_bclicks in 
                              evnt_button
                ev_mbmask     welche Mausknöpfe sollen betrachtet 
                              werden (Format siehe ev_bmask in 
                              evnt_button)
                ev_mbstate    welchen Zustand müssen die Mausknöpfe 
                              einnehmen (Format, siehe ev_bstate in 
                              evnt_button)
                ev_mm1flags   soll der Event beim Betreten (0) oder 
                              Verlassen (1) des ersten Rechtecks 
                              ausgelöst werden, siehe ev_moflags in 
                              evnt_mouse
                ev_mm1x,
                ev_mm1y       x und y Koordinate des ersten Rechtecks, 
                              siehe ev_mox, ev_moy in evnt_mouse
                ev_mm1width   die Breite des ersten Rechtecks, siehe 
                              ev_mowidth in evnt_mouse
                ev_mm1height  die Höhe des ersten Rechtecks, siehe 
                              ev_moheight in evnt_mouse
                ev_mm2flags,
                ev_mm2x,
                ev_mm2y,
                ev_mm2width,
                ev_mm2height  sind die Parameter für das zweite Maus- 
                              Event Rechteck
                ev_mmgpbuff   ein 16 Byte Messagebuffer, siehe 
                              evnt_mesag und ev_mgpbuff
                ev_mtlocount  low-Word für den Timercounter, siehe 
                              evnt_timer
                ev_mthicount  high-Word für den Timercounter, siehe 
                              evnt_timer Achtung: Unter TOS 1.0 darf 
                              in einem Accessorie der Timer nicht auf 
                              0 gesetzt werden, sonst hängt sich das 
                              System auf.
                ev_mmox,
                ev_mmoy       die x und y Koordinate des Mauszeigers 
                              beim Auftreten des Events, siehe 
                              evnt_mouse, (MU_WHEEL)
                ev_mmobutton  Zustand der Mausknöpfe beim Auftreten 
                              des Events (Format siehe evnt_button)
                ev_mmokstate  den Zustand der Sondertasten der 
                              Tastatur beim Auftreten des Events 
                              (Format, siehe evnt_button)
                              Bei MU_WHEEL: Radnummer
                ev_mkreturn   der Scancode der gedrückten Taste
                ev_mbreturn   Anzahl der Klicks mit der Maustaste
                              Bei MU_WHEEL: Anzahl der Radumdrehungen

               Hinweis: Durch die große Anzahl der zu übergebenden 
               Parameter verbraucht diese Funktion relativ viel CPU- 
               Zeit; denn die Parameter müssen zunächst auf dem Stack 
               abgelegt, und dann noch auf die Eingabefelder des GEM 
               verteilt werden.

               MU_WHEEL:
               Wird nur versendet wenn es keine obenliegendes Fenster 
               gibt oder das Fenster keine Pfeile besitzt.

               MU_MX:
               Es wird jede Bewegung der Maus gemeldet (ev_mmox, 
               ev_mmoy), zusätzlich noch erfolgt noch die Rückgabe des 
               Status der Tastaur.

               MU_KEYBD4:
               Used internally in GEM/4 to check for a context- 
               sensitive help request.

               MU_NORM_KEYBD:
               Wenn das Ereignis MU_NORM_KEYBD mit in die Ergenismaske 
               aufgenommen wird, bekommt die Applikation anstatt den 
               standard AES Scancode einen normaliesierten Tastencode 
               (NKCC) und Staus der Maus geliefert. Wird in der Maske 
               MU_KEYBD und MU_NORM_KEYBD angeben, wird immer 
               MU_NORM_KEYBD geliefert. Die Rückgabe erfolgt in 
               ev_mmokstate und ev_mkreturn, wobei bei der gleichen 
               Wert besitzen.

               X_MU_DIALOG:
               If the ev_mflags parameter has bit 14 set 
               (ev_mflags|=X_MU_DIALOG), any mouse clicks and keyboard 
               actions within windows containing dialogs will cause 
               the ev_mwhich return value from evnt_multi to have bit 
               14 set.
               When this happens, ev_mmgpbuff word 2 contains the 
               index of the object within the dialog which was 
               selected. If the object was a TOUCHEXIT button and the 
               user double-clicked on it, then bit 15 will be set, 
               similar to the way form_do works. Word 3 of the message 
               buffer ev_mmgpbuff contains the window handle of the 
               window in which the event occurred.
               This feature is used in conjunction with the wind_set 
               option X_WF_DIALOG.

 Ergebnis:     Als Ergebnis liefert die Funktion die Nummer des oder 
               der aufgetretenen Events im oben angegebenen Format.

 Verfügbar:    In allen AES Versionen.

 Gruppe:       Ereignisverwaltung

 Querverweis:  Binding   evnt_keybd   evnt_button   evnt_mouse 
               evnt_mesag   evnt_timer   evnt_dclick   Nachrichten