home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mod201j.zip / modula2.exe / os2api / winshell.def < prev    next >
Text File  |  1994-06-27  |  3KB  |  105 lines

  1. DEFINITION MODULE WINSHELLDATA;
  2.  
  3. (************************************************************************
  4.   OS/2 2.x Presentation Manager Shell profile calls for OS2.INI file
  5.  
  6.   Copyright (c) 1992, 1994 by Juergen Neuhoff
  7. *************************************************************************)
  8.  
  9. (*$XL+       Modula-2 language extensions: '_' allowed for symbol names *)
  10. (*$CDECL+    C-style procedures                                         *)
  11. (*$A         default alignment for record fields                        *)
  12.  
  13. IMPORT SYSTEM;
  14. FROM   OS2DEF   IMPORT PSZ, TYPEPREFIX, HAB;
  15. IMPORT WINDEF;
  16.  
  17. TYPE (* ini file handle *)
  18.   HINI           = WINDEF.HINI;
  19.  
  20. TYPE
  21.   PRFPROFILE             = RECORD  (* prfpro *)
  22.     CASE                   : TYPEPREFIX OF
  23.     | TRUE                 :
  24.       cchUserName          : LONGCARD;
  25.       pszUserName          : PSZ;
  26.       cchSysName           : LONGCARD;
  27.       pszSysName           : PSZ
  28.     | FALSE                :
  29.       UserNameSize         : LONGCARD;
  30.       UserName             : PSZ;
  31.       SysNameSize          : LONGCARD;
  32.       SysName              : PSZ
  33.     END;                   END;
  34.   PPRFPROFILE            = POINTER TO PRFPROFILE;
  35.  
  36. PROCEDURE PrfQueryProfileInt
  37. ( IniHandle              : HINI;
  38.   App                    : ARRAY OF CHAR;
  39.   Key                    : ARRAY OF CHAR;
  40.   Default                : LONGINT
  41. )                        : LONGINT;
  42.  
  43. PROCEDURE PrfQueryProfileString
  44. ( IniHandle              : HINI;
  45.   App                    : PSZ;
  46.   Key                    : PSZ;
  47.   Default                : PSZ;
  48.   VAR Buffer             : ARRAY OF CHAR;
  49.   BufferMax              : LONGCARD
  50. )                        : LONGCARD;
  51.  
  52. PROCEDURE PrfWriteProfileString
  53. ( IniHandle              : HINI;
  54.   App                    : PSZ;
  55.   Key                    : PSZ;
  56.   Data                   : PSZ
  57. )                        : BOOLEAN;
  58.  
  59. PROCEDURE PrfQueryProfileSize
  60. ( IniHandle              : HINI;
  61.   App                    : PSZ;
  62.   Key                    : PSZ;
  63.   VAR DataLen            : LONGCARD
  64. )                        : BOOLEAN;
  65.  
  66. PROCEDURE PrfQueryProfileData
  67. ( IniHandle              : HINI;
  68.   App                    : PSZ;
  69.   Key                    : PSZ;
  70.   VAR Buffer             : ARRAY OF SYSTEM.BYTE;
  71.   VAR BufferLen          : LONGCARD
  72. )                        : BOOLEAN;
  73.  
  74. PROCEDURE PrfWriteProfileData
  75. ( IniHandle              : HINI;
  76.   App                    : PSZ;
  77.   Key                    : PSZ;
  78.   VAR Data               : ARRAY OF SYSTEM.BYTE;
  79.   DataLen                : LONGCARD
  80. )                        : BOOLEAN;
  81.  
  82. PROCEDURE PrfOpenProfile
  83. ( AnchorBlockHandle      : HAB;
  84.   FileName               : ARRAY OF CHAR
  85. )                        : HINI;
  86.  
  87. PROCEDURE PrfCloseProfile
  88. ( IniHandle              : HINI
  89. )                        : BOOLEAN;
  90.  
  91. PROCEDURE PrfReset
  92. ( AnchorBlockHandle      : HAB;
  93.   VAR Profile            : PRFPROFILE
  94. )                        : BOOLEAN;
  95.  
  96. PROCEDURE PrfQueryProfile
  97. ( AnchorBlockHandle      : HAB;
  98.   VAR Profile            : PRFPROFILE
  99. )                        : BOOLEAN;
  100.  
  101. CONST (* public message, broadcast on WinReset *)
  102.   PL_ALTERED             = 008EH;  (* WM_SHELLFIRST + 0E *)
  103.  
  104. END WINSHELLDATA.
  105.