home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / bpos13.zip / ispuser.pas < prev    next >
Pascal/Delphi Source File  |  1993-11-24  |  11KB  |  304 lines

  1. {| Unit: IsPUser
  2.  | Version: 1.00
  3.  | translated from file IsPUser.H
  4.  | Original translation: Peter Sawatzki (ps)
  5.  | Contributing:
  6.  |   (fill in)
  7.  |
  8.  | change history:
  9.  | Date:    Ver: Author:
  10.  | 11/23/93 1.00 ps     original translation by ps
  11. }
  12. Unit IsPUser;
  13. Interface
  14. Uses
  15.   Os2Def,
  16.   PmWin;
  17. {********************************************************************\
  18. * OS/2 Dialog Manager message constants and type definitions for
  19. * user controls and user exits.
  20. \*********************************************************************}
  21.  
  22. {********************************************************************}
  23. { Application-defined messages should be begin at DM_USER to avoid   }
  24. { conflict with DM-defined messages.                                 }
  25. {********************************************************************}
  26.  
  27. Const
  28.   DM_USER                          = WM_USER+ $1000;
  29.   CM_MESSAGE_BASE                  = WM_USER+ $800;
  30.  
  31. {********************************************************************}
  32. {  DM messages common to User Controls and User Exits                }
  33. {********************************************************************}
  34.  
  35.   CM_FREE_CTL_RESOURCES            = (CM_MESSAGE_BASE+$0000);
  36.   CM_MEM_ALLOC                     = (CM_MESSAGE_BASE+$0001);
  37.   CM_MEM_FREE                      = (CM_MESSAGE_BASE+$0002);
  38.   CM_MEM_REALLOC                   = (CM_MESSAGE_BASE+$0003);
  39.   CM_QUERY_CTL_HDL                 = (CM_MESSAGE_BASE+$0004);
  40.   CM_QUERY_USER_INST_PTR           = (CM_MESSAGE_BASE+$0005);
  41.   CM_SET_USER_INST_PTR             = (CM_MESSAGE_BASE+$0006);
  42.   CM_UPDATE_CONTROL                = (CM_MESSAGE_BASE+$0007);
  43.  
  44. {********************************************************************}
  45. {  DM User Control Messages                                          }
  46. {********************************************************************}
  47.  
  48.   CM_INIT_USER_CONTROL             = (CM_MESSAGE_BASE+$0008);
  49.   CM_PANEL_ENTERED                 = (CM_MESSAGE_BASE+$0009);
  50.   CM_END_DISPLAY                   = (CM_MESSAGE_BASE+$000A);
  51.   CM_GET_UC_PARM_AND_TEXT          = (CM_MESSAGE_BASE+$000B);
  52.   CM_NO_FOCUS_USER_CONTROL         = (CM_MESSAGE_BASE+$000C);
  53.   CM_YES_FOCUS_USER_CONTROL        = (CM_MESSAGE_BASE+$000D);
  54.   CM_SET_MIN_MAX_SIZE              = (CM_MESSAGE_BASE+$000E);
  55.  
  56. {********************************************************************}
  57. {  DM User Action Exit Messages                                      }
  58. {********************************************************************}
  59.  
  60.   CM_DO_ACTION               =      (CM_MESSAGE_BASE+$000F);
  61.   CM_INIT_USER_ACTION        =      (CM_MESSAGE_BASE+$0010);
  62.  
  63. {********************************************************************}
  64. {  DM User Check Exit Messages                                       }
  65. {********************************************************************}
  66.  
  67.   CM_DO_CHECK                     = (CM_MESSAGE_BASE+$0011);
  68.   CM_INIT_USER_CHECK              = (CM_MESSAGE_BASE+$0012);
  69.  
  70. {********************************************************************}
  71. {  DM User Command Action Exit Messages                              }
  72. {********************************************************************}
  73.  
  74.   CM_DO_CMD_ACTION                 = (CM_MESSAGE_BASE+$0013);
  75.   CM_INIT_USER_CMD_ACTION          = (CM_MESSAGE_BASE+$0014);
  76.  
  77. {********************************************************************}
  78. {  DM User Translate Exit Messages                                   }
  79. {********************************************************************}
  80.  
  81.   CM_DO_XLATE                      = (CM_MESSAGE_BASE+$0015);
  82.   CM_INIT_USER_XLATE               = (CM_MESSAGE_BASE+$0016);
  83.  
  84. {********************************************************************}
  85. {  DM User Variable Exit Messages                                    }
  86. {********************************************************************}
  87.  
  88.   CM_INIT_USER_VARIABLE            = (CM_MESSAGE_BASE+$0017);
  89.   CM_QUERY_VARIABLE_VALUE          = (CM_MESSAGE_BASE+$0018);
  90.   CM_SET_VARIABLE_VALUE            = (CM_MESSAGE_BASE+$0019);
  91.  
  92.  
  93.   CCTL_INPUT                       = 1;
  94.   CCTL_OUTPUT                      = 2;
  95.  
  96. {********************************************************************}
  97. { These constants are provided to make is easy for the writer of a   }
  98. { user control or user exit to register their class.                 }
  99. {                                                                    }
  100. { The style constants provided as class styles for the application's }
  101. { user control/exit window class.  They should "or" in any of their  }
  102. { own class styles.  Currently these are null because DM doesn't     }
  103. { require user controls/exits to have a particular window style, but }
  104. { these can be changed in the future if that requirement arises.     }
  105. {                                                                    }
  106. { The extra bytes constants should be used so that user controls/    }
  107. { exits have extra window words for the pointer to their instance    }
  108. { data.  Any extra bytes the application wants to use must be after  }
  109. { the first 4 in the extra window words, as these are reserved by    }
  110. { DM.  Remember the UserInstancePtr in the user control/exit         }
  111. { instance data can be used to point to application specific data.   }
  112. {********************************************************************}
  113.  
  114.   CCTL_UC_CLASS_STYLE              =  $00000000;           { User control   }
  115.   CCTL_UA_CLASS_STYLE              =  $00000000;           { Action         }
  116.   CCTL_UK_CLASS_STYLE              =  $00000000;           { Check          }
  117.   CCTL_UM_CLASS_STYLE              =  $00000000;           { Command action }
  118.   CCTL_UX_CLASS_STYLE              =  $00000000;           { Translate      }
  119.   CCTL_UV_CLASS_STYLE              =  $00000000;           { Variable access}
  120.  
  121.   CCTL_UC_EXTRA_BYTES              = 4;                     { User control   }
  122.   CCTL_UA_EXTRA_BYTES              = 4;                     { Action         }
  123.   CCTL_UK_EXTRA_BYTES              = 4;                     { Check          }
  124.   CCTL_UM_EXTRA_BYTES              = 4;                     { Command action }
  125.   CCTL_UX_EXTRA_BYTES              = 4;                     { Translate      }
  126.   CCTL_UV_EXTRA_BYTES              = 4;                     { Variable access}
  127.  
  128. Type
  129.   cmDefaultMessageParm = Record
  130.     ReturnCode: ULONG;
  131.     MessageParmSize: USHORT
  132.   End;
  133.   cmFreeCtlResourcesParm    = cmDefaultMessageParm;
  134.   cmInitUserControlParm     = cmDefaultMessageParm;
  135.   cmInitUserVariableParm    = cmDefaultMessageParm;
  136.   cmNoFocusUserControlParm  = cmDefaultMessageParm;
  137.   cmYesFocusUserControlParm = cmDefaultMessageParm;
  138.   cmPanelEnteredParm        = cmDefaultMessageParm;
  139.   cmQueryUserInstPtrParm    = cmDefaultMessageParm;
  140.  
  141.   cmDefaultMessageParmPtr      = ^cmDefaultMessageParm;
  142.   cmFreeCtlResourcesParmPtr    = ^cmDefaultMessageParm;
  143.   cmInitUserControlParmPtr     = ^cmDefaultMessageParm;
  144.   cmInitUserVariableParmPtr    = ^cmDefaultMessageParm;
  145.   cmNoFocusUserControlParmPtr  = ^cmDefaultMessageParm;
  146.   cmYesFocusUserControlParmPtr = ^cmDefaultMessageParm;
  147.   cmPanelEnteredParmPtr        = ^cmDefaultMessageParm;
  148.   cmQueryUserInstPtrParmPtr    = ^cmDefaultMessageParm;
  149.  
  150.   cmMemAllocParm = Record
  151.     ReturnCode: ULONG;
  152.     MessageParmSize,
  153.     ByteCount: USHORT
  154.   End;
  155.   cmMemAllocParmPtr = ^cmMemAllocParm;
  156.  
  157.   cmMemFreeParm = Record
  158.     ReturnCode: ULONG;
  159.     MessageParmSize: USHORT;
  160.     MemoryPtr: PVOID
  161.   End;
  162.   cmMemFreeParmPtr            = ^cmMemFreeParm               ;
  163.  
  164.   cmMemReallocParm = Record
  165.     ReturnCode: ULONG;
  166.     MessageParmSize,
  167.     NewByteCount: USHORT;
  168.     SourcePtr: PVOID
  169.   End;
  170.   cmMemReallocParmPtr         = ^cmMemReallocParm            ;
  171.  
  172.   cmQueryCtlHdlParm = Record
  173.     ReturnCode: ULONG;
  174.     MessageParmSize: USHORT;
  175.     Name: PSZ
  176.   End;
  177.   cmQueryCtlHdlParmPtr        = ^cmQueryCtlHdlParm           ;
  178.  
  179.   cmSetUserInstPtrParm = Record
  180.     ReturnCode: ULONG;
  181.     MessageParmSize: USHORT;
  182.     UserInstancePtr: PVOID
  183.   End;
  184.   cmSetUserInstPtrParmPtr     = ^cmSetUserInstPtrParm           ;
  185.  
  186.   cmUpdateControlParm = Record
  187.     ReturnCode: ULONG;
  188.     MessageParmSize: USHORT;
  189.     SetInitialState: BOOL
  190.   End;
  191.   cmUpdateControlParmPtr      = ^cmUpdateControlParm         ;
  192.  
  193.   cmEndDisplayParm = Record
  194.     ReturnCode: ULONG;
  195.     MessageParmSize: USHORT;
  196.     DisplayReasonCode: ULONG;
  197.     MsgOnInvalidField: BOOL
  198.   End;
  199.   cmEndDisplayParmPtr         = ^cmEndDisplayParm            ;
  200.  
  201.   cmGetUCParmAndTextParm = Record
  202.     ReturnCode: ULONG;
  203.     MessageParmSize: USHORT;
  204.     ReturnControlTextPtr,
  205.     ReturnControlPrmdataPtr: PSZ
  206.   End;
  207.   cmGetUCParmAndTextParmPtr   = ^cmGetUCParmAndTextParm      ;
  208.  
  209.   cmSetMinMaxSizeParm = Record
  210.     ReturnCode: ULONG;
  211.     MessageParmSize,
  212.     MinWidth,
  213.     MaxWidth,
  214.     MinDepth,
  215.     MaxDepth: USHORT
  216.   End;
  217.   cmSetMinMaxSizeParmPtr      = ^cmSetMinMaxSizeParm         ;
  218.  
  219.   cmDoActionParm = Record
  220.     ReturnCode: ULONG;
  221.     MessageParmSize: USHORT;
  222.     ActionParmPtr: PSZ
  223.   End;
  224.   cmDoActionParmPtr           = ^cmDoActionParm              ;
  225.  
  226.   cmInitUserActionParm = Record
  227.     ReturnCode: ULONG;
  228.     MessageParmSize: USHORT;
  229.     ActionParmPtr: PSZ
  230.   End;
  231.   cmInitUserActionParmPtr     = ^cmInitUserActionParm        ;
  232.  
  233.   cmDoCheckParm = Record
  234.     ReturnCode: ULONG;
  235.     MessageParmSize: USHORT;
  236.     CheckValuePtr,
  237.     CheckParm1Ptr,
  238.     CheckParm2Ptr: PSZ
  239.   End;
  240.   cmDoCheckParmPtr            = ^cmDoCheckParm               ;
  241.  
  242.   cmInitUserCheckParm = Record
  243.     ReturnCode: ULONG;
  244.     MessageParmSize: USHORT;
  245.     CheckParm1Ptr,
  246.     CheckParm2Ptr: PSZ
  247.   End;
  248.   cmInitUserCheckParmPtr      = ^cmInitUserCheckParm         ;
  249.  
  250.   cmDoCmdActionParm = Record
  251.     ReturnCode: ULONG;
  252.     MessageParmSize: USHORT;
  253.     CmdParmPtr,
  254.     CmdActionParmPtr: PSZ
  255.   End;
  256.   cmDoCmdActionParmPtr        = ^cmDoCmdActionParm           ;
  257.  
  258.   cmInitUserCmdActionParm = Record
  259.     ReturnCode: ULONG;
  260.     MessageParmSize: USHORT;
  261.     CmdActionParmPtr: PSZ
  262.   End;
  263.   cmInitUserCmdActionParmPtr  = ^cmInitUserCmdActionParm     ;
  264.  
  265.   cmDoXlateParm = Record
  266.     ReturnCode: ULONG;
  267.     MessageParmSize,
  268.     Direction,
  269.     XlateBufferLen: USHORT;
  270.     XlateBufferPtr,
  271.     XlateParmPtr: PSZ;
  272.     Continue: BOOL
  273.   End;
  274.   cmDoXlateParmPtr            = ^cmDoXlateParm               ;
  275.  
  276.   cmInitUserXlateParm = Record
  277.     ReturnCode: ULONG;
  278.     MessageParmSize,
  279.     XlateBufferLen: USHORT;
  280.     XlateParmPtr: PSZ
  281.   End;
  282.   cmInitUserXlateParmPtr      = ^cmInitUserXlateParm         ;
  283.  
  284.   cmQueryVariableValueParm = Record
  285.     ReturnCode: ULONG;
  286.     MessageParmSize: USHORT;
  287.     VnamePtr,
  288.     ReturnBufferPtr: PSZ;
  289.     ReturnBufferLength,
  290.     Subscript: USHORT
  291.   End;
  292.   cmQueryVariableValueParmPtr = ^cmQueryVariableValueParm    ;
  293.  
  294.   cmSetVariableValueParm = Record
  295.     ReturnCode: ULONG;
  296.     MessageParmSize: USHORT;
  297.     VnamePtr,
  298.     BufferPtr: PSZ;
  299.     Subscript: USHORT
  300.   End;
  301.   cmSetVariableValueParmPtr   = ^cmSetVariableValueParm      ;
  302. Implementation
  303. End.
  304.