From: Dirk B. <db...@us...> - 2005-12-31 11:13:05
|
Update of /cvsroot/win32forth/win32forth/doc/classes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26368/doc/classes Modified Files: Control.htm Dialog.htm Generic.htm Window.htm gdiBase.htm gdiBitmap.htm gdiBrush.htm gdiDC.htm gdiFont.htm gdiMetafile.htm gdiMetafileDC.htm gdiPen.htm gdiStruct.htm gdiWindowDc.htm Added Files: Controls.htm Log Message: More documentation added. --- NEW FILE: Controls.htm --- <html> <head> <meta http-equiv="Content-Language" content="en-gb"> <meta name="GENERATOR" content="dexh00"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title> </title><style><!-- h1 { font-family: Tahoma; font-size: 24pt; font-weight: bold } h2 { font-family: Tahoma; font-size: 18pt; font-weight: bold } --> </style> </head> <body><h1 align="center"> <a href="mailto:win...@ya...?subject=DOC:Doc error in $Id: Controls.htm,v 1.1 2005/12/31 11:12:43 dbu_de Exp $"> <img border="0" src="../TELLUS.gif" align="left" width="32" height="32"></a> <img border="0" src="../FORTHPRO.gif" width="32" height="32"> Win32Forth</h1> <hr /><h1>Controls -- Classes for standrad windows controls. </h1><hr /><a name="EditControl"></a> <h2>EditControl class </h2><pre><b><a name="0">:Class EditControl <Super CONTROL </a></b></pre><p>Class for text edit controls. </p><pre><b><a name="0">:M StartSize: ( -- width height ) </a></b></pre><p>Get the start size of the control </p><pre><b><a name="0">:M WindowStyle: ( -- Style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control. </p><pre><b><a name="0">:M SetWmChar: ( pWmChar -- ) </a></b></pre><p>install the WM_CHAR filter function </p><pre><b><a name="0">:M SetWmKeyDown: ( pWmKeyDown -- ) </a></b></pre><p>install the WM_KEYDOWN filter function </p><pre><b><a name="0">:M SetWmKillFocus: ( pWmKillFocus -- ) </a></b></pre><p>install the WM_KILLFOCUS filter function </p><pre><b><a name="0">:M SubClass: ( hWnd Parent -- ) </a></b></pre><p>Subclass this control </p><pre><b><a name="0">;Class </a></b></pre><p>End of EditControl class </p><a name="ComboControl"></a> <h2>ComboControl class </h2><pre><b><a name="0">:Class ComboControl <Super CONTROL </a></b></pre><p>Class for editable combo box controls. </p><pre><b><a name="0">:M StartSize: ( -- width height ) </a></b></pre><p>Get the start size of the control </p><pre><b><a name="0">:M WindowStyle: ( -- Style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M SetWmChar: ( pWmChar -- ) </a></b></pre><p>install the WM_CHAR filter function for the EditControl of the combo box. </p><pre><b><a name="0">:M SetWmKeyDown: ( pWmKeyDown -- ) </a></b></pre><p>install the WM_KEYDOWN filter function for the EditControl of the combo box. </p><pre><b><a name="0">:M SetWmKillFocus: ( pWmKillFocus -- ) </a></b></pre><p>install the WM_KILLFOCUS filter function for the EditControl of the combo box. </p><pre><b><a name="0">:M InsertString: ( adr len -- ) </a></b></pre><p>Insert a string into the combo box </p><pre><b><a name="0">:M GetString: ( adr index -- ) </a></b></pre><p>Use: GetString: to get indexed items out of the combo box string list Use: GetText: to get the current combo box string </p><pre><b><a name="0">:M GetCount: ( -- n1 ) \ n1 = count of items </a></b></pre><p>Use: GetCount: to get the count of items in the combo box string list </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of ComboControl class </p><a name="ComboListControl"></a> <h2>ComboListControl class </h2><pre><b><a name="0">:Class ComboListControl <Super ComboControl </a></b></pre><p>Class for select only combo box controls. </p><pre><b><a name="0">:M WindowStyle: ( -- Style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of ComboListControl class </p><a name="ListControl"></a> <h2>ListControl class </h2><pre><b><a name="0">:Class ListControl <Super CONTROL </a></b></pre><p>Class for list box controls. </p><pre><b><a name="0">:M WindowStyle: ( -- Style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of ListControlControl class </p><a name="GroupControl"></a> <h2>GroupControl control class </h2><pre><b><a name="0">:Class GroupControl <Super CONTROL </a></b></pre><p>Class for group controls. </p><pre><b><a name="0">:M WindowStyle: ( -- Style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of GroupControl class </p><a name="StaticControl"></a> <h2>StaticControl control class </h2><pre><b><a name="0">:Class StaticControl <Super CONTROL </a></b></pre><p>Class for static controls. </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of StaticControl class </p><a name="CheckControl"></a> <h2>CheckControl control class </h2><pre><b><a name="0">:Class CheckControl <Super CONTROL </a></b></pre><p>Class for check box controls. </p><pre><b><a name="0">:M WindowStyle: ( -- style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of CheckControl class </p><a name="RadioControl"></a> <h2>RadioControl control class </h2><pre><b><a name="0">:Class RadioControl <Super CONTROL </a></b></pre><p>Class for radio button controls. </p><pre><b><a name="0">:M WindowStyle: ( -- style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of RadioControl class </p><a name="ButtonControl"></a> <h2>ButtonControl control class </h2><pre><b><a name="0">:Class ButtonControl <Super CONTROL </a></b></pre><p>Class for push button controls. </p><pre><b><a name="0">:M SetFunc: ( cfa -- ) </a></b></pre><p>Set the button function. This function es executed when the button is pressed whith a click with the left mouse button </p><pre><b><a name="0">:M WindowStyle: ( -- style ) </a></b></pre><p>Get the window style of the control </p><pre><b><a name="0">:M Start: ( Parent -- ) </a></b></pre><p>Create the control </p><pre><b><a name="0">;Class </a></b></pre><p>End of ButtonControl class </p><a name="DialogWindow"></a> <h2>Dialog Window Class </h2><pre><b><a name="0">:CLASS DialogWindow <Super Window </a></b></pre><p>Base class for windows that contains controls. </p><pre><b><a name="0">;Class </a></b></pre><p>End of DialogWindow class </p><hr><p>Document $Id: Controls.htm,v 1.1 2005/12/31 11:12:43 dbu_de Exp $</p> </body></html> Index: Dialog.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Dialog.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Dialog.htm 26 Dec 2005 09:28:23 -0000 1.1 --- Dialog.htm 31 Dec 2005 11:12:43 -0000 1.2 *************** *** 17,20 **** width="32" height="32"> Win32Forth</h1> <hr /><h1>Dialog -- Class for dialog boxes. ! </h1><hr /><hr><p>Document $Id$</p> </body></html> --- 17,100 ---- width="32" height="32"> Win32Forth</h1> <hr /><h1>Dialog -- Class for dialog boxes. ! </h1><hr /><h2>Load Dialog Resource File ! </h2><p>The .RES file structure is a series of records. Each record contains ! a header and a data field. The structure of a header is as follows: ! </p><table border="1"><tr><td>offset ! </td> ! <td>length ! </td> ! </tr> ! <tr><td>0 ! </td> ! <td>4 ! </td> ! <td>length of data field ! </td> ! </tr> ! <tr><td>4 ! </td> ! <td>4 ! </td> ! <td>length of header ! </td> ! </tr> ! <tr><td>10 ! </td> ! <td>2 ! </td> ! <td>record type ! </td> ! </tr> ! <tr><td>14 ! </td> ! <td>2 ! </td> ! <td>dialog ID number (for dialogs) ! </td> ! </tr> ! </table><pre><b><a name="0">: dialogID? ( hdr ID -- f ) ! </a></b></pre><p>Given the address of a header in a resource file, return true if this ! is the header for a dialog resource. I'm only guessing here. ! </p><pre><b><a name="0">: find-dialog-ID ( id addr -- address-of-template-header ) ! </a></b></pre><p>Find dialog template given address and length of resource file in memory. ! </p><pre><b><a name="0">: load-dialog ( -<filename-without-an-extension>- ) ! </a></b></pre><p>Load template from dialog resource (*.res) to here and allot memory. <br /> ! Usage: load-dialog dialog ! </p><a name="Dialog"></a> ! <h2>Dialog Class ! </h2><pre><b><a name="0">:CLASS Dialog <SUPER Dialog&Control \ generic-window ! </a></b></pre><p>Dialog class. <br /> ! To use this class you have to create a ressource file (*.res) whitch must contain ! the dialog resource. Since Win32Forth doesn't provide any tool's to create a dialog ! resource you should use ForthForm to create your dialog windows instead. ! </p><pre><b><a name="0">:M Start: ( parent -- flag ) ! </a></b></pre><p>Open the dialog ! </p><pre><b><a name="0">:M EndDialog: ( return-value -- ) ! </a></b></pre><p>Close the dialog ! </p><pre><b><a name="0">:M On_Init: ( hwndfocus -- f ) ! </a></b></pre><p>Init the dialog ! </p><pre><b><a name="0">:M On_Command: ( hCtrl code ID -- f ) ! </a></b></pre><p>Process Commands from Controls ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of Dialog class ! </p><a name="ModelessDialog"></a> ! <h2>Modless Dialog class ! </h2><pre><b><a name="0">:Class ModelessDialog <SUPER Dialog ! </a></b></pre><p>Modless Dialog class <br /> ! To use this class you have to create a ressource file (*.res) whitch must contain ! the dialog resource. Since Win32Forth doesn't provide any tool's to create a dialog ! resource you should use ForthForm to create your dialog windows instead. ! </p><pre><b><a name="0">:M WindowStyle: ( -- n1 ) ! </a></b></pre><p>Get the window style of the dialog. ! </p><pre><b><a name="0">:M ExWindowStyle: ( -- n1 ) ! </a></b></pre><p>Get the extended window style of the dialog. ! </p><pre><b><a name="0">:M Origin: ( -- x y ) ! </a></b></pre><p>Get the origin (upper left corner) of the dialog. ! </p><pre><b><a name="0">:M Start: ( parent -- ) ! </a></b></pre><p>Open the dialog ! </p><pre><b><a name="0">:M EndDialog: ( n1 -- ) ! </a></b></pre><p>Close the dialog ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of ModlessDialog class ! </p><hr><p>Document $Id$</p> </body></html> Index: gdiBrush.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/gdiBrush.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gdiBrush.htm 26 Dec 2005 09:28:23 -0000 1.1 --- gdiBrush.htm 31 Dec 2005 11:12:43 -0000 1.2 *************** *** 166,172 **** </p><pre><b><a name="0">;class </a></b></pre><p>End of gdiPatternBrush class ! </p><a name="gdiHatchBrush"></a> <pre><b><a name="0">:class gdiDIBPatternBrush <super gdiBrush ! </a></b></pre><p>DIBPattern brush class </p><pre><b><a name="0">:M Create: ( lpPackedDIB iUsage -- f ) </a></b></pre><p>The Create function creates a logical brush that has the pattern specified --- 166,172 ---- </p><pre><b><a name="0">;class </a></b></pre><p>End of gdiPatternBrush class ! </p><a name="gdiDIBPatternBrush"></a> <pre><b><a name="0">:class gdiDIBPatternBrush <super gdiBrush ! </a></b></pre><p>DIB Pattern brush class </p><pre><b><a name="0">:M Create: ( lpPackedDIB iUsage -- f ) </a></b></pre><p>The Create function creates a logical brush that has the pattern specified Index: gdiFont.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/gdiFont.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gdiFont.htm 26 Dec 2005 09:28:23 -0000 1.1 --- gdiFont.htm 31 Dec 2005 11:12:43 -0000 1.2 *************** *** 259,272 **** </a></b></pre><p>Specifies the clipping precision. The clipping precision defines how to clip characters that are partially outside the clipping region. It can be one or more of the following values. ! </p><table border="1"><tr><td>CLIP_DEFAULT_PRECIS Specifies default clipping behavior. </td> </tr> ! <tr><td>CLIP_CHARACTER_PRECIS Not used. </td> </tr> ! <tr><td>CLIP_EMBEDDED You must specify this flag to use an embedded read-only font. </td> </tr> ! <tr><td>CLIP_LH_ANGLES When this value is used, the rotation for all fonts depends on whether the orientation of the coordinate system is left-handed or right-handed. If not used, device fonts always rotate counterclockwise, but the rotation of other fonts is dependent on the orientation of the coordinate system. </td> </tr> --- 259,280 ---- </a></b></pre><p>Specifies the clipping precision. The clipping precision defines how to clip characters that are partially outside the clipping region. It can be one or more of the following values. ! </p><table border="1"><tr><td>CLIP_DEFAULT_PRECIS ! </td> ! <td>Specifies default clipping behavior. </td> </tr> ! <tr><td>CLIP_CHARACTER_PRECIS ! </td> ! <td>Not used. </td> </tr> ! <tr><td>CLIP_EMBEDDED ! </td> ! <td>You must specify this flag to use an embedded read-only font. </td> </tr> ! <tr><td>CLIP_LH_ANGLES ! </td> ! <td>When this value is used, the rotation for all fonts depends on whether the orientation of the coordinate system is left-handed or right-handed </td> </tr> *************** *** 288,292 **** <tr><td>DRAFT_QUALITY </td> ! <td>Appearance of the font is less important than when PROOF_QUALITY is used. For GDI raster fonts, scaling is enabled, which means that more font sizes are available, but the quality may be lower. Bold, italic, underline, and strikeout fonts are synthesized if necessary. </td> </tr> --- 296,300 ---- <tr><td>DRAFT_QUALITY </td> ! <td>Appearance of the font is less important than when PROOF_QUALITY is used. For GDI raster fonts, scaling is enabled, which means that more font sizes are available, but the quality may be lower. </td> </tr> *************** *** 298,305 **** <tr><td>PROOF_QUALITY </td> ! <td>Character quality of the font is more important than exact matching of the logical-font attributes. For GDI raster fonts, scaling is disabled and the font closest in size is chosen. Although the chosen font size may not be mapped exactly when PROOF_QUALITY is used, the quality of the font is high and there is no distortion of appearance. Bold, italic, underline, and strikeout fonts are synthesized if necessary. </td> </tr> ! </table><p>If neither ANTIALIASED_QUALITY nor NONANTIALIASED_QUALITY is selected, the font is antialiased only if the user chooses smooth screen fonts in Control Panel. </p><pre><b><a name="0">:M SetPitchAndFamily: ( n1 -- ) </a></b></pre><p>Specifies the pitch and family of the font. The two low-order bits specify the pitch of the font and can --- 306,314 ---- <tr><td>PROOF_QUALITY </td> ! <td>Character quality of the font is more important than exact matching of the logical-font attributes. </td> </tr> ! </table><p>If neither ANTIALIASED_QUALITY nor NONANTIALIASED_QUALITY is selected, the font is antialiased only if the user chooses ! smooth screen fonts in Control Panel. </p><pre><b><a name="0">:M SetPitchAndFamily: ( n1 -- ) </a></b></pre><p>Specifies the pitch and family of the font. The two low-order bits specify the pitch of the font and can Index: Control.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Control.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Control.htm 26 Dec 2005 09:28:23 -0000 1.1 --- Control.htm 31 Dec 2005 11:12:43 -0000 1.2 *************** *** 17,20 **** width="32" height="32"> Win32Forth</h1> <hr /><h1>Control -- Class for child controls with subclassing. ! </h1><hr /><hr><p>Document $Id$</p> </body></html> --- 17,50 ---- width="32" height="32"> Win32Forth</h1> <hr /><h1>Control -- Class for child controls with subclassing. ! </h1><hr /><a name="Control"></a> ! <h2>Generic Control class ! </h2><pre><b><a name="0">:Class Control <Super Dialog&Control ! </a></b></pre><p>Generic control class. <br /> ! Since Control is a generic class it should not be used to create ! any instances. ! </p><pre><b><a name="0">:M GetParent: ( -- parent ) ! </a></b></pre><p>Get the parent window of this control. ! </p><pre><b><a name="0">:M GetHandleOfParent: ( -- handleofparent ) ! </a></b></pre><p>Get the window handle of the parent window of this control. ! </p><pre><b><a name="0">:M SetID: ( id -- ) ! </a></b></pre><p>Set the ID of this control. Normaly you don't need to do this, because ! every control get's an unique ID when it's created. ! </p><pre><b><a name="0">:M GetID: ( -- id ) ! </a></b></pre><p>Get the ID of this control ! </p><pre><b><a name="0">:M ExWindowStyle: ( -- exstyle ) ! </a></b></pre><p>Get the extended window style of this control ! </p><pre><b><a name="0">:M WindowStyle: ( -- style ) ! </a></b></pre><p>Get the window style of this control ! </p><pre><b><a name="0">:M StartSize: ( -- width height ) ! </a></b></pre><p>Get the start size of this control. <br /> ! Override this method to change it. ! </p><pre><b><a name="0">:M StartPos: ( -- left top ) ! </a></b></pre><p>Get the start position of this control. <br /> ! Override this method to change it. ! </p><pre><b><a name="0">:M CreateStruct: ( -- CreateStrucPointer ) ! </a></b></pre><p>This pointer to a structure, depends on what kind of window you are ! creating, so we just default it to NULL. ! </p><pre><b><a name="0">;Class ! </a></b></pre><p>End of Control class ! </p><hr><p>Document $Id$</p> </body></html> Index: gdiBitmap.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/gdiBitmap.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gdiBitmap.htm 26 Dec 2005 09:28:23 -0000 1.1 --- gdiBitmap.htm 31 Dec 2005 11:12:43 -0000 1.2 *************** *** 202,214 **** have been set by the SetBitmapDimension function. The function returns the height and width of the bitmap, in .01-mm units. ! </p><pre><b><a name="0">:M SetDIBits ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M GetDIBits ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M LoadBitmap ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M MaskBlt ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M PlgBlt ;M </a></b></pre><p>not implemented, yet. </p><pre><b><a name="0">;class --- 202,214 ---- have been set by the SetBitmapDimension function. The function returns the height and width of the bitmap, in .01-mm units. ! </p><pre><b><a name="0">:M SetDIBits: ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M GetDIBits: ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M LoadBitmap: ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M MaskBlt: ;M </a></b></pre><p>not implemented, yet. ! </p><pre><b><a name="0">:M PlgBlt: ;M </a></b></pre><p>not implemented, yet. </p><pre><b><a name="0">;class |