home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / OS2BAS.ZIP / WINFRAME.BI < prev    next >
Text File  |  1989-09-05  |  6KB  |  193 lines

  1. '**************************************************************
  2. '*
  3. '* Include File: WinFrame.BI
  4. '*
  5. '* Requires:     none
  6. '*
  7. '* Description:  Frame Manager (much moved to PMBase.BI)
  8. '*
  9. '*************************************************************
  10.  
  11. TYPE FRAMECDATA
  12.     cb AS INTEGER
  13.     flCreateFlags  AS LONG
  14.     hmodResources AS INTEGER
  15.     idResources AS INTEGER
  16. END TYPE
  17.  
  18. ' Frame window styles 
  19.  
  20. 'CONST FCFTITLEBAR    = &H00000001
  21. 'CONST FCFSYSMENU     = &H00000002
  22. 'CONST FCFMENU        = &H00000004
  23. 'CONST FCFSIZEBORDER  = &H00000008
  24. 'CONST FCFMINBUTTON   = &H00000010  
  25. 'CONST FCFMAXBUTTON   = &H00000020
  26. 'CONST FCFMINMAX      = &H00000030  
  27. 'CONST FCFVERTSCROLL  = &H00000040
  28. 'CONST FCFHORZSCROLL  = &H00000080
  29. 'CONST FCFDLGBORDER       = &H00000100
  30. 'CONST FCFBORDER          = &H00000200
  31. 'CONST FCFSHELLPOSITION   = &H00000400
  32. 'CONST FCFTASKLIST        = &H00000800
  33. 'CONST FCFNOBYTEALIGN     = &H00001000
  34. 'CONST FCFNOMOVEWITHOWNER = &H00002000
  35. 'CONST FCFICON            = &H00004000
  36. 'CONST FCFACCELTABLE      = &H00008000
  37. 'CONST FCFSYSMODAL        = &H00010000
  38. 'CONST FCFSCREENALIGN     = &H00020000
  39. 'CONST FCFMOUSEALIGN      = &H00040000
  40.  
  41. ' FCFTITLEBAR | FCFSYSMENU | FCFMENU | FCFSIZEBORDER | FCFMINMAX |
  42. '   FCFICON | FCFACCELTABLE | FCFSHELLPOSITION | FCFTASKLIST 
  43. 'CONST FCFSTANDARD        = &H0000CC3F
  44.  
  45.  
  46. CONST FSICON             = &H00000001
  47. CONST FSACCELTABLE       = &H00000002
  48.  
  49. CONST FSSHELLPOSITION    = &H00000004
  50.  
  51. CONST FSTASKLIST         = &H00000008
  52. CONST FSNOBYTEALIGN      = &H00000010
  53. CONST FSNOMOVEWITHOWNER  = &H00000020
  54. CONST FSSYSMODAL         = &H00000040
  55. CONST FSDLGBORDER        = &H00000080
  56. CONST FSBORDER           = &H00000100
  57. CONST FSSCREENALIGN      = &H00000200
  58. CONST FSMOUSEALIGN       = &H00000400
  59. CONST FSSIZEBORDER       = &H00000800
  60.  
  61. ' FSICON | FSACCELTABLE | FSSHELLPOSITION | FSTASKLIST 
  62. CONST FSSTANDARD         = &H0000000F
  63.  
  64.  
  65. ' Frame Window Flags accessed via WinSet/QueryWindowUShort(QWSFLAGS) 
  66.  
  67. CONST FFFLASHWINDOW      = &H0001  
  68. CONST FFACTIVE           = &H0002
  69. CONST FFFLASHHILITE      = &H0004
  70. CONST FFOWNERHIDDEN      = &H0008
  71. CONST FFDLGDISMISSED     = &H0010
  72. CONST FFOWNERDISABLED    = &H0020
  73. CONST FFSELECTED         = &H0040
  74. CONST FFNOACTIVATESWP    = &H0080
  75.  
  76.  
  77. 'DECLARE FUNCTION WinCreateStdWindow&(BYVAL hwndParent AS LONG,_
  78. '                                     BYVAL flStyle AS LONG,_
  79. '                                     BYVAL pflCreateFlags AS LONG,_
  80. '                                     BYVAL pszClientClass AS LONG,_
  81. '                                     BYVAL pszTitle AS LONG,_
  82. '                                     BYVAL styleClient AS LONG,_
  83. '                                     BYVAL hmod AS INTEGER,_
  84. '                                     BYVAL idResources AS INTEGER,_
  85. '                                     BYVAL phwndClient AS LONG)
  86.  
  87.  
  88.  
  89.  
  90.  
  91. DECLARE FUNCTION WinFlashWindow%(BYVAL hwndFrame AS LONG,_
  92.                                  BYVAL fFlash AS INTEGER)
  93.  
  94. ' Frame window related messages 
  95.  
  96. CONST WMFLASHWINDOW      = &H0040
  97. CONST WMFORMATFRAME      = &H0041
  98. CONST WMUPDATEFRAME      = &H0042
  99. CONST WMFOCUSCHANGE      = &H0043
  100.  
  101. CONST WMSETBORDERSIZE    = &H0044
  102. CONST WMTRACKFRAME       = &H0045
  103. CONST WMMINMAXFRAME      = &H0046
  104. CONST WMSETICON          = &H0047
  105. CONST WMQUERYICON        = &H0048
  106. CONST WMSETACCELTABLE    = &H0049
  107. CONST WMQUERYACCELTABLE  = &H004a
  108. CONST WMTRANSLATEACCEL   = &H004b
  109. CONST WMQUERYTRACKINFO   = &H004c
  110. CONST WMQUERYBORDERSIZE  = &H004d
  111. CONST WMNEXTMENU         = &H004e
  112. CONST WMERASEBACKGROUND  = &H004f
  113. CONST WMQUERYFRAMEINFO   = &H0050
  114. CONST WMQUERYFOCUSCHAIN  = &H0051
  115. CONST WMQUERYFRAMECTLCOUNT = &H0059
  116.  
  117.  
  118. ' WMQUERYFRAMEINFO constants 
  119.  
  120. CONST FIFRAME            = &H00000001
  121. CONST FIOWNERHIDE        = &H00000002
  122. CONST FIACTIVATEOK       = &H00000004
  123. CONST FINOMOVEWITHOWNER  = &H00000008
  124.  
  125.  
  126.  
  127. ' Frame class name 
  128.  
  129. CONST WCFRAME        = &Hffff0001
  130.  
  131. DECLARE FUNCTION WinCreateFrameControls%(BYVAL hwndFrame AS LONG,_
  132.                                          BYVAL pfcdata AS LONG,_
  133.                      BYVAL pszTitle AS LONG)
  134.  
  135. DECLARE FUNCTION WinFormatFrame%(BYVAL hwndFrame AS LONG,_
  136.                                  BYVAL prclFrame AS LONG,_
  137.                                  BYVAL pswp AS LONG,_
  138.                                  BYVAL cswpMax AS INTEGER,_
  139.                                  BYVAL prclClient AS LONG)
  140.  
  141. DECLARE FUNCTION WinCalcFrameRect%(BYVAL hwndFrame AS LONG,_
  142.                                    BYVAL prcl AS LONG,_
  143.                                    BYVAL fClient AS INTEGER)
  144.  
  145. DECLARE FUNCTION WinGetMinPosition%(BYVAL hwnd AS LONG,_
  146.                                     BYVAL pswp AS LONG,_
  147.                                     BYVAL pptl AS LONG)
  148.  
  149. DECLARE FUNCTION WinGetMaxPosition%(BYVAL hwnd AS LONG,_
  150.                                     BYVAL pswp AS LONG)
  151.  
  152. ' Frame control IDs    
  153.  
  154. CONST FIDSYSMENU         = &H8002
  155. CONST FIDTITLEBAR        = &H8003
  156. CONST FIDMINMAX          = &H8004
  157. CONST FIDMENU            = &H8005
  158. CONST FIDVERTSCROLL      = &H8006
  159. CONST FIDHORZSCROLL      = &H8007
  160. CONST FIDCLIENT          = &H8008
  161.  
  162. ' Standard WMSYSCOMMAND command values 
  163.  
  164.  
  165. CONST SCSIZE             = &H8000
  166. CONST SCMOVE             = &H8001
  167. CONST SCMINIMIZE         = &H8002
  168. CONST SCMAXIMIZE         = &H8003
  169. CONST SCCLOSE            = &H8004
  170. CONST SCNEXT             = &H8005
  171. CONST SCAPPMENU          = &H8006
  172. CONST SCSYSMENU          = &H8007
  173. CONST SCRESTORE          = &H8008
  174. CONST SCNEXTFRAME        = &H8009
  175. CONST SCNEXTWINDOW       = &H8010
  176. CONST SCTASKMANAGER      = &H8011
  177.  
  178.  
  179.  
  180. '** Frame controls 
  181.  
  182.  
  183. '* Title bar controls 
  184.  
  185. ' Title bar control class name 
  186.  
  187. CONST WCTITLEBAR     = &Hffff0009
  188.  
  189. ' Title bar control messages 
  190.  
  191. CONST TBMSETHILITE           = &H01e3
  192. CONST TBMQUERYHILITE         = &H01e4
  193.