home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 199.lha / GimmeLib / keyboard.c < prev    next >
C/C++ Source or Header  |  1988-12-27  |  855b  |  36 lines

  1. /*
  2.  *  FILE: keyboard.c
  3.  *  Support routines for "cooking" raw input.
  4.  *
  5.  *  Public Domain, but keep my name in it as the original author.
  6.  *  31-Aug-88    Jan Sven Trabandt   first release version
  7.  */
  8.  
  9.  
  10. #include "gimmelib/gimmefuncs.h"
  11.  
  12.  
  13. SHORT deadKeyConvert( imsg, buf, bufsize, keymap )
  14.     struct IntuiMessage *imsg;
  15.     UBYTE        *buf;
  16.     USHORT        bufsize;
  17.     struct KeyMap    *keymap;
  18. {
  19.     struct InputEvent    ievent;
  20.  
  21. #ifdef GIMME_WIMPY
  22.     if( !imsg || !buf || bufsize < 0 ) {
  23.     return( -3 );
  24.     }
  25. #endif
  26.     if( imsg->Class != RAWKEY ) {
  27.     return( -2 );
  28.     }
  29.     ievent.ie_NextEvent = NULL;
  30.     ievent.ie_Class = IECLASS_RAWKEY;
  31.     ievent.ie_Code = imsg->Code;
  32.     ievent.ie_Qualifier = imsg->Qualifier;
  33.     ievent.ie_position.ie_addr = *((APTR *)imsg->IAddress);
  34.     return( RawKeyConvert(&ievent, buf, (ULONG)bufsize, keymap) );
  35. } /* deadKeyConvert */
  36.