Update of /cvsroot/win32forth/win32forth/doc/classes In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv7998/doc/classes Modified Files: AXControl.htm Childwnd.htm Control.htm Controls.htm Dialog.htm File.htm Generic.htm HTMLcontrol.htm MdiDialog.htm TrayWindow.htm Window.htm gdiBase.htm gdiBitmap.htm gdiBrush.htm gdiDC.htm gdiFont.htm gdiMetafile.htm gdiMetafileDC.htm gdiPen.htm gdiStruct.htm gdiWindowDc.htm mdi.htm Log Message: DexH documentation updated to refelect the latest changes. Index: Childwnd.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Childwnd.htm,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Childwnd.htm 9 May 2006 16:18:48 -0000 1.8 --- Childwnd.htm 5 Jun 2006 09:28:42 -0000 1.9 *************** *** 20,41 **** </h2><pre><b><a name="0">:CLASS Child-Window <Super Window </a></b></pre><p>Child-Window is the base class for all child windows. ! </p><p>The windows have a parent, which is the object address, ! not the window handle. This allows the child to send messages ! to its parent. ! </p><pre><b><a name="1">:M GetParent: ( -- parent ) </a></b></pre><p>Get the object address of the parent window. ! </p><pre><b><a name="2">:M SetID: ( n -- ) ! </a></b></pre><p>Set the ID for this child window ! </p><pre><b><a name="3">:M GetID: ( -- n ) ! </a></b></pre><p>Get the ID for this child window ! </p><pre><b><a name="4">:M WindowStyle: ( -- style ) </a></b></pre><p>User windows should override the WindowStyle: method to set the window style. Default is WS_CHILD and WS_VISIBLE. ! </p><pre><b><a name="5">:M WindowTitle: ( -- Zstring ) </a></b></pre><p>User windows should override the WindowTitle: method to set the window caption. Default is "". ! </p><pre><b><a name="6">:M Start: ( Parent -- ) ! </a></b></pre><p>Create the child window. ! </p><pre><b><a name="7">;Class </a></b></pre><p>End of Child-Window class </p><hr><p>Document $Id$</p> --- 20,46 ---- </h2><pre><b><a name="0">:CLASS Child-Window <Super Window </a></b></pre><p>Child-Window is the base class for all child windows. ! </p><p>The windows has a parent, which is the object address, ! not the window handle. This allows the child to send ! messages to its parent. ! </p><pre><b><a name="1">:M ClassInit: ( -- ) ! </a></b></pre><p>Initialise the class. ! </p><pre><b><a name="2">:M SetParent: ( parent -- ) ! </a></b></pre><p>Set the object address of the parent window. ! </p><pre><b><a name="3">:M GetParent: ( -- parent ) </a></b></pre><p>Get the object address of the parent window. ! </p><pre><b><a name="4">:M SetID: ( n -- ) ! </a></b></pre><p>Set the ID for this child window. ! </p><pre><b><a name="5">:M GetID: ( -- n ) ! </a></b></pre><p>Get the ID for this child window. ! </p><pre><b><a name="6">:M WindowStyle: ( -- style ) </a></b></pre><p>User windows should override the WindowStyle: method to set the window style. Default is WS_CHILD and WS_VISIBLE. ! </p><pre><b><a name="7">:M WindowTitle: ( -- Zstring ) </a></b></pre><p>User windows should override the WindowTitle: method to set the window caption. Default is "". ! </p><pre><b><a name="8">:M Start: ( Parent -- ) ! </a></b></pre><p>Create this child window. Parent is the object address of the ! parent window. ! </p><pre><b><a name="9">;Class </a></b></pre><p>End of Child-Window class </p><hr><p>Document $Id$</p> Index: mdi.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/mdi.htm,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** mdi.htm 8 Feb 2006 14:26:34 -0000 1.7 --- mdi.htm 5 Jun 2006 09:28:42 -0000 1.8 *************** *** 112,116 **** </p><a name="MDIChildWindow"></a> <h2>MDI Child window class ! </h2><pre><b><a name="28">:Class MDIChildWindow <super Window </a></b></pre><p>This is the base class for all windows that should be displayed within the client area of a MDIFrameWindow. --- 112,116 ---- </p><a name="MDIChildWindow"></a> <h2>MDI Child window class ! </h2><pre><b><a name="28">:Class MDIChildWindow <super child-window </a></b></pre><p>This is the base class for all windows that should be displayed within the client area of a MDIFrameWindow. Index: Window.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Window.htm,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Window.htm 28 May 2006 09:50:12 -0000 1.15 --- Window.htm 5 Jun 2006 09:28:42 -0000 1.16 *************** *** 23,27 **** </a></b></pre><p>Initialise the class. </p><h3>Window sizing ! </h3><pre><b><a name="2">:M GetSize: ( -- w h ) </a></b></pre><p>Get the size (width and height) of the window. </p><pre><b><a name="3">:M Width: ( -- width ) --- 23,27 ---- </a></b></pre><p>Initialise the class. </p><h3>Window sizing ! </h3><pre><b><a name="2">:M GetSize: ( --width height ) </a></b></pre><p>Get the size (width and height) of the window. </p><pre><b><a name="3">:M Width: ( -- width ) *************** *** 29,36 **** </p><pre><b><a name="4">:M Height: ( -- height ) </a></b></pre><p>Get the height of the window. ! </p><pre><b><a name="5">:M SetSize: ( w h -- ) ! </a></b></pre><p>Set the size (width and height) of the window. <br /> Note: The window itself will not be resized. ! </p><pre><b><a name="6">:M On_Size: ( -- ) </a></b></pre><p>User windows should override the On_Size: method. When this method is called, the variables Width and Height will have already been set. <br /> --- 29,36 ---- </p><pre><b><a name="4">:M Height: ( -- height ) </a></b></pre><p>Get the height of the window. ! </p><pre><b><a name="5">:M SetSize: ( width height -- ) ! </a></b></pre><p>Set the size of the window. <br /> Note: The window itself will not be resized. ! </p><pre><b><a name="6">:M On_Size: ( wParam -- ) </a></b></pre><p>User windows should override the On_Size: method. When this method is called, the variables Width and Height will have already been set. <br /> *************** *** 112,152 **** </p><pre><b><a name="19">:M GetClassName: ( -- addr len ) </a></b></pre><p>Get the window class name. ! </p><pre><b><a name="20">:M SetParent: ( Parent -- ) ! </a></b></pre><p>Set owner window (0 if no parent). ! Note: The parent is the object address of the parent window ! class not the window handle. ! </p><pre><b><a name="21">:M ParentWindow: ( -- Parent | 0 if no parent ) ! </a></b></pre><p>Get owner window. ! Note: The parent is the object address of the parent window ! class not the window handle. ! </p><pre><b><a name="22">:M DefaultCursor: ( -- cursor-id ) </a></b></pre><p>User windows should override the DefaultCursor: method to set the default cursor for window. Default is IDC_ARROW. ! </p><pre><b><a name="23">:M DefaultIcon: ( -- hIcon ) </a></b></pre><p>User windows should override the WindowStyle: method to set the default icon handle for window. Default is the W32F icon. ! </p><pre><b><a name="24">:M WindowStyle: ( -- style ) </a></b></pre><p>User windows should override the WindowStyle: method to set the window style. Default is WS_OVERLAPPEDWINDOW. ! </p><pre><b><a name="25">:M ExWindowStyle: ( -- extended_style ) </a></b></pre><p>User windows should override the ExWindowStyle: method to set the extended window style. Default is NULL. ! </p><pre><b><a name="26">:M WindowTitle: ( -- Zstring ) </a></b></pre><p>User windows should override the WindowTitle: method to set the window caption. Default is "Window". </p><h3>Painting ! </h3><pre><b><a name="27">WinDC dc </a></b></pre><p>The window's device context. <br /> It will be valid only when handling the WM_PAINT message (see On_Paint: method) ! </p><pre><b><a name="28">Record: &ps </a></b></pre><p>The PAINTSTRUCT for Begin- and EndPaint <br /> It will be valid only when handling the WM_PAINT message (see On_Paint: method) ! </p><pre><b><a name="29">:M On_EraseBackground: ( hwnd msg wparam lparam -- res ) </a></b></pre><p>User windows should override the On_EraseBackground: method to handle WM_ERASEBKGND messages. <br /> Default does nothing. ! </p><pre><b><a name="30">:M On_Paint: ( -- ) </a></b></pre><p>User windows should override the On_Paint: method to handle WM_PAINT messages. <br /> Before this method is called BeginPaint will be called so that the PAINTSTRUCT --- 112,154 ---- </p><pre><b><a name="19">:M GetClassName: ( -- addr len ) </a></b></pre><p>Get the window class name. ! </p><pre><b><a name="20">:M SetParentWindow: ( hWndParent -- ) ! </a></b></pre><p>Set handle of the owner window (0 if no parent). ! </p><pre><b><a name="21">:M GetParentWindow: ( -- hWndParent ) ! </a></b></pre><p>Get the handle of the owner window (0 if no parent). ! </p><pre><b><a name="22">:M SetParent: ( hWndParent -- ) ! </a></b></pre><p>Set handle of the owner window (0 if no parent). ! </p><p>NOTE: This method is depreacted. Use SetParentWindow: instead. ! </p><pre><b><a name="23">:M ParentWindow: ( -- hWndParent ) ! </a></b></pre><p>Get the handle of the owner window (0 if no parent). ! </p><p>NOTE: This method is depreacted. Use GetParentWindow: instead. ! </p><pre><b><a name="24">:M DefaultCursor: ( -- cursor-id ) </a></b></pre><p>User windows should override the DefaultCursor: method to set the default cursor for window. Default is IDC_ARROW. ! </p><pre><b><a name="25">:M DefaultIcon: ( -- hIcon ) </a></b></pre><p>User windows should override the WindowStyle: method to set the default icon handle for window. Default is the W32F icon. ! </p><pre><b><a name="26">:M WindowStyle: ( -- style ) </a></b></pre><p>User windows should override the WindowStyle: method to set the window style. Default is WS_OVERLAPPEDWINDOW. ! </p><pre><b><a name="27">:M ExWindowStyle: ( -- extended_style ) </a></b></pre><p>User windows should override the ExWindowStyle: method to set the extended window style. Default is NULL. ! </p><pre><b><a name="28">:M WindowTitle: ( -- Zstring ) </a></b></pre><p>User windows should override the WindowTitle: method to set the window caption. Default is "Window". </p><h3>Painting ! </h3><pre><b><a name="29">WinDC dc </a></b></pre><p>The window's device context. <br /> It will be valid only when handling the WM_PAINT message (see On_Paint: method) ! </p><pre><b><a name="30">Record: &ps </a></b></pre><p>The PAINTSTRUCT for Begin- and EndPaint <br /> It will be valid only when handling the WM_PAINT message (see On_Paint: method) ! </p><pre><b><a name="31">:M On_EraseBackground: ( hwnd msg wparam lparam -- res ) </a></b></pre><p>User windows should override the On_EraseBackground: method to handle WM_ERASEBKGND messages. <br /> Default does nothing. ! </p><pre><b><a name="32">:M On_Paint: ( -- ) </a></b></pre><p>User windows should override the On_Paint: method to handle WM_PAINT messages. <br /> Before this method is called BeginPaint will be called so that the PAINTSTRUCT *************** *** 157,175 **** Default does nothing. </p><h3>Menu support ! </h3><pre><b><a name="31">:M WindowHasMenu: ( -- flag ) </a></b></pre><p>Flag is true if the window has a menu. Override this method if your window has a menu. Default is false. </p><h3>Cursor (caret) support ! </h3><pre><b><a name="32">:M MoveCursor: ( gx gy -- ) </a></b></pre><p>Move the caret. ! </p><pre><b><a name="33">:M MakeCursor: ( gx gy width height -- ) </a></b></pre><p>Create the caret. ! </p><pre><b><a name="34">:M DestroyCursor: ( -- ) </a></b></pre><p>Destroy the caret. ! </p><pre><b><a name="35">:M ShowCursor: ( -- ) </a></b></pre><p>Show the caret. ! </p><pre><b><a name="36">:M HideCursor: ( -- ) </a></b></pre><p>Hide the caret. ! </p><pre><b><a name="37">:M On_SetFocus: ( h m w l -- ) </a></b></pre><p>Override the method to handle the WM_SETFOCUS message. <br /> Example: When cursor is used, you will need something like the following --- 159,177 ---- Default does nothing. </p><h3>Menu support ! </h3><pre><b><a name="33">:M WindowHasMenu: ( -- flag ) </a></b></pre><p>Flag is true if the window has a menu. Override this method if your window has a menu. Default is false. </p><h3>Cursor (caret) support ! </h3><pre><b><a name="34">:M MoveCursor: ( gx gy -- ) </a></b></pre><p>Move the caret. ! </p><pre><b><a name="35">:M MakeCursor: ( gx gy width height -- ) </a></b></pre><p>Create the caret. ! </p><pre><b><a name="36">:M DestroyCursor: ( -- ) </a></b></pre><p>Destroy the caret. ! </p><pre><b><a name="37">:M ShowCursor: ( -- ) </a></b></pre><p>Show the caret. ! </p><pre><b><a name="38">:M HideCursor: ( -- ) </a></b></pre><p>Hide the caret. ! </p><pre><b><a name="39">:M On_SetFocus: ( h m w l -- ) </a></b></pre><p>Override the method to handle the WM_SETFOCUS message. <br /> Example: When cursor is used, you will need something like the following *************** *** 178,216 **** cursor-row char-height * char-width char-height MakeCursor: self ! </pre><pre><b><a name="38">:M On_KillFocus: ( h m w l -- ) </a></b></pre><p>Override the method to handle the WM_KILLFOCUS message. <br /> Example: Use only when you are displaying a cursor in the window: </p><pre> DestroyCursor: self </pre><h3>Keyboard and mouse handling ! </h3><pre><b><a name="39">:M PushKey: ( c1 -- ) </a></b></pre><p>override to process keys yoruself. </p><h3>Message handling ! </h3><pre><b><a name="40">:M Win32Forth: ( h m w l -- ) </a></b></pre><p>If you define an application specific window class or window object that redefines the method Win32Forth: to perform its own function rather than just doing a beep, then your window will be able to handle interprocess messages. ! </p><pre><b><a name="41">:M DefWindowProc: ( h m w l -- res ) </a></b></pre><p>Call the DefaultWindowProc for the window. </p><h3>everything else... ! </h3><pre><b><a name="42">:M CenterWindow: ( -- x y ) </a></b></pre><p>Calculate the position of the window to center it in the middle of it's parent window. When the windows has no parent it will be placed in the middle of the primary display monitor. ! </p><pre><b><a name="43">:M Enable: ( f1 -- ) </a></b></pre><p>Enable or disable the window. ! </p><pre><b><a name="44">:M GetWindowRect: ( -- left top right bottom ) </a></b></pre><p>The GetWindowRect method retrieves the dimensions of the bounding rectangle of the window. ! The dimensions are given in screen coordinates that are relative to the upper-left corner of the screen. ! </p><pre><b><a name="45">:M SetTitle: { adr len \ temp$ -- } </a></b></pre><p>Set the window title. ! </p><pre><b><a name="46">;CLASS </a></b></pre><p>End of window class. </p><h2>Helper words outside the class ! </h2><pre><b><a name="47">: find-window ( z"a1 -- hWnd ) \ w32f </a></b></pre><p>Find a window. ! </p><pre><b><a name="48">: send-window ( lParam wParam Message_ID hWnd -- ) \ w32f </a></b></pre><p>Send a message to a window. ! </p><pre><b><a name="49">: LoadIconFile ( adr len -- hIcon ) \ w32f </a></b></pre><p>Load an icon from an icon file. </p><hr><p>Document $Id$</p> --- 180,218 ---- cursor-row char-height * char-width char-height MakeCursor: self ! </pre><pre><b><a name="40">:M On_KillFocus: ( h m w l -- ) </a></b></pre><p>Override the method to handle the WM_KILLFOCUS message. <br /> Example: Use only when you are displaying a cursor in the window: </p><pre> DestroyCursor: self </pre><h3>Keyboard and mouse handling ! </h3><pre><b><a name="41">:M PushKey: ( c1 -- ) </a></b></pre><p>override to process keys yoruself. </p><h3>Message handling ! </h3><pre><b><a name="42">:M Win32Forth: ( h m w l -- ) </a></b></pre><p>If you define an application specific window class or window object that redefines the method Win32Forth: to perform its own function rather than just doing a beep, then your window will be able to handle interprocess messages. ! </p><pre><b><a name="43">:M DefWindowProc: ( h m w l -- res ) </a></b></pre><p>Call the DefaultWindowProc for the window. </p><h3>everything else... ! </h3><pre><b><a name="44">:M CenterWindow: ( -- x y ) </a></b></pre><p>Calculate the position of the window to center it in the middle of it's parent window. When the windows has no parent it will be placed in the middle of the primary display monitor. ! </p><pre><b><a name="45">:M Enable: ( f1 -- ) </a></b></pre><p>Enable or disable the window. ! </p><pre><b><a name="46">:M GetWindowRect: ( -- left top right bottom ) </a></b></pre><p>The GetWindowRect method retrieves the dimensions of the bounding rectangle of the window. ! The dimensions are given in screen coordinates that are relative to the upper-left corner ! </p><pre><b><a name="47">:M SetTitle: { adr len \ temp$ -- } </a></b></pre><p>Set the window title. ! </p><pre><b><a name="48">;CLASS </a></b></pre><p>End of window class. </p><h2>Helper words outside the class ! </h2><pre><b><a name="49">: find-window ( z"a1 -- hWnd ) \ w32f </a></b></pre><p>Find a window. ! </p><pre><b><a name="50">: send-window ( lParam wParam Message_ID hWnd -- ) \ w32f </a></b></pre><p>Send a message to a window. ! </p><pre><b><a name="51">: LoadIconFile ( adr len -- hIcon ) \ w32f </a></b></pre><p>Load an icon from an icon file. </p><hr><p>Document $Id$</p> Index: Controls.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Controls.htm,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Controls.htm 28 May 2006 09:48:21 -0000 1.14 --- Controls.htm 5 Jun 2006 09:28:42 -0000 1.15 *************** *** 1408,1414 **** the corresponding window rectangle. If this parameter is FALSE, prc specifies a window rectangle and receives the corresponding display area. ! </p><pre><b><a name="334">:M ClientSize: ( -- x y w h ) </a></b></pre><p>Return size of display area of the tab control. ! </p><pre><b><a name="335">:M WindowSize: ( 0 0 width height -- x y w h ) </a></b></pre><p>Given display area return window size required. </p><pre><b><a name="336">:M GetSelectedTab: ( -- index ) --- 1408,1414 ---- the corresponding window rectangle. If this parameter is FALSE, prc specifies a window rectangle and receives the corresponding display area. ! </p><pre><b><a name="334">:M ClientSize: ( -- left top right bottom ) </a></b></pre><p>Return size of display area of the tab control. ! </p><pre><b><a name="335">:M WindowSize: ( 0 0 width height -- left top right bottom ) </a></b></pre><p>Given display area return window size required. </p><pre><b><a name="336">:M GetSelectedTab: ( -- index ) Index: Generic.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/classes/Generic.htm,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Generic.htm 8 Feb 2006 14:26:34 -0000 1.13 --- Generic.htm 5 Jun 2006 09:28:42 -0000 1.14 *************** *** 65,69 **** </p><pre><b><a name="8">:M Paint: ( -- ) </a></b></pre><p>Force window repaint. A WM_PAINT message is posted to the message queue. ! </p><pre><b><a name="9">:M Show: ( state -- ) </a></b></pre><p>The ShowWindow function sets the specified window's show state. <br /> Possible values for state are: --- 65,74 ---- </p><pre><b><a name="8">:M Paint: ( -- ) </a></b></pre><p>Force window repaint. A WM_PAINT message is posted to the message queue. ! </p><pre><b><a name="9">:M SetRedraw: ( f -- ) ! </a></b></pre><p>Set the redraw state of the window. ! </p><p><i> f </i> Specifies the redraw state. If this parameter is TRUE, the ! content can be redrawn after a change. If this parameter is FALSE, ! the content cannot be redrawn after a change. ! </p><pre><b><a name="10">:M Show: ( state -- ) </a></b></pre><p>The ShowWindow function sets the specified window's show state. <br /> Possible values for state are: *************** *** 133,164 **** </td> </tr> ! </table><pre><b><a name="10">:M GDIFlush: ( -- ) </a></b></pre><p>The GdiFlush function flushes the calling thread's current batch. ! </p><pre><b><a name="11">:M Update: ( -- ) </a></b></pre><p>The UpdateWindow function updates the client area of the window by sending a WM_PAINT message to the window if the window's update region is not empty. The function sends a WM_PAINT message directly to the window procedure of the window, bypassing the application queue. If the update region is empty, no message is sent. ! </p><pre><b><a name="12">:M Scroll: { x y -- } </a></b></pre><p>The ScrollWindow function scrolls the contents of the specified window's client area. ! </p><pre><b><a name="13">:M Move: { x y w h -- } </a></b></pre><p>The MoveWindow function changes the position and dimensions of window. For a top-level window, the position and dimensions are relative to the upper-left corner of the screen. For a child window, they are relative to the upper-left corner of the parent window's client area. ! </p><pre><b><a name="14">:M SetWindowPos: { x y -- } </a></b></pre><p>The SetWindowPos function changes the position of a child, pop-up, or top-level window. <br /> X Specifies the new position of the left side of the window, in client coordinates. <br /> Y Specifies the new position of the top of the window, in client coordinates. ! </p><pre><b><a name="15">:M SetMenu: ( MenuHandle -- ) </a></b></pre><p>The SetMenu function assigns a new menu to the window. If MenuHandle is NULL, the window's current menu is removed. ! </p><pre><b><a name="16">:M SetText: { addr len \ text$ -- } </a></b></pre><p>The SetWindowText function changes the text of the window's title bar (if it has one). If the window is a control, the text of the control is changed. ! </p><pre><b><a name="17">:M GetText: ( -- addr len ) </a></b></pre><p>The GetWindowText function copies the text of the window's title bar (if it has one) into a buffer. If the window is a control, the text of the control is copied. ! </p><pre><b><a name="18">:M SetTextAlign: ( flag -- ) </a></b></pre><p>Set the text-alignment for the window. <br /> The current position is updated after each text output call. --- 138,169 ---- </td> </tr> ! </table><pre><b><a name="11">:M GDIFlush: ( -- ) </a></b></pre><p>The GdiFlush function flushes the calling thread's current batch. ! </p><pre><b><a name="12">:M Update: ( -- ) </a></b></pre><p>The UpdateWindow function updates the client area of the window by sending a WM_PAINT message to the window if the window's update region is not empty. The function sends a WM_PAINT message directly to the window procedure of the window, bypassing the application queue. If the update region is empty, no message is sent. ! </p><pre><b><a name="13">:M Scroll: { x y -- } </a></b></pre><p>The ScrollWindow function scrolls the contents of the specified window's client area. ! </p><pre><b><a name="14">:M Move: { x y w h -- } </a></b></pre><p>The MoveWindow function changes the position and dimensions of window. For a top-level window, the position and dimensions are relative to the upper-left corner of the screen. For a child window, they are relative to the upper-left corner of the parent window's client area. ! </p><pre><b><a name="15">:M SetWindowPos: { x y -- } </a></b></pre><p>The SetWindowPos function changes the position of a child, pop-up, or top-level window. <br /> X Specifies the new position of the left side of the window, in client coordinates. <br /> Y Specifies the new position of the top of the window, in client coordinates. ! </p><pre><b><a name="16">:M SetMenu: ( MenuHandle -- ) </a></b></pre><p>The SetMenu function assigns a new menu to the window. If MenuHandle is NULL, the window's current menu is removed. ! </p><pre><b><a name="17">:M SetText: { addr len \ text$ -- } </a></b></pre><p>The SetWindowText function changes the text of the window's title bar (if it has one). If the window is a control, the text of the control is changed. ! </p><pre><b><a name="18">:M GetText: ( -- addr len ) </a></b></pre><p>The GetWindowText function copies the text of the window's title bar (if it has one) into a buffer. If the window is a control, the text of the control is copied. ! </p><pre><b><a name="19">:M SetTextAlign: ( flag -- ) </a></b></pre><p>Set the text-alignment for the window. <br /> The current position is updated after each text output call. *************** *** 180,188 **** </td> </tr> ! </table><pre><b><a name="19">:M GetDC: ( -- hdc ) </a></b></pre><p>The GetDC function retrieves a handle to a display device context (DC) for the client area of the window. <br /> You have to call ReleaseDC when the DC isn't needed any longer. ! </p><pre><b><a name="20">:M GetWindowDC: ( -- hdc ) </a></b></pre><p>The GetWindowDC function retrieves the device context (DC) for the entire window, including title bar, menus, and scroll bars. A window device context --- 185,193 ---- </td> </tr> ! </table><pre><b><a name="20">:M GetDC: ( -- hdc ) </a></b></pre><p>The GetDC function retrieves a handle to a display device context (DC) for the client area of the window. <br /> You have to call ReleaseDC when the DC isn't needed any longer. ! </p><pre><b><a name="21">:M GetWindowDC: ( -- hdc ) </a></b></pre><p>The GetWindowDC function retrieves the device context (DC) for the entire window, including title bar, menus, and scroll bars. A window device context *************** *** 192,210 **** retrieves the device context. Previous attributes are lost. <br /> You have to call ReleaseDC when the DC isn't needed any longer. ! </p><pre><b><a name="21">:M ReleaseDC: ( hdc -- ) </a></b></pre><p>The ReleaseDC function releases the device context (DC) of the window. <br /> Call only after GetDC or GetWindowDC. ! </p><pre><b><a name="22">:M BeginPaint: ( ps -- hdc ) </a></b></pre><p>The BeginPaint function prepares the window for painting and fills a PAINTSTRUCT (ps) structure with information about the painting. ! </p><pre><b><a name="23">:M EndPaint: ( ps -- ) </a></b></pre><p>The EndPaint function marks the end of painting in the window. This function is required for each call to the BeginPaint function, but only after painting is complete. ! </p><pre><b><a name="24">:M GetClientRect: ( rect -- ) </a></b></pre><p>The GetClientRect function retrieves the coordinates of the window's client area. The client coordinates specify the upper-left and lower-right corners of the client area. Because client coordinates are relative to the upper-left corner of a window's client area, the coordinates of the upper-left corner are (0,0). ! </p><pre><b><a name="25">:M GetWindowLong: ( index -- value ) </a></b></pre><p>The GetWindowLong function retrieves information about the window. The function also retrieves the 32-bit (long) value at the specified offset into the extra --- 197,215 ---- retrieves the device context. Previous attributes are lost. <br /> You have to call ReleaseDC when the DC isn't needed any longer. ! </p><pre><b><a name="22">:M ReleaseDC: ( hdc -- ) </a></b></pre><p>The ReleaseDC function releases the device context (DC) of the window. <br /> Call only after GetDC or GetWindowDC. ! </p><pre><b><a name="23">:M BeginPaint: ( ps -- hdc ) </a></b></pre><p>The BeginPaint function prepares the window for painting and fills a PAINTSTRUCT (ps) structure with information about the painting. ! </p><pre><b><a name="24">:M EndPaint: ( ps -- ) </a></b></pre><p>The EndPaint function marks the end of painting in the window. This function is required for each call to the BeginPaint function, but only after painting is complete. ! </p><pre><b><a name="25">:M GetClientRect: ( rect -- ) </a></b></pre><p>The GetClientRect function retrieves the coordinates of the window's client area. The client coordinates specify the upper-left and lower-right corners of the client area. Because client coordinates are relative to the upper-left corner of a window's client area, the coordinates of the upper-left corner are (0,0). ! </p><pre><b><a name="26">:M GetWindowLong: ( index -- value ) </a></b></pre><p>The GetWindowLong function retrieves information about the window. The function also retrieves the 32-bit (long) value at the specified offset into the extra *************** *** 250,254 **** </td> </tr> ! </table><pre><b><a name="26">:M SetWindowLong: ( value index -- oldval ) </a></b></pre><p>The SetWindowLong function changes an attribute of the window. The function also sets the 32-bit (long) value at the specified offset into the extra window memory. --- 255,259 ---- </td> </tr> ! </table><pre><b><a name="27">:M SetWindowLong: ( value index -- oldval ) </a></b></pre><p>The SetWindowLong function changes an attribute of the window. The function also sets the 32-bit (long) value at the specified offset into the extra window memory. *************** *** 283,298 **** </td> </tr> ! </table><pre><b><a name="27">:M GetStyle: ( -- style ) </a></b></pre><p>Retrieves the window styles. ! </p><pre><b><a name="28">:M SetStyle: ( style -- ) </a></b></pre><p>Sets a new window style. ! </p><pre><b><a name="29">:M +Style: ( style -- ) </a></b></pre><p>Add a window style. ! </p><pre><b><a name="30">:M -Style: ( style -- ) </a></b></pre><p>Remove a window style. ! </p><pre><b><a name="31">:M SetFocus: ( -- ) </a></b></pre><p>The SetFocus function sets the keyboard focus to the window. The window must be attached to the calling thread's message queue. ! </p><pre><b><a name="32">:M SetForegroundWindow: ( -- ) </a></b></pre><p>The SetForegroundWindow function puts the thread that created the specified window into the foreground and activates the window. Keyboard input is directed to the window, --- 288,303 ---- </td> </tr> ! </table><pre><b><a name="28">:M GetStyle: ( -- style ) </a></b></pre><p>Retrieves the window styles. ! </p><pre><b><a name="29">:M SetStyle: ( style -- ) </a></b></pre><p>Sets a new window style. ! </p><pre><b><a name="30">:M +Style: ( style -- ) </a></b></pre><p>Add a window style. ! </p><pre><b><a name="31">:M -Style: ( style -- ) </a></b></pre><p>Remove a window style. ! </p><pre><b><a name="32">:M SetFocus: ( -- ) </a></b></pre><p>The SetFocus function sets the keyboard focus to the window. The window must be attached to the calling thread's message queue. ! </p><pre><b><a name="33">:M SetForegroundWindow: ( -- ) </a></b></pre><p>The SetForegroundWindow function puts the thread that created the specified window into the foreground and activates the window. Keyboard input is directed to the window, *************** *** 321,325 **** process, or the next time a process calls AllowSetForegroundWindow, unless that process is specified. <br /> The foreground process can disable calls to SetForegroundWindow by calling the LockSetForegroundWindow function. ! </p><pre><b><a name="33">:M SetActiveWindow: ( -- ) </a></b></pre><p>The SetActiveWindow function activates a window. The window must be attached to the calling thread's message queue. <br /> The SetActiveWindow function activates a window, but not if the application is in the background. The window will be --- 326,330 ---- process, or the next time a process calls AllowSetForegroundWindow, unless that process is specified. <br /> The foreground process can disable calls to SetForegroundWindow by calling the LockSetForegroundWindow function. ! </p><pre><b><a name="34">:M SetActiveWindow: ( -- ) </a></b></pre><p>The SetActiveWindow function activates a window. The window must be attached to the calling thread's message queue. <br /> The SetActiveWindow function activates a window, but not if the application is in the background. The window will be *************** *** 329,333 **** By using the AttachThreadInput function, a thread can attach its input processing to another thread. This allows a thread to call SetActiveWindow to activate a window attached to another thread's message queue. ! </p><pre><b><a name="34">:M MessageBox: ( szText szTitle style -- result ) </a></b></pre><p>The MessageBox function creates, displays, and operates a message box. The message box contains an application-defined message and title, plus any combination of predefined icons and push buttons. --- 334,338 ---- By using the AttachThreadInput function, a thread can attach its input processing to another thread. This allows a thread to call SetActiveWindow to activate a window attached to another thread's message queue. ! </p><pre><b><a name="35">:M MessageBox: ( szText szTitle style -- result ) </a></b></pre><p>The MessageBox function creates, displays, and operates a message box. The message box contains an application-defined message and title, plus any combination of predefined icons and push buttons. *************** *** 492,496 **** </td> </tr> ! </table><pre><b><a name="35">:M InvalidateRect: ( bgflag rectangle -- ) </a></b></pre><p>The InvalidateRect function adds a rectangle to the window's update region. The update region represents the portion of the window's client area that must be redrawn. --- 497,501 ---- </td> </tr> ! </table><pre><b><a name="36">:M InvalidateRect: ( bgflag rectangle -- ) </a></b></pre><p>The InvalidateRect function adds a rectangle to the window's update region. The update region represents the portion of the window's client area that must be redrawn. *************** *** 505,523 **** </td> </tr> ! </table><pre><b><a name="36">:M GetDlgItem: ( id -- handle ) </a></b></pre><p>The GetDlgItem function retrieves a handle of the control (id) in the window. ! </p><pre><b><a name="37">:M GetDlgItemText: ( addr len id -- len ) </a></b></pre><p>The GetDlgItemText function retrieves the title or text associated with a control in the window. ! </p><pre><b><a name="38">:M SetDlgItemText: ( addr len id -- ) </a></b></pre><p>The SetDlgItemText function sets the title or text of a control in then window. ! </p><pre><b><a name="39">:M SetDlgItemFocus: ( id -- ) </a></b></pre><p>Set the focus to the control (id) in the window. ! </p><pre><b><a name="40">:M SelectDlgItemAll: ( id -- ) </a></b></pre><p>Selects all characters in the edit control (id). You can use this forn an edit control or a rich edit control. ! </p><pre><b><a name="41">:M IsDlgButtonChecked: ( id -- f1 ) </a></b></pre><p>The IsDlgButtonChecked function determines whether a button control has a check mark next to it or whether a three-state button control is grayed, checked, or neither. ! </p><pre><b><a name="42">:M CheckDlgButton: ( uCheck id -- ) </a></b></pre><p>The CheckDlgButton function changes the check state of a button control. Possible values for uCheck are: --- 510,528 ---- </td> </tr> ! </table><pre><b><a name="37">:M GetDlgItem: ( id -- handle ) </a></b></pre><p>The GetDlgItem function retrieves a handle of the control (id) in the window. ! </p><pre><b><a name="38">:M GetDlgItemText: ( addr len id -- len ) </a></b></pre><p>The GetDlgItemText function retrieves the title or text associated with a control in the window. ! </p><pre><b><a name="39">:M SetDlgItemText: ( addr len id -- ) </a></b></pre><p>The SetDlgItemText function sets the title or text of a control in then window. ! </p><pre><b><a name="40">:M SetDlgItemFocus: ( id -- ) </a></b></pre><p>Set the focus to the control (id) in the window. ! </p><pre><b><a name="41">:M SelectDlgItemAll: ( id -- ) </a></b></pre><p>Selects all characters in the edit control (id). You can use this forn an edit control or a rich edit control. ! </p><pre><b><a name="42">:M IsDlgButtonChecked: ( id -- f1 ) </a></b></pre><p>The IsDlgButtonChecked function determines whether a button control has a check mark next to it or whether a three-state button control is grayed, checked, or neither. ! </p><pre><b><a name="43">:M CheckDlgButton: ( uCheck id -- ) </a></b></pre><p>The CheckDlgButton function changes the check state of a button control. Possible values for uCheck are: *************** *** 537,541 **** </td> </tr> ! </table><pre><b><a name="43">:M SetDlgItemAlign: ( flag id -- ) </a></b></pre><p>Set the text-alignment for a control (id) in the window. <br /> The current position is updated after each text output call. --- 542,546 ---- </td> </tr> ! </table><pre><b><a name="44">:M SetDlgItemAlign: ( flag id -- ) </a></b></pre><p>Set the text-alignment for a control (id) in the window. <br /> The current position is updated after each text output call. *************** *** 557,563 **** </td> </tr> ! </table><pre><b><a name="44">:M SetAlign: ( flag id -- ) \ DEPRECATED </a></b></pre><p>Obsolescent Method use SetDlgItemAlign: instead. ! </p><pre><b><a name="45">:M EnableDlgItem: ( flag id -- ) </a></b></pre><p>Enable or disable a control (id) in the window. Possible values for flag are: --- 562,568 ---- </td> </tr> ! </table><pre><b><a name="45">:M SetAlign: ( flag id -- ) \ DEPRECATED </a></b></pre><p>Obsolescent Method use SetDlgItemAlign: instead. ! </p><pre><b><a name="46">:M EnableDlgItem: ( flag id -- ) </a></b></pre><p>Enable or disable a control (id) in the window. Possible values for flag are: *************** *** 572,576 **** </td> </tr> ! </table><pre><b><a name="46">:M ShowDlgItem: ( flag id -- ) </a></b></pre><p>Hide or show a control (id) in the window. Possible values for flag are: --- 577,581 ---- </td> </tr> ! </table><pre><b><a name="47">:M ShowDlgItem: ( flag id -- ) </a></b></pre><p>Hide or show a control (id) in the window. Possible values for flag are: *************** *** 585,589 **** </td> </tr> ! </table><pre><b><a name="47">:M CheckRadioButton: ( check_id first_id last_id -- ) </a></b></pre><p>The CheckRadioButton function adds a check mark to (checks) a specified radio button in a group and removes a check mark from (clears) all other radio buttons in the group. --- 590,594 ---- </td> </tr> ! </table><pre><b><a name="48">:M CheckRadioButton: ( check_id first_id last_id -- ) </a></b></pre><p>The CheckRadioButton function adds a check mark to (checks) a specified radio button in a group and removes a check mark from (clears) all other radio buttons in the group. *************** *** 603,614 **** </td> </tr> ! </table><pre><b><a name="48">:M SendDlgItemMessage: ( lParam wParam message id -- long ) </a></b></pre><p>Send a message to the control (id) in the window. ! </p><pre><b><a name="49">:M SetDlgItemFont: ( FontObject id -- ) </a></b></pre><p>Specify the font that the control (id) is to use when drawing text. <br /> FontObject must be the HANDLE of a font. If this parameter is NULL, the control uses the default system font to draw text. ! </p><pre><b><a name="50">;CLASS </a></b></pre><p>End of generic-window class </p><hr><p>Document $Id$</p> </body></html> --- 608,633 ---- </td> </tr> ! </table><pre><b><a name="49">:M SendDlgItemMessage: ( lParam wParam message id -- long ) </a></b></pre><p>Send a message to the control (id) in the window. ! </p><pre><b><a name="50">:M SetDlgItemFont: ( FontObject id -- ) </a></b></pre><p>Specify the font that the control (id) is to use when drawing text. <br /> FontObject must be the HANDLE of a font. If this parameter is NULL, the control uses the default system font to draw text. ! </p><pre><b><a name="51">;CLASS </a></b></pre><p>End of generic-window class + </p><a name="DIALOG&CONTROL"></a> + <h2>Generic class for Dialog- and Control-Window objects. + </h2><pre><b><a name="52">|CLASS DIALOG&CONTROL <SUPER Generic-Window + </a></b></pre><p>Base class for all dialog and control objects. + </p><p>Since DIALOG&CONTROL is a generic class it should not be used to create + any instances. + </p><pre><b><a name="53">:M Classinit: ( -- ) + </a></b></pre><p>Initialise the class. + </p><pre><b><a name="54">:M GetWindowRect: ( -- left top right bottom ) + </a></b></pre><p>The GetWindowRect method retrieves the dimensions of the bounding rectangle of the window. + The dimensions are given in screen coordinates that are relative to the upper-left corner + of the screen. + </p><pre><b><a name="55">;CLASS + </a></b></pre><p>End of DIALOG&CONTROL class </p><hr><p>Document $Id$</p> </body></html> |