//**************************************************************************** // $Module type: Package // $Module name: DoReGuiSize // $Author : Nils G. Svedmyr // Created : 2004-04-17 @ 20:00 // // Description : Use just before the end_object in the Main object of the src file // // Note : These properties must have been defined in the Main object and // set by their respective objects: // Property Integer piVerRebar 0 // Property Integer piVerToolbar 0 // Property Integer piVerView 0 // Property Integer piVerStatBar 0 // // $Rev History: // 2004-04-17 Module header created //**************************************************************************** Procedure DoReGuiSize Integer iVerFrame iVerCaption iVerRebar iVerToolbar iViewSize iVerStatbar iExtra iSize iGuiSizeVer iFrameHori Move (GetSystemMetrics (SM_CYSIZEFRAME) * 2) To iVerFrame Move (GetSystemMetrics(SM_CYCAPTION)) To iVerCaption If (iVerCaption > 19) Move (iVerCaption + 2) To iVerCaption // Don't ask... XP woodoo. Get piVerRebar To iVerRebar Get piVerToolbar To iVerToolbar Get piViewSize To iViewSize Get piVerStatBar To iVerStatbar Move (GetSystemMetrics(SM_CYFRAME) * 2 + 4) To iFrameHori // Where does these extra pixels come from? Move 5 To iExtra Set GuiSize To (iVerFrame + iVerCaption + iVerRebar+ iVerToolbar + (Hi(iViewSize)) + iVerStatbar + iExtra) (Low(iViewSize) + iFrameHori) Send Adjust_Logicals Get Size To iSize Set piMinSize To (Hi(iSize)) (Low(iSize)) End_Procedure // DoReGuiSize Send DoReGuiSize