home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mod201j.zip / modula2.exe / os2api / winsys.def < prev    next >
Text File  |  1994-05-03  |  11KB  |  283 lines

  1. DEFINITION MODULE WINSYS;
  2.  
  3. (************************************************************************
  4.   OS/2 2.0 interface for Presentation Manager system values and colors.
  5.  
  6.   Copyright (c) 1992 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 TYPEPREFIX, HWND;
  15.  
  16. PROCEDURE WinQuerySysValue
  17. ( DesktopWinHandle         : HWND;
  18.   ValueId                  : LONGINT
  19. )                          : LONGINT;
  20.  
  21. PROCEDURE WinSetSysValue
  22. ( DesktopWinHandle         : HWND;
  23.   ValueId                  : LONGINT;
  24.   Value                    : LONGINT
  25. )                          : BOOLEAN;
  26.  
  27. CONST
  28.   SV_SWAPBUTTON            = 0;
  29.   SV_DBLCLKTIME            = 1;
  30.   SV_CXDBLCLK              = 2;
  31.   SV_CYDBLCLK              = 3;
  32.   SV_CXSIZEBORDER          = 4;
  33.   SV_CYSIZEBORDER          = 5;
  34.   SV_ALARM                 = 6;
  35.   SV_RESERVEDFIRST1        = 7;
  36.   SV_RESERVEDLAST1         = 8;
  37.   SV_CURSORRATE            = 9;
  38.   SV_FIRSTSCROLLRATE       = 10;
  39.   SV_SCROLLRATE            = 11;
  40.   SV_NUMBEREDLISTS         = 12;
  41.   SV_WARNINGFREQ           = 13;
  42.   SV_NOTEFREQ              = 14;
  43.   SV_ERRORFREQ             = 15;
  44.   SV_WARNINGDURATION       = 16;
  45.   SV_NOTEDURATION          = 17;
  46.   SV_ERRORDURATION         = 18;
  47.   SV_RESERVEDFIRST         = 19;
  48.   SV_RESERVEDLAST          = 19;
  49.   SV_CXSCREEN              = 20;
  50.   SV_CYSCREEN              = 21;
  51.   SV_CXVSCROLL             = 22;
  52.   SV_CYHSCROLL             = 23;
  53.   SV_CYVSCROLLARROW        = 24;
  54.   SV_CXHSCROLLARROW        = 25;
  55.   SV_CXBORDER              = 26;
  56.   SV_CYBORDER              = 27;
  57.   SV_CXDLGFRAME            = 28;
  58.   SV_CYDLGFRAME            = 29;
  59.   SV_CYTITLEBAR            = 30;
  60.   SV_CYVSLIDER             = 31;
  61.   SV_CXHSLIDER             = 32;
  62.   SV_CXMINMAXBUTTON        = 33;
  63.   SV_CYMINMAXBUTTON        = 34;
  64.   SV_CYMENU                = 35;
  65.   SV_CXFULLSCREEN          = 36;
  66.   SV_CYFULLSCREEN          = 37;
  67.   SV_CXICON                = 38;
  68.   SV_CYICON                = 39;
  69.   SV_CXPOINTER             = 40;
  70.   SV_CYPOINTER             = 41;
  71.   SV_DEBUG                 = 42;
  72.   SV_CMOUSEBUTTONS         = 43;
  73.   SV_CPOINTERBUTTONS       = 43;
  74.   SV_POINTERLEVEL          = 44;
  75.   SV_CURSORLEVEL           = 45;
  76.   SV_TRACKRECTLEVEL        = 46;
  77.   SV_CTIMERS               = 47;
  78.   SV_MOUSEPRESENT          = 48;
  79.   SV_CXBYTEALIGN           = 49;
  80.   SV_CXALIGN               = 49;
  81.   SV_CYBYTEALIGN           = 50;
  82.   SV_CYALIGN               = 50;
  83.   SV_NOTRESERVED           = 56;
  84.   SV_EXTRAKEYBEEP          = 57;
  85.   SV_SETLIGHTS             = 58;
  86.   SV_INSERTMODE            = 59;
  87.   SV_MENUROLLDOWNDELAY     = 64;
  88.   SV_MENUROLLUPDELAY       = 65;
  89.   SV_ALTMNEMONIC           = 66;
  90.   SV_TASKLISTMOUSEACCESS   = 67;
  91.   SV_CXICONTEXTWIDTH       = 68;
  92.   SV_CICONTEXTLINES        = 69;
  93.   SV_CHORDTIME             = 70;
  94.   SV_CXCHORD               = 71;
  95.   SV_CYCHORD               = 72;
  96.   SV_CXMOTION              = 73;
  97.   SV_CYMOTION              = 74;
  98.   SV_BEGINDRAG             = 75;
  99.   SV_ENDDRAG               = 76;
  100.   SV_SINGLESELECT          = 77;
  101.   SV_OPEN                  = 78;
  102.   SV_CONTEXTMENU           = 79;
  103.   SV_CONTEXTHELP           = 80;
  104.   SV_TEXTEDIT              = 81;
  105.   SV_BEGINSELECT           = 82;
  106.   SV_ENDSELECT             = 83;
  107.   SV_BEGINDRAGKB           = 84;
  108.   SV_ENDDRAGKB             = 85;
  109.   SV_SELECTKB              = 86;
  110.   SV_OPENKB                = 87;
  111.   SV_CONTEXTMENUKB         = 88;
  112.   SV_CONTEXTHELPKB         = 89;
  113.   SV_TEXTEDITKB            = 90;
  114.   SV_BEGINSELECTKB         = 91;
  115.   SV_ENDSELECTKB           = 92;
  116.   SV_ANIMATION             = 93;
  117.   SV_ANIMATIONSPEED        = 94;
  118.   SV_MONOICONS             = 95;
  119.   SV_KBDALTERED            = 96;
  120.   SV_PRINTSCREEN           = 97;
  121.   SV_CSYSVALUES            = 98;
  122.  
  123. TYPE (* Presentation parameter structures *)
  124.   PARAM                    = RECORD     (* param *)
  125.     CASE                     : TYPEPREFIX OF
  126.     | TRUE                   :
  127.       id                     : LONGCARD;
  128.       cb                     : LONGCARD;
  129.       ab                     : ARRAY [0..0] OF SHORTCARD;
  130.     | FALSE                  :
  131.       Ident                  : LONGCARD;
  132.       Count                  : LONGCARD;
  133.       Bytes                  : ARRAY [0..0] OF SHORTCARD;
  134.     END;                     END;
  135.   NPPARAM                  = POINTER TO PARAM;
  136.   PPARAM                   = POINTER TO PARAM;
  137.   PRESPARAMS               = RECORD  (* pres *)
  138.     CASE                     : TYPEPREFIX OF
  139.     | TRUE                   :
  140.       cb                     : LONGCARD;
  141.       aparam                 : ARRAY [0..0] OF PARAM;
  142.     | FALSE                  :
  143.       Count                  : LONGCARD;
  144.       Params                 : ARRAY [0..0] OF PARAM;
  145.     END;                     END;
  146.   NPPRESPARAMS             = POINTER TO PRESPARAMS;
  147.   PPRESPARAMS              = POINTER TO PRESPARAMS;
  148.  
  149. PROCEDURE WinSetPresParam
  150. ( WinHandle                : HWND;
  151.   AttrType                 : LONGCARD;
  152.   AttrValueLen             : LONGCARD;
  153.   VAR AttrValue            : ARRAY OF SYSTEM.BYTE
  154. )                          : BOOLEAN;
  155.  
  156. PROCEDURE WinQueryPresParam
  157. ( WinHandle                : HWND;
  158.   AttrType1                : LONGCARD;
  159.   AttrType2                : LONGCARD;
  160.   VAR AttrTypeFound        : LONGCARD;
  161.   AttrValueLen             : LONGCARD;
  162.   VAR AttrValue            : ARRAY OF SYSTEM.BYTE;
  163.   Options                  : LONGCARD
  164. )                          : LONGCARD;
  165.  
  166. PROCEDURE WinRemovePresParam
  167. ( WinHandle                : HWND;
  168.   AttrType                 : LONGCARD
  169. )                          : BOOLEAN;
  170.  
  171. CONST (* Presentation parameter types *)
  172.   PP_FOREGROUNDCOLOR                    = 1;
  173.   PP_FOREGROUNDCOLORINDEX               = 2;
  174.   PP_BACKGROUNDCOLOR                    = 3;
  175.   PP_BACKGROUNDCOLORINDEX               = 4;
  176.   PP_HILITEFOREGROUNDCOLOR              = 5;
  177.   PP_HILITEFOREGROUNDCOLORINDEX         = 6;
  178.   PP_HILITEBACKGROUNDCOLOR              = 7;
  179.   PP_HILITEBACKGROUNDCOLORINDEX         = 8;
  180.   PP_DISABLEDFOREGROUNDCOLOR            = 9;
  181.   PP_DISABLEDFOREGROUNDCOLORINDEX       = 10;
  182.   PP_DISABLEDBACKGROUNDCOLOR            = 11;
  183.   PP_DISABLEDBACKGROUNDCOLORINDEX       = 12;
  184.   PP_BORDERCOLOR                        = 13;
  185.   PP_BORDERCOLORINDEX                   = 14;
  186.   PP_FONTNAMESIZE                       = 15;
  187.   PP_FONTHANDLE                         = 16;
  188.   PP_RESERVED                           = 17;
  189.   PP_ACTIVECOLOR                        = 18;
  190.   PP_ACTIVECOLORINDEX                   = 19;
  191.   PP_INACTIVECOLOR                      = 20;
  192.   PP_INACTIVECOLORINDEX                 = 21;
  193.   PP_ACTIVETEXTFGNDCOLOR                = 22;
  194.   PP_ACTIVETEXTFGNDCOLORINDEX           = 23;
  195.   PP_ACTIVETEXTBGNDCOLOR                = 24;
  196.   PP_ACTIVETEXTBGNDCOLORINDEX           = 25;
  197.   PP_INACTIVETEXTFGNDCOLOR              = 26;
  198.   PP_INACTIVETEXTFGNDCOLORINDEX         = 27;
  199.   PP_INACTIVETEXTBGNDCOLOR              = 28;
  200.   PP_INACTIVETEXTBGNDCOLORINDEX         = 29;
  201.   PP_SHADOW                             = 30;
  202.   PP_MENUFOREGROUNDCOLOR                = 31;
  203.   PP_MENUFOREGROUNDCOLORINDEX           = 32;
  204.   PP_MENUBACKGROUNDCOLOR                = 33;
  205.   PP_MENUBACKGROUNDCOLORINDEX           = 34;
  206.   PP_MENUHILITEFGNDCOLOR                = 35;
  207.   PP_MENUHILITEFGNDCOLORINDEX           = 36;
  208.   PP_MENUHILITEBGNDCOLOR                = 37;
  209.   PP_MENUHILITEBGNDCOLORINDEX           = 38;
  210.   PP_MENUDISABLEDFGNDCOLOR              = 39;
  211.   PP_MENUDISABLEDFGNDCOLORINDEX         = 40;
  212.   PP_MENUDISABLEDBGNDCOLOR              = 41;
  213.   PP_MENUDISABLEDBGNDCOLORINDEX         = 42;
  214.   PP_USER                               = 8000H;
  215.  
  216. CONST (* Flags for WinQueryPresParams() *)
  217.   QPF_NOINHERIT          = 0001H; (* Don't inherit                      *)
  218.   QPF_ID1COLORINDEX      = 0002H; (* Convert id1 color index into RGB   *)
  219.   QPF_ID2COLORINDEX      = 0004H; (* Convert id2 color index into RGB   *)
  220.   QPF_PURERGBCOLOR       = 0008H; (* Return pure RGB colors             *)
  221.   QPF_VALIDFLAGS         = 000FH; (* Valid WinQueryPresParams() flags.  *)
  222.  
  223. PROCEDURE WinQuerySysColor
  224. ( DeskTopWinHandle         : HWND;
  225.   Color                    : LONGINT;
  226.   Reserved                 : LONGINT
  227. )                          : LONGINT;
  228.  
  229. PROCEDURE WinSetSysColors
  230. ( DesktopWinHandle         : HWND;
  231.   Options                  : LONGCARD;
  232.   Format                   : LONGCARD;
  233.   StartIndex               : LONGINT;
  234.   ColorTableLen            : LONGCARD;
  235.   VAR ColorTable           : ARRAY OF LONGINT
  236. )                          : BOOLEAN;
  237.  
  238. CONST
  239.   SYSCLR_SHADOWHILITEBGND         = -50;
  240.   SYSCLR_SHADOWHILITEFGND         = -49;
  241.   SYSCLR_SHADOWTEXT               = -48;
  242.   SYSCLR_ENTRYFIELD               = -47;
  243.   SYSCLR_MENUDISABLEDTEXT         = -46;
  244.   SYSCLR_MENUHILITE               = -45;
  245.   SYSCLR_MENUHILITEBGND           = -44;
  246.   SYSCLR_PAGEBACKGROUND           = -43;
  247.   SYSCLR_FIELDBACKGROUND          = -42;
  248.   SYSCLR_BUTTONLIGHT              = -41;
  249.   SYSCLR_BUTTONMIDDLE             = -40;
  250.   SYSCLR_BUTTONDARK               = -39;
  251.   SYSCLR_BUTTONDEFAULT            = -38;
  252.   SYSCLR_TITLEBOTTOM              = -37;
  253.   SYSCLR_SHADOW                   = -36;
  254.   SYSCLR_ICONTEXT                 = -35;
  255.   SYSCLR_DIALOGBACKGROUND         = -34;
  256.   SYSCLR_HILITEFOREGROUND         = -33;
  257.   SYSCLR_HILITEBACKGROUND         = -32;
  258.   SYSCLR_INACTIVETITLETEXTBGND    = -31;
  259.   SYSCLR_ACTIVETITLETEXTBGND      = -30;
  260.   SYSCLR_INACTIVETITLETEXT        = -29;
  261.   SYSCLR_ACTIVETITLETEXT          = -28;
  262.   SYSCLR_OUTPUTTEXT               = -27;
  263.   SYSCLR_WINDOWSTATICTEXT         = -26;
  264.   SYSCLR_SCROLLBAR                = -25;
  265.   SYSCLR_BACKGROUND               = -24;
  266.   SYSCLR_ACTIVETITLE              = -23;
  267.   SYSCLR_INACTIVETITLE            = -22;
  268.   SYSCLR_MENU                     = -21;
  269.   SYSCLR_WINDOW                   = -20;
  270.   SYSCLR_WINDOWFRAME              = -19;
  271.   SYSCLR_MENUTEXT                 = -18;
  272.   SYSCLR_WINDOWTEXT               = -17;
  273.   SYSCLR_TITLETEXT                = -16;
  274.   SYSCLR_ACTIVEBORDER             = -15;
  275.   SYSCLR_INACTIVEBORDER           = -14;
  276.   SYSCLR_APPWORKSPACE             = -13;
  277.   SYSCLR_HELPBACKGROUND           = -12;
  278.   SYSCLR_HELPTEXT                 = -11;
  279.   SYSCLR_HELPHILITE               = -10;
  280.   SYSCLR_CSYSCOLORS               = 41;
  281.  
  282. END WINSYS.
  283.