home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / idmcomm.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-22  |  6.2 KB  |  154 lines

  1. #ifndef _IDMCOMM_
  2. #define _IDMCOMM_
  3. /*******************************************************************************
  4. * FILE NAME: idmcomm.hpp                                                       *
  5. *                                                                              *
  6. * DESCRIPTION:                                                                 *
  7. *   Declaration of the classes:                                                *
  8. *     Enumerations -                                                           *
  9. *       Source                                                                 *
  10. *       DropIndicator                                                          *
  11. *       RenderCompletion                                                       *
  12. *       DragImageStyle                                                         *
  13. *       DropStyle                                                              *
  14. *       DiscardIndicator                                                       *
  15. *       PrintIndicator                                                         *
  16. *                                                                              *
  17. *     Drag Item Types -                                                        *
  18. *       any                                                                    *
  19. *       binary                                                                 *
  20. *       binaryData                                                             *
  21. *       bitmap                                                                 *
  22. *       container                                                              *
  23. *       containerObject                                                        *
  24. *       file                                                                   *
  25. *       icon                                                                   *
  26. *       plainText                                                              *
  27. *       text                                                                   *
  28. *       unknown                                                                *
  29. *                                                                              *
  30. *     Rendering Mechanisms (RM) -                                              *
  31. *       rmFile                                                                 *
  32. *       rmObject                                                               *
  33. *       rmDiscard                                                              *
  34. *       rmPrint                                                                *
  35. *       rmLibrary                                                              *
  36. *       rmAny                                                                  *
  37. *                                                                              *
  38. *     Rendering Formats (RF) -                                                 *
  39. *       rfUnknown                                                              *
  40. *       rfText                                                                 *
  41. *       rfProcess                                                              *
  42. *       rfSharedMem                                                            *
  43. *       rfObject                                                               *
  44. *       rfAny                                                                  *
  45. *                                                                              *
  46. * COPYRIGHT:                                                                   *
  47. *   IBM Open Class Library                                                     *
  48. *   (C) Copyright International Business Machines Corporation 1992, 1996       *
  49. *   Licensed Material - Program-Property of IBM - All Rights Reserved.         *
  50. *   US Government Users Restricted Rights - Use, duplication, or disclosure    *
  51. *   restricted by GSA ADP Schedule Contract with IBM Corp.                     *
  52. *                                                                              *
  53. *******************************************************************************/
  54. #include <ibase.hpp>
  55.  
  56. #pragma pack(4)
  57.  
  58. struct IDM {
  59. /*-------------------------- Direct Manipulation Flags -----------------------*/
  60.   enum Source
  61.   {
  62.     pointingDevice,
  63.     keyboard
  64.   };
  65.  
  66.   enum DropIndicator
  67.   {
  68.     notOk            = 0x0000,
  69.     ok               = 0x0001,
  70.     operationNotOk   = 0x0002,
  71.     neverOk          = 0x0003
  72.   };
  73.  
  74.   enum RenderCompletion
  75.   {
  76.     targetSuccessful = 0x0001,
  77.     targetFailed     = 0x0002,
  78.     retry            = 0x0008,
  79.     renderOk         = 0x0010,
  80.     fail             = 0x0020
  81.   };
  82.  
  83.   enum DragImageStyle
  84.   {
  85.     stack3AndFade,
  86.     allStacked,
  87.     systemImages
  88.   };
  89.  
  90.   enum DropStyle
  91.   {
  92.     notContainer   = 0x0000,
  93.     dropAtPosition = 0x0001,
  94.     alignVertical  = 0x0002,
  95.     alignFlow      = 0x0004,
  96.     flowBeside     = 0x0008
  97.   };
  98.  
  99.   enum DiscardIndicator
  100.   {
  101.     sourceDiscards = 0x0001,
  102.     targetDiscards = 0x0002,
  103.     abortDiscard   = 0x0003
  104.   };
  105.  
  106.   enum PrintIndicator
  107.   {
  108.     sourcePrints   = 0x0001,
  109.     targetPrints   = 0x0002,
  110.     abortPrint     = 0x0003
  111.   };
  112.  
  113. /*------------------------------- Drag Item Types ----------------------------*/
  114. typedef const char* Type;
  115.   static Type
  116.     IC_IMPORTU any,
  117.     IC_IMPORTU binary,
  118.     IC_IMPORTU binaryData,
  119.     IC_IMPORTU bitmap,
  120.     IC_IMPORTU container,
  121.     IC_IMPORTU containerObject,
  122.     IC_IMPORTU file,
  123.     IC_IMPORTU icon,
  124.     IC_IMPORTU menuItem,
  125.     IC_IMPORTU plainText,
  126.     IC_IMPORTU text,
  127.     IC_IMPORTU toolBarButton,
  128.     IC_IMPORTU unknown;
  129.  
  130. /*----------------------------- Rendering Mechanisms -------------------------*/
  131. typedef const char* RM;
  132.   static RM
  133.     IC_IMPORTU rmFile,
  134.     IC_IMPORTU rmObject,
  135.     IC_IMPORTU rmDiscard,
  136.     IC_IMPORTU rmPrint,
  137.     IC_IMPORTU rmLibrary,
  138.     IC_IMPORTU rmAny;
  139.  
  140. /*------------------------------ Rendering Formats ---------------------------*/
  141. typedef const char* RF;
  142.   static RF
  143.     IC_IMPORTU rfUnknown,
  144.     IC_IMPORTU rfText,
  145.     IC_IMPORTU rfProcess,
  146.     IC_IMPORTU rfSharedMem,
  147.     IC_IMPORTU rfObject,
  148.     IC_IMPORTU rfAny;
  149. };
  150.  
  151. #pragma pack()
  152.  
  153. #endif
  154.