home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / OS2BAS.ZIP / PMSHL.BI < prev    next >
Text File  |  1989-07-25  |  11KB  |  290 lines

  1. '**************************************************************
  2. '*
  3. '* Include File: PMShl.BI
  4. '*
  5. '* Requires:     none
  6. '*
  7. '* Description:  OS/2 Presentation Manager Shell constants,
  8. '*               types, messages and function declarations
  9. '*
  10. '*************************************************************
  11.  
  12. ' common types, constants and function declarations             
  13.  
  14. ' maximum file name length 
  15. CONST MAXNAMEL =60
  16.  
  17. ' window size structure 
  18. TYPE XYWINSIZE 
  19.     x AS INTEGER
  20.     y AS INTEGER
  21.     cx AS INTEGER
  22.     cy AS INTEGER
  23.     fsWindow AS INTEGER
  24. END TYPE
  25.  
  26. ' Definitions for fsWindow                            
  27. CONST XYFNOAUTOCLOSE  =&H0008
  28. CONST XYFMINIMIZED    =&H0004                           
  29. CONST XYFMAXIMIZED    =&H0002                           
  30. CONST XYFINVISIBLE    =&H0001
  31. CONST XYFNORMAL       =&H0000
  32.  
  33.  
  34.  
  35. ' maximum path length 
  36. CONST MAXPATHL =128
  37.  
  38. ' root group handle 
  39. CONST SGHROOT      =-1&
  40.  
  41. ' values acceptable for PROGCATEGORY for PM groups cannot be defined
  42. ' as CONSTants in BASIC, since they are singel character constants.
  43. ' They have the following values:
  44. '
  45. ' C Constant name      CHR$(n)
  46. ' ---------------      -------
  47. ' PROG_DEFAULT             0
  48. ' PROG_FULLSCREEN          1
  49. ' PROG_WINDOWABLEVIO       2
  50. ' PROG_PM                  3
  51. ' PROG_GROUP               5
  52. ' PROG_REAL                7
  53. '
  54. ' visibility flag for PROGTYPE structure are also character constants:
  55. ' SHE_VISIBLE              0
  56. ' SHE_INVISIBLE            1
  57.  
  58. TYPE PROGTYPE 
  59.     progc AS STRING * 1
  60.     fbVisible AS STRING * 1
  61. END TYPE
  62.  
  63. TYPE PROGRAMENTRY
  64.     hprog AS LONG
  65.     progt AS PROGTYPE
  66.     szTitle AS STRING * 61     ' array in C: CHAR szTitle[MAXNAMEL+1]
  67. END TYPE
  68.  
  69. TYPE PIBSTRUCT
  70.     progt AS PROGTYPE
  71.     szTitle AS STRING * 61       ' array in C:CHAR szTitle[MAXNAMEL+1]
  72.     szIconFileName AS STRING * 129 ' array in C:CHAR szIconFileName[MAXPATHL+1]
  73.     szExecutable AS STRING * 129   ' array in C:CHAR szExecutable[MAXPATHL+1]
  74.     szStartupDir AS STRING * 129   ' array in C:CHAR szStartupDir[MAXPATHL+1]
  75.     xywinInitial AS XYWINSIZE
  76.     res1 AS INTEGER
  77.     res2 AS LONG
  78.     cchEnvironmentVars AS INTEGER
  79.     pchEnvironmentVars AS LONG
  80.     cchProgramParameter AS INTEGER
  81.     pchProgramParameter AS LONG
  82. END TYPE
  83.  
  84. '**  Program Use 
  85. DECLARE FUNCTION WinQueryProgramTitles%( BYVAL hab AS LONG,_
  86.                                          BYVAL hprogram AS LONG,_
  87.                                          BYVAL pprogramentry AS LONG,_
  88.                                          BYVAL ushort AS INTEGER,_
  89.                                          BYVAL pushort AS LONG )
  90.  
  91. '**  Single Program Manipulation 
  92. DECLARE FUNCTION WinAddProgram&( BYVAL hab AS LONG,_
  93.                                  BYVAL ppibstruct AS LONG,_
  94.                                  BYVAL hprogram AS LONG )
  95.  
  96. DECLARE FUNCTION WinQueryDefinition%( BYVAL hab AS LONG,_
  97.                                       BYVAL hprogram AS LONG,_
  98.                                       BYVAL ppibstruct AS LONG,_
  99.                                       BYVAL ushort AS INTEGER )
  100.  
  101. '**  Group Manipulation 
  102. 'DECLARE FUNCTION WinCreateGroup&( BYVAL hab AS LONG,_
  103. '                                  BYVAL psz AS LONG ,_
  104. '                                  *****UCHAR,*********_
  105. '                                  BYVAL Aulong AS LONG,_
  106. '                                   BYVAL Bulong AS LONG )
  107.  
  108. TYPE PIBBUFFER 
  109.     progt AS PROGTYPE
  110.     szTitle AS STRING * 61       ' array in C:CHAR szTitle[MAXNAMEL+1]
  111.     szIconFileName AS STRING * 129 ' array in C:CHAR szIconFileName[MAXPATHL+1]
  112.     szExecutable AS STRING * 129   ' array in C:CHAR szExecutable[MAXPATHL+1]
  113.     szStartupDir AS STRING * 129   ' array in C:CHAR szStartupDir[MAXPATHL+1]
  114.     xywinInitial AS XYWINSIZE
  115.     res1 AS INTEGER
  116.     res2 AS LONG
  117.     cchEnvironmentVars AS INTEGER
  118.     pchEnvironmentVars AS LONG
  119.     cchProgramParameter AS INTEGER
  120.     pchProgramParameter AS LONG
  121.     HEPstrings AS STRING * 1024    ' array in C:CHAR HEPstrings[1024]
  122. END TYPE
  123.  
  124.  
  125.  
  126.  
  127. ' visibility flag for SWCNTRL structure use character constants
  128. '
  129. ' C Constant name      CHR$(n)
  130. ' ---------------      -------
  131. ' SWL_VISIBLE             4
  132. ' SWL_INVISIBLE           1
  133. ' SWL_GRAYED              2
  134. ' visibility flag for SWCNTRL structure also use character constants
  135. ' SWL_JUMPABLE            2
  136. ' SWL_NOTJUMPABLE         1
  137.  
  138. TYPE SWCNTRL
  139.     hwnd AS LONG                                            
  140.     hwndIcon AS LONG
  141.     hprog AS LONG
  142.     idProcess AS INTEGER
  143.     idSession AS INTEGER
  144.     uchVisibility AS STRING * 1
  145.     fbJump AS STRING * 1
  146.     szSwtitle AS STRING * 129 ' array in C:CHAR     szSwtitle[MAXNAMEL+1]
  147.     fReserved AS STRING * 1   ' To align on word boundary  
  148. END TYPE
  149.  
  150. '** Switching Program functions 
  151. DECLARE FUNCTION WinAddSwitchEntry&( BYVAL pswcntrl AS LONG )
  152.  
  153. DECLARE FUNCTION WinRemoveSwitchEntry%( BYVAL hswitch AS LONG )
  154.  
  155.  
  156.  
  157. DECLARE FUNCTION WinChangeSwitchEntry%( BYVAL hswitch AS LONG,_
  158.                                         BYVAL pswcntrl AS LONG )
  159.  
  160. DECLARE FUNCTION WinQueryTaskTitle%( BYVAL Aushort AS INTEGER,_
  161.                                      BYVAL psz AS LONG ,_
  162.                                      BYVAL Bushort AS INTEGER )
  163.  
  164.  
  165.  
  166.  
  167. '** OS2.INI Access functions 
  168. DECLARE FUNCTION WinQueryProfileInt%( BYVAL hab AS LONG,_
  169.                                       BYVAL Apsz AS LONG,_
  170.                                       BYVAL Bpsz AS LONG,_
  171.                                       BYVAL short AS INTEGER )
  172.  
  173. DECLARE FUNCTION WinQueryProfileString%( BYVAL hab AS LONG,_
  174.                                          BYVAL Apsz AS LONG,_
  175.                                          BYVAL Bpsz AS LONG,_
  176.                                          BYVAL Cpsz AS LONG ,_
  177.                                          BYVAL pvoid AS LONG,_
  178.                                          BYVAL ushort AS INTEGER )
  179.  
  180. DECLARE FUNCTION WinWriteProfileString% ( BYVAL hab AS LONG,_
  181.                                           BYVAL Apsz AS LONG,_
  182.                                           BYVAL Bpsz AS LONG,_
  183.                                           BYVAL Cpsz AS LONG )
  184.  
  185. DECLARE FUNCTION WinQueryProfileSize% ( BYVAL hab AS LONG,_
  186.                                         BYVAL Apsz AS LONG,_
  187.                                         BYVAL Bpsz AS LONG,_
  188.                                         BYVAL pushort AS LONG )
  189.  
  190. DECLARE FUNCTION WinQueryProfileData% ( BYVAL hab AS LONG,_
  191.                                         BYVAL Apsz AS LONG,_
  192.                                         BYVAL Bpsz AS LONG,_
  193.                                         BYVAL pvoid AS LONG,_
  194.                                         BYVAL pushort AS LONG )    
  195.  
  196. DECLARE FUNCTION WinWriteProfileData% ( BYVAL hab AS LONG,_
  197.                                         BYVAL Apsz AS LONG,_
  198.                                         BYVAL Bpsz AS LONG,_
  199.                                         BYVAL pvoid AS LONG,_
  200.                                         BYVAL ushort AS INTEGER )
  201.  
  202.  
  203.  
  204. CONST PMERRINVALIDPIB                =&H1101
  205. CONST PMERRINSUFFSPACETOADD          =&H1102
  206. CONST PMERRINVALIDGROUPHANDLE        =&H1103
  207. CONST PMERRDUPLICATETITLE            =&H1104
  208. CONST PMERRINVALIDTITLE              =&H1105
  209. CONST PMERRHANDLENOTINGROUP          =&H1107
  210. CONST PMERRINVALIDTARGETHANDLE       =&H1106
  211. CONST PMERRINVALIDPATHSTATEMENT      =&H1108
  212. CONST PMERRNOPROGRAMFOUND            =&H1109
  213. CONST PMERRINVALIDBUFFERSIZE         =&H110A
  214. CONST PMERRBUFFERTOOSMALL            =&H110B
  215. CONST PMERRPLINITIALISATIONFAIL      =&H110C
  216. CONST PMERRCANTDESTROYSYSGROUP       =&H110D
  217. CONST PMERRINVALIDTYPECHANGE         =&H110E
  218. CONST PMERRINVALIDPROGRAMHANDLE      =&H110F
  219.  
  220. CONST PMERRNOTCURRENTPLVERSION       =&H1110
  221. CONST PMERRINVALIDCIRCULARREF        =&H1111
  222. CONST PMERRMEMORYALLOCATIONERR       =&H1112
  223. CONST PMERRMEMORYDEALLOCATIONERR     =&H1113
  224. CONST PMERRTASKHEADERTOOBIG          =&H1114
  225.  
  226. CONST PMERRDOSERROR                  =&H1200
  227.  
  228. CONST PMERRNOSPACE                   =&H1201
  229. CONST PMERRINVALIDSWITCHHANDLE       =&H1202
  230. CONST PMERRNOHANDLE                  =&H1203
  231. CONST PMERRINVALIDPROCESSID          =&H1204
  232. CONST PMERRNOTSHELL                  =&H1205
  233. CONST PMERRINVALIDWINDOW             =&H1206
  234. CONST PMERRINVALIDPOSTMSG            =&H1207
  235. CONST PMERRINVALIDPARAMETERS         =&H1208
  236. CONST PMERRINVALIDPROGRAMTYPE        =&H1209
  237. CONST PMERRNOTEXTENDEDFOCUS          =&H120A
  238. CONST PMERRINVALIDSESSIONID          =&H120B
  239. CONST PMERRSMGINVALIDICONFILE        =&H120C
  240. CONST PMERRSMGICONNOTCREATED         =&H120D
  241. CONST PMERRSHLDEBUG                  =&H120E
  242.  
  243. CONST PMERROPENINGINIFILE            =&H1301
  244. CONST PMERRINIFILECORRUPT            =&H1302
  245. CONST PMERRINVALIDPARM               =&H1303
  246. CONST PMERRNOTINIDX                  =&H1304
  247.  
  248. CONST PMERRINIWRITEFAIL              =&H1306
  249. CONST PMERRIDXFULL                   =&H1307
  250. CONST PMERRINIPROTECTED              =&H1308
  251. CONST PMERRMEMORYALLOC               =&H1309
  252. CONST PMERRINIINITALREADYDONE        =&H130A
  253. CONST PMERRINVALIDINTEGER            =&H130B
  254. CONST PMERRINVALIDASCIIZ             =&H130C
  255. CONST PMERRCANNOTCALLSPOOLER         =&H130D
  256. CONST PMERRVALIDATIONREJECTED        =&H130D
  257.  
  258. CONST PMERRWARNINGWINDOWNOTKILLED    =&H1401
  259. CONST PMERRERRORINVALIDWINDOW        =&H1402
  260. CONST PMERRALREADYINITIALIZED        =&H1403
  261. CONST PMERRMSGPROGNOMOU              =&H1405
  262. CONST PMERRMSGPROGNONRECOV           =&H1406
  263. CONST PMERRWINCONVINVALIDPATH        =&H1407
  264. CONST PMERRPINOTINITIALISED          =&H1408
  265. CONST PMERRPLNOTINITIALISED          =&H1409
  266. CONST PMERRNOTASKMANAGER             =&H140A
  267. CONST PMERRSAVENOTINPROGRESS         =&H140B
  268. CONST PMERRNOSTACKSPACE              =&H140C
  269. CONST PMERRINVALIDCOLRFIELD          =&H140d
  270. CONST PMERRINVALIDCOLRVALUE          =&H140e
  271. CONST PMERRCOLRWRITE                 =&H140f
  272.  
  273. CONST PMERRTARGETFILEEXISTS          =&H1501
  274. CONST PMERRSOURCESAMEASTARGET        =&H1502
  275. CONST PMERRSOURCEFILENOTFOUND        =&H1503
  276. CONST PMERRINVALIDNEWPATH            =&H1504
  277. CONST PMERRTARGETFILENOTFOUND        =&H1505
  278. CONST PMERRINVALIDDRIVENUMBER        =&H1506
  279. CONST PMERRNAMETOOLONG               =&H1507
  280. CONST PMERRNOTENOUGHROOMONDISK       =&H1508
  281. CONST PMERRNOTENOUGHMEM              =&H1509
  282.  
  283. CONST PMERRLOGDRVDOESNOTEXIST        =&H150B
  284. CONST PMERRINVALIDDRIVE              =&H150C
  285. CONST PMERRACCESSDENIED              =&H150D
  286. CONST PMERRNOFIRSTSLASH              =&H150E
  287. CONST PMERRREADONLYFILE              =&H150F
  288.  
  289.