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.22.16.1 Beispiel zu HNDL_OBJ TOS /* Der folgende Code ist ein Beispiel für eine Implementation der handle_exit Funktion, wie sie z.B. als Parameter bei wdlg_create vorkommt. */ int16_t cdecl handle_exit ( void *dialog, EVNT *events, int16_t obj, int16_t clicks, void *data ) { /* * Ereignis oder Objektnummer? * Alle Ereignisse außer HNDL_CLSD werden bei diesem Beispiel * ignoriert */ if ( obj < 0 ) { if ( obj == HNDL_CLSD ) /* Closer betätigt? */ return( 0 ); /* beenden */ if ( obj == HNDL_EDIT ) { /* In Fensterdialogen kann es nützlich sein, Tasten- kombinationen mit Control in Eingabefeldern zu igno- rieren, damit Shortcuts wie z.B. Ctrl-U, Ctrl-W oder Ctrl-Q in der Eventschleife des Programms abgearbei- tet werden können. In diesem Fall sollte nach HNDL_EDIT eine 0 zurückgeliefert werden, damit die Taste nicht von objc_edit bearbeitet wird. */ } } else { /* ein Objekt ist angewählt worden */ switch ( obj ) /* Aktionen einleiten (falls nötig) */ { case ... . . . case MY_EXIT_OBJECT: ..... return( 0 ); /* beenden */ } } return( 1 ); /* weitermachen */ }