home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD v1.2 / amidev_cd_12.iso / devcon / sanfrancisco_1989 / sf-devcon89.1 / commodities / aztec / cxsupp / hotkey.c < prev    next >
C/C++ Source or Header  |  1992-08-27  |  1KB  |  49 lines

  1. /* hotkey.c -- support function for creating Commodities hotkey triad    */
  2.  
  3. /*
  4. Copyright (c) 1987, 1988, 1989 Jim Mackraz and I&I Computing.
  5.  
  6. Executables based on this information may be used in software
  7. for Commodore Amiga computers.  All other rights reserved.
  8. This information is provided "as is"; no warranties are made.
  9. All use is at your own risk, and no liability or responsibility
  10. is assumed.
  11. */
  12.  
  13. #include    "cx/cxusr.h"
  14. #define D(x)    ;
  15.  
  16. CxObj    *
  17. HotKey(descr, port, ID)
  18. char            *descr;
  19. struct MsgPort    *port;
  20. LONG            ID;
  21. {
  22.     CxObj    *filter;
  23.     LONG    error;
  24.  
  25.     /*    create filter    */
  26.     filter = CxFilter(descr);
  27.     if (!filter)
  28.     {
  29.         D( printf("HotKey: Failed filter\n") );
  30.         return (NULL);
  31.     }
  32.  
  33.     /*    create sender    */
  34.     AttachCxObj(filter, CxSender(port, ID) );
  35.  
  36.     /*    create swallow    */
  37.     AttachCxObj(filter, CxTranslate(NULL) );
  38.  
  39.     /* if any problems, delete all    */
  40.     if (error = CxObjError(filter))
  41.     {
  42.         D( printf("accumulated filter error: %ld\n", error) );
  43.         DeleteCxObjAll(filter);
  44.         return (NULL);
  45.     }
  46.  
  47.     return (filter);
  48. }
  49.